古典问题:
有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,每个月的兔子总数为多少?
思路:
一月:1对
二月:1对
三月:2对
四月:3对
五月:5对
六月:8对
典型的斐波那契数列,用递归就很容易写出来啦!
代码如下:
n=int(input("please enter the nmonthly number: "))
sum=1
def aa(n):
if n==1 or n==2:
return sum
if n>=3:
return aa(n-2)+aa(n-1)
for i in range(1,n+1):
print(aa(i),end=" ")
print("")
print("sum is ",aa(n))
运行结果:
please enter the nmonthly number: 6
1 1 2 3 5 8
sum is 8