[python]兔子问题,斐波那契数列 递归&非递归 |
您所在的位置:网站首页 › 兔子打一个数字几 › [python]兔子问题,斐波那契数列 递归&非递归 |
假设一对幼年兔子需要一个月长成成年兔子,一对成年兔子一个月后每个月都可以繁衍出一对新的幼年兔子(即兔子诞生两个月后开始繁殖)。不考虑死亡的情况,问第 N 个月时共有多少对兔子? 结果前几个月的兔子数量为:1,1,2,3,5,8,13,21,34....... 发现规律:从第三个月开始,每个月的兔子数量为上个月与上上个月的兔子数量之和。 非递归: #p6_7.py #兔子问题 def fab(n): a1=1 a2=1 a3=1 if n0: a3=a1+a2 a1=a2 a2=a3 n-=1 return a3 #m=int(input('请输入整数')) result=fab(35) if result!=-1: print('总共有%d对小兔崽子诞生'%result)递归解法: #p6_8.py #递归兔子问题 def fab(n): if n |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |