问:

【基础题】:输出 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)))

输出结果:

Python【每日一问】22的更多相关文章

  1. [python每日一练]--0012:敏感词过滤 type2

    题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...

  2. Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词

    #coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...

  3. python每日一函数 - divmod数字处理函数

    python每日一函数 - divmod数字处理函数 divmod(a,b)函数 中文说明: divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数 返回结果类型为tuple 参数: ...

  4. 每日一问:Android 消息机制,我有必要再讲一次!

    坚持原创日更,短平快的 Android 进阶系列,敬请直接在微信公众号搜索:nanchen,直接关注并设为星标,精彩不容错过. 我 17 年的 面试系列,曾写过一篇名为:Android 面试(五):探 ...

  5. 每日一问:谈谈 volatile 关键字

    这是 wanAndroid 每日一问中的一道题,下面我们来尝试解答一下. 讲讲并发专题 volatile,synchronize,CAS,happens before, lost wake up 为了 ...

  6. 每日一问:讲讲 Java 虚拟机的垃圾回收

    昨天我们用比较精简的文字讲了 Java 虚拟机结构,没看过的可以直接从这里查看: 每日一问:你了解 Java 虚拟机结构么? 今天我们必须来看看 Java 虚拟机的垃圾回收算法是怎样的.不过在开始之前 ...

  7. 每日一问:你了解 Java 虚拟机结构么?

    对于从事 C/C++ 程序员开发的小伙伴来说,在内存管理领域非常头疼,因为他们总是需要对每一个 new 操作去写配对的 delete/free 代码.而对于我们 Android 乃至 Java 程序员 ...

  8. 每日一问:LayoutParams 你知道多少?

    前面的文章中着重讲解了 View 的测量流程.其中我提到了一句非常重要的话:View 的测量匡高是由父控件的 MeasureSpec 和 View 自身的 `LayoutParams 共同决定的.我们 ...

  9. 每日一问:简述 View 的绘制流程

    Android 开发中经常需要用一些自定义 View 去满足产品和设计的脑洞,所以 View 的绘制流程至关重要.网上目前有非常多这方面的资料,但最好的方式还是直接跟着源码进行解读,每日一问系列一直追 ...

  10. python每日一练:0007题

    第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...

随机推荐

  1. mvc5 源码解析2-2 mvchandler的执行

    我们从application获取的时候查看stepmanager的实现类 IHttpHandler applicationInstance = HttpApplicationFactory.GetAp ...

  2. 基于NPOI对Excel进行简单的操作

    1. 关于NPOI NPOI是一个开源的用于在C#程序中读写Excel.WORD等微软OLE2组件文档的项目,使用NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作. 2 ...

  3. 为什么你要使用这么强大的分布式消息中间件——kafka

    为什么是kafka? 在我们大量使用分布式数据库.分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我想对用户的搜索关键词进行统 ...

  4. 小程序动态设置style,使用内部数据

  5. 利用shell脚本将Oracle服务器中数据定时增量刷新到ftp服务器中

    现有需求:将oracle数据库中的数据准实时同步至某ftp服务器中,以便前端应用能定时从ftp服务器目录中取增量数据 方法:将加工脚本写为存储过程,然后利用shell脚本执行该存储过程并将增量数据导出 ...

  6. Jmeter 使用自定义变量

    有些情况下比如发起测试时URL的主机名和端口需要在采样器中出现多次,这样就有个问题,当测试的主机更改时, 我们需要修改主机名称,这时就需要修改多个地方,如果多的情况会有遗漏.如果我们在配置脚本的时候, ...

  7. rhel7学习第五天

    管道命令符的功能的确强大!

  8. org.apache.subversion.javahl.ClientException: svn: E155004: "" run 'svn cleanup' first.

    原文:https://blog.csdn.net/Duqian94/article/details/53791250 解决方法:1.在eclipse中右键项目“team-->refresh/cl ...

  9. UDP基础

    UDP主要特点: (1)UDP是无连接的,发送数据不需要建立连接,减少了开销和发送数据之前的时延. (2)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持连接状态表. (3)UDP面向报 ...

  10. 201871010109-胡欢欢《面向对象程序设计(java)》第四周学习总结会

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...