Задача 1. Арифметические функции
Описание
Дана программа:
int main(int argc, char** argv)
{
int a = 5, b = 10;
int s = sum(a, b);
int dif = diff(a, b);
int mult = multiplication(a, b);
double div = division(a, b);
std::cout << a << " + " << b << " = " << s << std::endl;
std::cout << a << " - " << b << " = " << dif << std::endl;
std::cout << a << " * " << b << " = " << mult << std::endl;
std::cout << a << " / " << b << " = " << div << std::endl;
return 0;
}
В ней используются функции sum, diff, multiplication, division. Ваша задача — написать эти функции, чтобы результат работы программы выглядел следующим образом:
5 + 10 = 15
5 - 10 = -5
5 * 10 = 50
5 / 10 = 0.5
Подсказки
Не читайте этот раздел сразу. Попытайтесь сначала решить задачу самостоятельно :)
Что использовать для решения.
Из результата работы программы видно, что ваши функции реализуют базовые арифметические операции — сложение, вычитание, умножение и деление.
Помните о том, что результатами сложения, вычитания и умножения целых чисел будет также целое число, а вот результатом деления целых чисел может быть и число дробное.
Для реализации самих арифметических операций используйте базовые операторы — +, -, *, /.
Не забывайте, что функция должна быть объявлена ранее, чтобы можно было её использовать.
Задача 2. Устранение дублирования
Описание
Дана программа:
Программа
Определите, что она делает, и найдите дублирующийся код. Создайте функцию, которая будет устранять дублирование, и вместо повторяющегося кода вызывайте её. Результат работы программы не должен измениться.
Пример работы программы
5 в степени 2 = 25
3 в степени 3 = 27
4 в степени 4 = 256
Подсказки
Не читайте этот раздел сразу. Попытайтесь сначала решить задачу самостоятельно :)
Что использовать для решения.
Программа содержит три участка повторяющегося кода. Повторяющийся код возводит заданное число в заданную степень. Нужно создать функцию, которая будет принимать два параметра — число и степень — и возводить это число в эту степень.
Задача 3. Числа Фибоначчи
Описание
Числа Фибоначчи — элементы числовой последовательности 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233..., в которой первые два числа равны 0 и 1, а каждое последующее число равно сумме двух предыдущих чисел.
Напишите функцию, которая принимает на вход целое число — номер элемента последовательности Фибоначчи — и возвращает число Фибоначчи, имеющее этот номер в последовательности. Функция должна быть рекурсивной.
Напишите программу, которая использует написанную функцию для вывода последовательности Фибоначчи. Программа должна запрашивать у пользователя целое число и выводить на экран столько чисел последовательности Фибоначчи, сколько ввёл пользователь.
Пример работы программы
Введите число: 5
Числа Фибоначчи: 0 1 1 2 3
Введите число: 10
Числа Фибоначчи: 0 1 1 2 3 5 8 13 21 34
Подсказки
Не читайте этот раздел сразу. Попытайтесь сначала решить задачу самостоятельно :)
Что использовать для решения.
Помните, что рекурсивная функция должна иметь условия выхода из рекурсии, то есть проверку значения параметра, после которой функция вернёт что-то конкретное. Этих условий может быть несколько.
Для вывода последовательности чисел используйте цикл for.
Усложнение*
Перепишите функцию так, чтобы она смогла быстро и корректно построить последовательность из по крайнее мере 80, а то и больше, чисел Фибоначчи. Для справки: если нумеровать числа с 1, то число Фибоначчи 78 равно 5527939700884757.
Подсказка 1.
Откажитесь от рекурсивного подхода.
Подсказка 2.
Вместо int используйте другой целочисленный тип данных, способный вмещать достаточно большие числа.
Денис
ХПИ
Самый общительный, самый честный, самый добродушный человек!) Спасибо попросил досрочно - ...
Евгений
ГУУ
Зоя Михайловна приятна в общении, пунктуалльна. Работа сделана очень быстро, прописным по...
Алина
СПБГТИ
спасибо большое. работу приняли с 1-го раза без замечаний. работы была сдана досрочно
Мария
Финансовый университет при Правительстве Российской Федерации
Спасибо большое за быстрое решение ???? Все подробно и понятно описано