Найти в Дзене
Python 3.8

Python Разворот последовательности с помощью рекурсии

=> ссылается снова на значение
=> ссылается снова на значение

Решим задачу: последовательность натуральных чисел заканчивается числом 0. Суть задачи вывести последовательность в обратном порядке. Запрещено пользоваться циклами, динамическими структурами данных, данную задачу необходимо решать средствами рекурсии.

Входные данные для задачи являются следующие числа: 6 7 8 0

1. Выполнение алгоритма начинается с момента когда переменная reverse() ссылается на функцию def reverse()

-2

2. После того как в первом блоке сохранилось и заморозилось значение x=6, программа получает следующие число последовательности x=7 условие if x!=0: снова принимает значение true, тогда значение x=7 также сохранилось и заморозилось на время, после чего программа еще раз рекурсирует, reverse ()=> ссылается снова на значение def reverse () аналогично обрабатывается x=8, далее программа на ввод получает x=0 условие if x!=0: не выполняется, алгоритм переходит к print(x) где переменная принимает значение x=7.

-3

3. После того как программа дошла до 4 блока происходит обратная рекурсия и программа выполняет функцию print(x) и выводит в обратном порядке ранее замороженные значения веденные значения

-4

print (0); print (8) print (7); print (6); выход из функции

Вывод значений

-5

Наука
7 млн интересуются