题目:有一对兔子,从出生后第三个月起每个月都生一对小兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子不死,每个月的兔子总数为多少?
思路分析:
月份 兔子数 规律
1 2 2**1
2 2 2**1
3 2+2 2**2
4 2+2 2**2
5 2+2 2**2
6 (2+2)*2 2**3
7 (2+2)*2 2**3
8 (2+2)*2 2**3
9 (2+2)*2*2 2**4
从规律可以看出,实际兔子数据就是2的(月分数-1)幂次方问题。
代码如下:
while True: month = int(input('您想预测第几个月的兔子数?(0退出) ')) if month==0: print('感谢您的使用!') break times = month // 3 tz_num = 2**(times+1) print('第%d月的兔子数是:%d'%(month,tz_num))