Форум сайта python.su
Объясните как пошагово выполняется программа, как передаются параметры в функцию?
def hanoi(n, a, b):
if n != 0:
hanoi(n-1, b, a)
print(a, b, n)
hanoi(3, ‘A’, ‘B’)
Результат:
A B 1
B A 2
A B 3
Офлайн
Вот как передаются аргументы (порядок следования):
Вход (3, ‘A’, ‘B’)
следующий(2,“В”,“А”)
третий (1,“А”,“В”)
Третий вызов печатает и завершает работу –> срабатывает печать из второго вызова и
второй завершает работу –> отрабатывает печать первого, входного вызова, и всё.
Отредактировано Rafik (Март 18, 2020 18:43:12)
Офлайн
DagonПопробуй взять пример, который проще Ханойских башен. Не надо думать, что Ханойские башни - это самая простая рекурсия. Возьми рекурсивное вычисление факториала, например. Все эти передачи параметров ничем не отличаются.
Объясните как пошагово выполняется программа, как передаются параметры в функцию?
Офлайн