Процедуры и функции

145 задачвместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Для делимости числа на 5, необходимо, чтобы последняя цифра числа было 0 или 5. 
Напишите функцию, работающую по данному алгоритму, для проверки делимости числа n, вводимого с клавиатуры, на 5. 

Используя данную функцию, напишите программу, которая запрашивает у пользователя число n (0<=n<=100000) и выводит на экран фразу multiple of  5,  если число кратно 5 и фразу not multiple of 5, если число не кратно 5

Количество баллов за задачу уточняется после ручной проверки (и будет снижено, в случае если вы не используете функцию или функция вычисляет кратность не по приведенному алгоритму!).

Пример

Ввод

Вывод

3 not multiple of 5
5 multiple of 5
 

Для делимости числа на 4, необходимо, чтобы число из последних двух цифр делилось на 4. 
Напишите функцию, работающую по данному алгоритму, для проверки делимости числа n, вводимого с клавиатуры, на 4. 

Используя данную функцию, напишите программу, которая запрашивает у пользователя число n (0<=n<=100000) и выводит на экран фразу multiple of  4,  если число кратно 4 и фразу not multiple of 4, если число не кратно четырем

Количество баллов за задачу уточняется после ручной проверки (и будет снижено, в случае если вы не используете функцию или функция вычисляет кратность не по приведенному алгоритму!).

Пример

Ввод

Вывод

3 not multiple of 4
4 multiple of 4

Для делимости числа на 3, требуется, чтобы сумма цифр числа делилась на 3. 
Напишите функцию, работающую по данному алгоритму, для проверки делимости числа n, вводимого с клавиатуры, на 3. 

Используя данную функцию, напишите программу, которая запрашивает у пользователя число n (0<=n<=100000) и выводит на экран фразу multiple of 3,  если число кратно 3 и фразу not multiple of 3, если число не кратно трем

Количество баллов за задачу уточняется после ручной проверки (и будет снижено, в случае если вы не используете функцию или функция вычисляет кратность не по приведенному алгоритму!).

Пример

Ввод

Вывод

3 multiple of 3
4 not multiple of 3

Для данного натурального числа n вычислите сумму всех его натуральных делителей, включая 1 и само число. Решение оформите в виде РЕКУРСИВНОЙ функции с одним параметром. Основная программа должна содержать ввод исходных данных, вызов функции и вывод ответ
Запрещено использовать циклы в программе

Примеры
Входные данные Выходные данные
1 6 12
✓ 384✗ 287500лёгкаяВойти и решать
Для быстрого вычисления наибольшего общего делителя двух чисел используют алгоритм Евклида. Он построен на следующем соотношении: НОД(a,b)=НОД(a % b,b). Реализуйте рекурсивный алгоритм Евклида в виде функции gcd(a, b).

Ввод
12 16
Вывод
4
Напишите рекурсивную функцию с двумя параметрами, возвращающую сумму двух целых неотрицательных чисел. Из всех арифметических операций допускаются только +1 и -1. Также нельзя использовать циклы.
Основная программа должна содержать ввод исходных данных (два целых неотрицательных числа), вызов функции и вывод результата.

Примеры
Входные данные Выходные данные
1 8 7 15

В теории вычислимости важную роль играет функция Аккермана A(m,n), определенная следующим образом:

\(\begin{equation*} A(n, m) = \begin{cases} n+1 &\text{ $m = 0$}\\ A(m-1, 1) &\text{ $m>0, n=0$}\\ A(m-1, A(m, n-1)) &\text{ $m>0, n> 0$} \end{cases} \end{equation*}\)

Даны два целых неотрицательных числа m и n, каждое в отдельной строке. Выведите A(m,n).


Примеры
Входные данные Выходные данные
1 2
2
7


 
✓ 316✗ 419400лёгкаяВойти и решать
Напишите программу, содержащую рекурсивную функцию, которая  по натуральному числу n,  выводит все числа от n до 1. Основная программа должна содержать ввод исходных данных (число n) и вызов функции.
 
Примеры
Входные данные Выходные данные
1 6 6 5 4 3 2 1
✓ 4 284✗ 11 445200лёгкаяВойти и решать
Напишите программу, содержащую рекурсивную функцию, которая  решает задачу нахождения суммы чисел от 1 до n (n <= 100)
Нельзя в программе использовать циклы и формулу суммы арифметической прогрессии
Основная программа должна содержать ввод исходных данных, вызов функции и вывод ответа
На вход программе подается число n

