您的位置:首页 > 编程语言 > Python开发

【python】编程语言入门经典100例--11

2016-02-23 09:48 711 查看
1 #题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

代码:
2
3 month = int(input('请输入你要查询的月份:'))
4 mon = int(month/3)
5 m = 2
6 for i in range(1,mon+1):
7     m += m
8 print('这个月的兔子总数为%d'%m)


运行结果:
[root@HK code_100]# python code_11.py
请输入你要查询的月份:3
这个月的兔子总数为4
[root@HK code_100]# python code_11.py
请输入你要查询的月份:6
这个月的兔子总数为8
[root@HK code_100]# python code_11.py
请输入你要查询的月份:11
这个月的兔子总数为16
[root@HK code_100]# python code_11.py
请输入你要查询的月份:50
这个月的兔子总数为131072
[root@HK code_100]#


代码解释:
解题思路:因为不确定会输入多少月份,所以不能计算出所有月份的数量再取值,只能利用循环语句循环到输入的月份然后累加得到结果,最重要的是要将输入的月份转换成繁殖的次数,然后基于繁殖次数进行累加,具体代码解释如下:

2
3 month = int(input('请输入你要查询的月份:'))   #输入要查询的月份
4 mon = int(month/3)                            #输入的月份除以3然后取整,会计算出繁殖的次数
5 m = 2                                #初始是2只兔子
6 for i in range(1,mon+1):              #计算出繁殖的次数,然后在次数内遍历
7     m += m                            # 每循环一次,自身数量累加一次,得出总和
8 print('这个月的兔子总数为%d'%m)       #格式化输出兔子总数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python