Python 入门经典100实例:实例11 每月兔子总数

Python 入门经典100实例:实例11 每月兔子总数,第1张

概述Python 入门经典100实例:实例11 每月兔子总数

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

程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 

关于斐波那契数列的兔子繁殖问题可以如下理解:

实际月份  1    2    3    4    5    6    7     8


幼仔对数  1    0    1    1    2    3    5     8

成兔对数  0    1    1    2    3    5    8    13

总体对数  1    1    2    3    5    8   13   21

幼仔对数=前月成兔对数

成兔对数=前月成兔对数+前月幼仔对数

总体对数=本月成兔对数+本月幼仔对数


可以看出幼仔对数、成兔对数、总体对数都构成了一个数列。这个数列有关十分明显的特点,那是:前面相邻两项之和,构成了后一项。


程序源代码:

f1 = 1f2 = 1for i in range(1,21):   # %12d 将一个整数在宽度为12个字符的栏中右对齐   print '%12d %12d' % (f1,f2)   f1 = f1+ f2   f2 = f1+f2

输出结果为:

           1            1           2            3           5            8          13           21          34           55          89          144         233          377         610          987        1597         2584        4181         6765       10946        17711       28657        46368       75025       121393      196418       317811      514229       832040     1346269      2178309     3524578      5702887     9227465     14930352    24157817     39088169    63245986    102334155


总结

以上是内存溢出为你收集整理的Python 入门经典100实例:实例11 每月兔子总数全部内容,希望文章能够帮你解决Python 入门经典100实例:实例11 每月兔子总数所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1198218.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)