问:

【基础题】:输出 9*9 口诀表

【提高题】:古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? (PS:例如输入一个数字15,计算出第15个月兔子的总数)

答:

【基础题】:输出 9*9 口诀表

方法1:

for i in range(1, 10):
for j in range(1, i+1):
print('%d *' % j, '%d' % i, '= %-3d' % (i*j), end=' ') # 第三个对象是左对齐,宽度为3,end=''的作用是不换行
print('')

方法2:

i = 1
while i <= 9:
j = 1
while j <= i:
print("%d * %d = %d\t" % (j, i, j*i),end="")
j += 1
print("")
i += 1

方法3:

for i in range(1, 10):
for j in range(1, i+1):
print('{} * {} = {}\t'.format(j, i, j*i), end=' ') # 此处使用 format 进行格式化输出
print('')

输出结果:

【提高题】:古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? (PS:例如输入一个数字15,计算出第15个月兔子的总数)

'''
实际月份:1 2 3 4 5 6 7 8
生仔对数:0 0 1 1 2 3 5 8
成兔对数:0 0 1 2 3 5 8 13
总体对数:1 1 2 3 5 8 13 21
规律 ==》 斐波那契数列:前面相邻两项之和,构成了后一项
'''

def get_rabbit_number_by_month(total_month):
if total_month == 1 or total_month == 2:
return 1
else:
return get_rabbit_number_by_month(total_month-1) + get_rabbit_number_by_month(total_month-2) if __name__ == "__main__":
total_month = int(input("您想要知道第几个月的兔子总数:"))
print("第{}个月兔子总数:{}对".format(total_month,get_rabbit_number_by_month(total_month)))

输出结果:

最新文章

  1. Asp.net mvc5开源项目&quot;超级冷笑话&quot;
  2. SearchLookUpEdit
  3. 安卓四大组件之activity和获取网络资源之断点续传
  4. POJ 2121
  5. SQL Server书籍整理
  6. Shell脚本学习入门(一)
  7. Android中Input型输入设备驱动原理分析&lt;一&gt;
  8. MySQL内存体系架构及参数总结 ---图解
  9. 解压版本 Tomcat配置--转
  10. HTML+CSS笔记 CSS中级 颜色&长度值
  11. python中mcmc方法的实现
  12. uoj #58 【WC2013】糖果公园
  13. noip模拟 市长选举
  14. HoloLens开发与性能优化实践
  15. 在CentOS6上编译安装实现LAMP(php-modules)+phpMyAdmin安装过程全记录
  16. Spock - Document -06 - Modules
  17. psnr的定义和python实现
  18. 【转】C++对成员访问运算符-&gt;的重载
  19. LeetCode 29 - 两数相除 - [位运算]
  20. tornado源码分析-iostream

热门文章

  1. 【转】Visual Studio Code(VS code)你们都在用吗?或许你们需要看一下这篇博文
  2. Python关于多继承
  3. Python笔记:装饰器
  4. Exif认识(二)
  5. Linux搭建邮件服务器Postfix+Dovecot+MySQL+PHP
  6. AI-图像基础知识-01
  7. Nginx 核心配置-单节点实现多域名访问
  8. Jupyter notebook 中常用的快捷键
  9. dapi 基于Django的轻量级测试平台五 测试报告
  10. js日期增加或减少一天