函数递归——猴子吃桃
1.问题描述
一个猴子摘了一些桃子,它第一天吃掉草了其中的一半然后再多吃了一个,第二天照此方法又吃掉了剩下桃子的一半加一个,以后每天如此,直到第十天早上,猴子发现只剩下一个桃子了,问猴子第一天总共摘了多少个个桃子?
2.问题分析
从题目中我们可以分析出,最后一天的吃桃数量是已知的。那么问题就简单多了,采用递推可以求出第八天,又可以求出第七天…
day9 = 1
day8 = 2(day9+1)=4
day7 = 2(day8+1)=10
day6 = 2(day7+1)=22
…
3.上代码:
(循环条件来实现):
day = 9
a =1
while d>0:
a1 = (a+1)*2
a = a1
day-=1
print(a1)
本文通过一个有趣的猴子吃桃问题,介绍了如何使用Python递归来解决问题。问题描述为猴子每天吃掉一半桃子再加一个,第十天只剩一个桃子,求最初有多少桃子。通过逆向思维,递归地计算出每天剩余桃子的数量,从而得出第一天的桃子总数。
2万+

被折叠的 条评论
为什么被折叠?



