斐波那契数列(Fibonacci sequence),因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,又因其相邻两项的比无限接近黄金分割比例,所以又称为黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……,即后一项是前两项的和。
#!/usr/bin/python #coding:utf-8 #斐波那契数列 x=[0,1] for i in range(int(raw_input('请输入数字:'))): tmp=x[-1]+x[-2] x.append(tmp) print x
猴子吃香蕉类问题:有一堆香蕉,猴子第一天吃一半,没忍住多吃了一个,以后每天都是这样,吃一半多吃一个,到了第九天还剩一个,求一共有多少个香蕉。这类问题归结为一个公式就是X**1=(X2+1*)2。
#!/usr/bin/python #coding:utf-8 #每天吃一半多一个,第九天还剩1个,计算一共有多少个香蕉 i=1 a=9 while 0<a<=9: tmp=(i+1)*2 i=tmp a-=1 print i
总结数列相关问题:有关类似的数列相关的问题,最终都是通过公式和循环来计算的,所以分析问题要先归纳总结规律,得出公式,再用代码来实现,先从较少的项数找规律,往更多的项上面推。
值得注意的是,循环方式的选择,是选择for循环还是选择while循环。
转载于:https://blog.51cto.com/13587182/2071198