Python(兔子问题),python实例,古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月兔子有多少对,第12个月有多少对?


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

程序分析: 第一个月、第二个月小兔子没有繁殖能力,所以还是1对 两个月后,生下一对小兔民数共有2对 三个月以后,老兔子又生下一对,因为小兔子还没有繁殖能力,所以一共是3对,依次类推可以列出下表兔子的规律为数列1,1,2,3,5,8,13,21....这个数列有关十分明显的特点,那是:前面相邻两项之和,构成了后一项。 这个数列是意大利中世纪数学家斐波那契在<算盘全书>中提出的。

程序源代码:实例(Python 2.0+)


#!/usr/bin/python

# -*- coding: UTF-8 -*-

f1 = 1

f2 = 1

for i in range(1,7):

print '%12ld %12ld' % (f1,f2),

if (i % 2) == 0:

print ''

f1 = f1 + f2

f2 = f1 + f2


以上实例输出结果为:

1 1 2 3

5 8 13 21

34 55 89 144

评论关闭