2025年Python3 古典问题- 有一对兔子,从出生后第3个月

Python3 古典问题- 有一对兔子,从出生后第3个月题目 古典问题 有一对兔子 从出生后第 3 个月起每个月都生一对兔子 小兔子长到第三个月后每个月又生一对兔子 假如兔子都不死 问每个月的兔子总数为多少 兔子的规律为数列 1 1 2 3 5 8 13 21 可以发现当前的数 上个数 上上个数

大家好,我是讯享网,很高兴认识大家。

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

兔子的规律为数列1,1,2,3,5,8,13,21...可以发现当前的数=上个数+上上个数

'''------------------------------------------------------ 【程序设计】 --------------------------------------------------------- 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生 一对兔子,小兔子长到第三个月后每个月又生一对兔子, 假如兔子都不死,问每个月的兔子总数为多少? 说明:rabbit()函数的功能是根据输入的月数返回兔子对数 --------------------------------------------------------- 注意:部分源程序给出如下。请勿改动主函数main和其它函数中的 任何内容,仅在函数的注释标志之间填入所编写的若干语句。 ------------------------------------------------------''' def rabbit(num): # Program a=0 b=1 for i in range(num-1): a,b=b,a+b return b # End def main(): print("【请连续三次计算某个月的兔子总数:】") for i in range(3): print("【第%d次:】" % (i+1)) n = int(input("【查看第几个月的兔子对数:】")) rabbit_sum = rabbit(n) print("【第%d个月的兔子对数为】%d" % (n, rabbit_sum)) if __name__ == '__main__': main() 

讯享网


讯享网

代码中现在的数b=上个数b+上上个数a。循环中在计算b的值的同时(不是先后顺序,而是同时进行的)将上个数b赋值给上上个数a。这样做是为了能正确计算出下一次循环中b的值。

如果从自然语言中理解,而不是用程序的思维:可以这样理解a,b=b,a+b: 将第1个数设为a,接着的一个数设为b,那么第3个数就是a+b,将第3个数设为b,将第2个数设为a(之前它是b),那么第4个数就是a+b,以此类推下去。


小讯
上一篇 2025-03-14 20:37
下一篇 2025-04-11 09:05

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/64993.html