兩個關於數列的Python腳本(斐波那契數列和猴子吃香蕉類問題)

斐波那契數列(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

兩個關於數列的Python腳本(斐波那契數列和猴子吃香蕉類問題)


猴子吃香蕉類問題:有一堆香蕉,猴子第一天吃一半,沒忍住多吃了一個,以後每天都是這樣,吃一半多吃一個,到了第九天還剩一個,求一共有多少個香蕉。這類問題歸結爲一個公式就是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

兩個關於數列的Python腳本(斐波那契數列和猴子吃香蕉類問題)


總結數列相關問題:有關類似的數列相關的問題,最終都是通過公式和循環來計算的,所以分析問題要先歸納總結規律,得出公式,再用代碼來實現,先從較少的項數找規律,往更多的項上面推。
值得注意的是,循環方式的選擇,是選擇for循環還是選擇while循環。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章