有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,
假如兔子都不死,问每个月的兔子总数为多少?
程序分析:
对问题分析过后会发现,这是一个典型的关于'斐波那契函数'的例子,知道这一点就很容易解决这个问题。
斐波那契函数:一个数列,前两项是1,从第3个数字开始,每一项都是前面两项的和:
例如:1,1,2,3,5,8,13,21,34...
def birth_new(month):
if month <= 2:
return 1
else:
return birth_new(month-1)+birth_new(month-2)
mm = int(input('你想知道第几个月兔子总数?'))
rabs_sum = birth_new(mm)
print('第{}个月兔子总数是:{}对。'.format(mm,rabs_sum))