python之"斐波那契数列"

斐波那契数列

这里主要了解:1.斐波那契数列?以及,2.如何用python语言来实现斐波那契数列的打印?

1.什么事斐波那契数列:
斐波那契数列最大特点:前两项之和等于后一项,比如1+1=2、1+2=3、2+3=5、3+5=8、5+8=13…
我们用an表示一个数列的第n项,那么斐波那契数列的规律就是:
An+2 = An + An+1
第一二项比较特殊为:A1 = 1, A2 = 1

2.如何用python语言来实现斐波那契数列的打印?
先附上实现方法,再一步一步分解:

An = 1
An+1 = 1
for i in range(100):
	if i == 0:
		 print(An)
	elif i == 1:
		print(An+1)
	else:
		An+2 = An + An+1
		An = An+1
		An+1 = An+2
		print(An+2)

这波怎么讲:
i == 0 和 i== 1,都好说,无非打印 前一二项的 1,1
i > 1之后呢:
首先计算后一项的值:An+2,根据公式 An+2 = An + An+1,这个其实也好理解,
那An = An+1呢?其实你想,你在进入下次循环时,是不是应该先拿到,下次计算值得前两项 (An),和前一项(An+1)。那刚好在本次循环时的An+1,是不是就刚好是下次计算的值得前两项An呢,本次计算的结果An+2,是不是就刚好是下次计算值的前一项呢,所以这里的:
An = An+1
An+1 = An+2
就很好理解了吧!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值