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

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

Определить чему равна сумма всех чисел, напечатанных на экране при выполнении вызова F(1)?

def F(n):
⠀print(n)
⠀if n < 5:
⠀⠀F(n + 1)
⠀⠀F(n + 3)

📌Рекурсия — это это функция, которая сама вызывает себя. То есть наша программа зацикливается, ждёт, пока выполнится вызываемое действие, и только после его окончания продолжает работать.

(смотри на картинку)

▫️ Первым действием процедура F(1) выведет число 1, далее F(1) сделает вызов F(n + 1), в результате выполнения которой на экране появится число n + 1, то есть 2. В свою очередь F(2) вызовет F(3), которая выведет на экран число 3 и вызовет процедуру F(4), на экран выведется число 4 и произойдет вызов F(5), которая выведет число 5

▫️ После этого управление вернётся к процедуре F(4), так как до этого программа зациклилась. Итак, F(4) выполнит следующий шаг своего алгоритма, то есть она обратится к F(n + 3) = F(7) и выведет на экран число 7

▫️ Далее управление вернётся к F(3). Итак, мы поняли алгоритм, и если мы будем рассуждать аналогично дальше, то придем к выводу, что F(3) дополнительно выведет на экран число 6, а процедура F(2) — 5

▫️ Затем, последним действием F(1) будет вызов F(n + 3) = F(4), которая выведет на экран числа 4, 5, 7.

И таким образом, мы получаем на экране следующие числа: 1, 2, 3, 4, 5, 7, 6, 5, 4, 5, 7, а сумма их равняется 49

Задание можно решить и кодом, для этого мы завели глобальную переменную k для суммы чисел.

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

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

To waste, to lose, to miss
✅ To waste — терять, тратить впустую. Чаще всего употребляем его по отношению к деньгам и времени. I often waste money on Aliexpress. — Я часто...
Обязанности пчелиной семьи
Пчёлы относятся к общественным насекомым. Эти насекомые живут совместно, образуют сообщества/семьи. К ним относятся термиты, муравьи 🐜 , осы и...
Тема, тематика, мотив, вечные темы в литературе
Что такое тема и какой она бывает в литературе? Основная Частная Ведущая тема произведения, определяющая его единство.  ...
Северная война
👉🏻 Основные причины Северной войны: — возможность России получить выход к Балтийскому морю в случае победы; — политика Швеции по расширению...
ИТОГОВОЕ СОЧИНЕНИЕ
Что нужно сделать, чтобы получить зачёт? 🔸 Во-первых, работа должна содержать минимум 250 слов. Если их будет, к примеру, 249, сочинение не будут...
Вычесления по уравнению реакций
Любую реакцию можно отразить уравнением. В уравнении есть коэффициенты, которые отражают мольное соотношение реагентов и продуктов! Реакция — это...

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

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