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

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

Задача:
найти наименьшее значение 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)

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

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

Литературные направления
Один из любимых вопросов на ЕГЭ сразу после вопроса о жанре произведения. Сохраняйте себе и не путайтесь в особенностях направлений! Литературное...
Графики функций
Графики функции точно вам попадутся на ЕГЭ по математике, поэтому ловите от нас удобную и классную картинку, которая поможет вам в подготовке!
Суффиксы прилагательных -able, -ible
👩🏽‍🏫 Эти суффиксы имеют латинское происхождение. Выбор «a» или «i» в суффиксе изначально зависел от латинских глаголов. В процессе словообразования...
Шкала переводов баллов на ЕГЭ по русскому языку
Ловите правила перевода баллов, с которой вы с лёгкостью сможете сориентироваться за что и сколько баллов  можно получить!
Северная война
👉🏻 Основные причины Северной войны: — возможность России получить выход к Балтийскому морю в случае победы; — политика Швеции по расширению...
Аббревиатуры XX века
Одним из самых сложных моментов в изучении XX века является огромное количество аббревиатур и сокращений, которых все боятся. Сегодня попробуем...

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

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