Рекурсивные алгоритмы — кодом

Редакция Без Сменки
Честно. Понятно. С душой.

Задача:
найти наименьшее значение n, при котором сумма чисел, которые будут выведены при вызове F(n), будет больше 5000000. (записать n, а затем сумму выведенных чисел)

def F(n):
print(2*n+1)
if n > 1:
⠀⠀⠀print(3*n-8)
⠀⠀⠀⠀F(n — 1)
⠀⠀⠀⠀F(n — 4)

🔷Решим задачу кодом:
•будем проверять текущую сумму чисел вызова f(n) через цикл while: если сумма меньше или равно 5000000, увеличиваем число n. Иначе выходим — нашли наименьшее значение.
•подсчет текущей суммы вынесем в отдельную функцию f(n)

🔷Функция f(n):
•воспользуемся переменной s для нахождения суммы чисел
•все выводы чисел суммируем в s, в том чисел и сумму чисел от вызовов f(n-1) и f(n-4)

Где вы учитесь?

Вам также будет интересно

Правление Ивана IV Грозного
🤴 16 января 1547 г. в Успенском соборе Московского Кремля венчали Ивана IV Грозного на царство. Нужно же выделиться из массы князей и показать, что...
Последовательное соединение проводников
При последовательном соединении все входящие в него проводники соединяются друг за другом, т.е. конец первого проводника соединяется с началом...
Качественные реакции: цвет осадков
Никак не можешь запомнить цвета осадков? Публикуем первую шпаргалку по качественным реакциям, здесь ты найдешь наиболее важные из них  Самые...
Что нужно знать, чтобы сдать ЕГЭ по истории
История и её части даты — базовый минимум, с которого необходимо начинать подготовку к экзамену; сюжеты — повествование, ход событий (история...
ЗАДАНИЕ 13 | добыча природного газа в России
II тип — добыча природного газа в России 📚 Теория для задания: Основные районы добычи природного газа: Западная Сибирь (90% от общего объёма),...
Рынок и рыночный механизм
🔎 Рынок — совокупность всех отношений, а также форм и организаций сотрудничества людей, обладающих свободой экономических действий, друг с другом,...

0 комментария

Авторизуйтесь, чтобы оставить комментарий.