给python点颜色 佘友军_给Python点颜色——青少年学编程最新章节_佘友军著_掌阅小说网...

2.4 案例

——斐波那契数列

800多年前,一位叫作斐波那契的数学家根据一道著名的兔子繁殖问题发现了这样一组奇怪的数列:

1、1、2、3、5、8、13、21、34……

看起来奇怪,实则也有规律,这组数从第3个数开始每个数是前两项的和:

● 2是前两项的和(1+1);

● 3是前两项的和(1+2);

● 5是前两项的和(2+3);

● 8是前两项的和(3+5)……

你能把斐波那契数列写得更长一些吗?

用这些数作为边长来画正方形,然后以正方形的边长为直径画一个四分之一圆,就得到了漂亮的螺旋图案,把这个图案跟鹦鹉螺的图案比比看。

还有奇妙的:两个连续的斐波那契数的比非常接近黄金比1.618034……两个连续的斐波那契数越大,它们的比就越接近黄金比。

在自然界中还有更惊奇的呢!一些花的花瓣数量竟然暗中符合斐波那契数列:鸢尾花、百合花是3枚,飞燕草是8枚,瓜叶菊是13枚,向日葵有的是21枚,有的是34枚,雏菊的花瓣有34枚、55枚或89枚。

下面我们编写程序,输出更多的斐波那契数:

a1=1

a2=1

a3=0

for i in range(1,50):

print(a1,end='')

a3=a1+a2

a1=a2

a2=a3

这里先给前2个数赋值,然后打印出第1个斐波那契数。再通过

a

3=

a

1+

a

2求出第3个数,接下来,将第2个数赋值给

a

1,第3个数赋值给

a

2,继续求出下一个斐波那契数。

上面的语句还可以简化成:

a1=1

a2=1

a3=0

for i in range(1,50):

print(a1,end='')

a1,a2=a2,a1+a2

这段代码更加优雅,将原来的最后3行合并为1行,结果与原来一样,也是第1个数字替换为第2个数字,将原来的第2个数字替换为第1个数和第2个数之和。

TV6G7EaN2TcttwrlqqqH+1nmS0iRkibG+JU524EYbfMC0eKiSMQWRk7v+PLN/iXn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值