Примеры
Входные данные Выходные данные
1 5 15
✓ 279✗ 252400лёгкаяВойти и решать
Напишите программу, содержащую рекурсивную функцию, которая  решает задачу возведения числа x в натуральную степень n.
Основная программа должна содержать ввод исходных данных, вызов функции и вывод результата
Запрещено использовать встроенные функции (и операции) возведения числа степень, а также циклы

На вход программе подаются два числа x и n

Примеры
Входные данные Выходные данные
1 2 5 32
✓ 361✗ 387400лёгкаяВойти и решать
Даны два числа. Найти их наибольший общий делитель.
 
Входные данные: Вводятся два натуральных числа, не превышающих 10^9, (запись 10^9 обозначает "10 в 9-й степени", то есть 1000000000).
Выходные данные: Выведите НОД введенных чисел

Примеры
Входные данные Выходные данные
1 42 12 6
Оформите подпрограмму для расчета площади равнобедренной трапеции по ее основаниям и высоте. Составьте программу определяющую сумму площадей двух трапеций, используя созданную подпрограмму.

Входные данные
Во входной строке содержится шесть целых числа: два основания и высота первой трапеции, затем два основания и высота второй  трапеции.

Выходные данные 
Программа должна вывести на экран одно число - сумму площадей данных трапеций. 
 
Пример
Входные данные Выходные данные
1 7 8 4 1 5 3 39.000000
 
15817#15817
Составьте процедуру, осуществляющую обмен значей двух переменных величин. Используя данную процедуру, напишите программу, в результате которой величина a меняется с величиной b, а величина c - с величиной d.

Входные данные
Во входной строке содержится четыре целых числа: a, b, c, d.

Выходные данные 
Программа должна вывести на экран четыре целых числа после перестановки: a, b, c, d.

 
Примеры
входные данные
7 8 1 5
выходные данные
8 7 5 1
Напишите функцию, которая находит минимум из 4х чисел. 

Используя данную функцию, напишите программу, которая запрашивает у пользователя 4 натуральных числа (n<=100000) и выводит на экран минимальное из них

Количество баллов за задачу уточняется после ручной проверки (и будет снижено, в случае если вы не используете функцию или функция вычисляет кратность не по приведенному алгоритму!).

Пример

Ввод

Вывод

1 2 3 4 1
5 3 7 9  3


12479#12479
Оформить подпрограмму для расчета периметра и площади треугольника по его сторонам.
Используя данную подпрограмму, напишите программу, которая по известным сторонам двух треугольников находит сумму их периметров и сумму их площадей.


Входные данные
На вход программе подается 6 целых чисел, не превышающих 100: стороны первого и второго треугольника.

Выходные данные
Вывести через пробел значения суммы их периметров и суммы их площадей (сумму площадей ввыводить с точностью до 4-х знаков после запятой). 
 
Пример
входные данные
4 5 6 4 5 6

выходные данные
30 19.8431
12478#12478
Имеется описание заголовка процедуры:

void proba(int a, int b, int c);

При использовании процедуры с таким заголовком значения фактических параметров передаются …
1) по ссылке
2) по значению
3) как константа
4) как процедура
12475#12475
Ваша задача, в приведенной ниже программе, заполнить пропущенные участки. Вы можете использовать только те переменные, которые описаны. 
Цель - создать программу, которая скомпилируется, запустится и выведет приведенный ниже текст.
Результат:
#include<iostream>
using namespace std;

void ______(){
cout<<"Haalloooo"<<endl;

 
int main()
{
 
int e1=0, e2=0, x=0;
while(_______){
hello();
____________
if(_____){
e2++;
}
if(_____){
e2+=e1;
}
x++;
}
cout<<e2;
return 0;
}

Редактировать можно только пропущенные участки.

Количество баллов за задачу уточняется после ручной проверки!
1859#1859
Программа, предназначенная для решения какой-то конкретной частной задачи и к которой обращаются из другой программы называется
1) модуль
2) функция
3) подпрограмма
4) нет правильного ответа
Поделиться
Класснуть