问题
假设有一对新生的兔子,从第三个月开始他们每个月月初都生一对兔子,新生的兔子从第三个月月初开始又每个月又生一对兔子。按此规律,并假定兔子没有死亡,n个月月末共有多少对兔子?
分析
要解释兔子繁殖问题,可以使用递归的方式来实现。假设兔子在出生后第二个月开始繁殖,每对兔子每个月能生一对新兔子,且新生的兔子也从第二个月开始繁殖。
以下是一个基于递归的Python程序,用来计算指定月份时兔子的数量:
该程序首先定义了一个`count_rabbits`函数,它接收一个整数参数`months`表示月份。如果`months`为1或2,表示兔子的数量为1。否则,递归调用`count_rabbits`函数计算前两个月和前一个月兔子数量的和。
在主程序中,我们能够输入指定的月份,程序会计算出该月份时兔子的总数量,并输出结果。