Практический пример Python 28

Python 100例100 примеров на Python

Вопрос:Пять человек сидят вместе. Спросите у пятого человека, сколько ему лет. Он говорит, что он на 2 года старше четвёртого человека. Спросите четвёртого человека о его возрасте, он говорит, что он на 2 года старше третьего человека. Спросите третьего, он говорит, что он на 2 года старше второго человека. Спросите второго, он говорит, что он на 2 года старше первого человека. Наконец, спросите первого, он говорит, что ему 10 лет. Сколько лет пятому человеку?

Анализ программы:Используйте метод рекурсии. Рекурсия делится на два этапа: обратный ход и прямой ход рекурсии. Чтобы узнать возраст пятого человека, нужно узнать возраст четвёртого человека, и так далее, дойдя в рассуждениях обратно до первого человека (10 лет), а затем снова рассуждая в прямом направлении.

Исходный код программы:

Пример

#!/usr/bin/python # -*- coding: UTF-8 -*- def age(n): if n == 1: c = 10 else: c = age(n - 1) + 2 return c print (age(5))

Результат вывода приведённого выше примера:

18

Python 100例100 примеров на Python

Другие расширения