Python递归练习题已经做过两道题了,相信大家对递归已经有了足够的认知。今天就再来做一道在递归基础上改进的Python练习题吧。
Python回推与递推的练习题如下:
问题描述:
已知有五位朋友在一起。第五位朋友他说自己比第4个人大2岁;
问第4个人岁数,他说比第3个人大2岁;
问第三个人,又说比第2人大两岁;
问第2个人,说比第一个人大两岁;
最后问第一个人,他说是10岁。
要求:求第5个人的年龄是多少。
python解题思路分析:这里又是要用到利用递归的方法来解决这道题了。递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人是10岁。这样再往回推。
Python解题源代码如下:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
#www.iplaypy.com
def age(n):
if n == 1: c = 10
else: c = age(n - 1) + 2
return c
print age(5)
Python回推与递推,编程练习题实例二十八,计算结果为第五个人的年龄是18岁。看着很复杂的问题,其实很简单,就单单把它想成是一道数学题就好啦。
玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/python-100/11115.html
相关文章 Recommend