1. python斐波那契數列代碼怎麼寫
代碼實現斐波那契數列 運行的結果 在Python代碼中給num傳的值是10,所以會得到10個斐波那契數列的值,
2. python怎麼實現斐波那契數列
def Fibonacci (stop_number):
a=[1,1]
i=0
while i<stop_number:
a.append(a[-1]+a[-2])
i=i+1
return(a)
3. 請編寫Python程序完成以下要求:編寫函數,求斐波那契數列第n項的值,F0=1,F1=1
def Fibonacci(n):
f0=0
f1=1
s=[]
s.append(f0)
s.append(f1)
for i in range(1,n+1):
s.append(s[i-1]+s[i])
return s[n]
4. python編程,斐波那契數列
婓波那契數列(前兩個數的和是第三個數)
def fib(num):
fibs=[0,1]
#num=input('請輸入婓波那契數列中的數據個數:')
for i in range(int(num)-2):
fibs.append(fibs[-2]+fibs[-1])
print(fibs)
print(fibs[-2])
fib(10)
5. python寫斐波那契數列
如果你是3.0以上版本,你的print語法就是錯的,應該是print(fib(10))
另外,你這個函數的結果也並不是返回的數列
6. 急求輸出斐波那契數列第700項的python程序,天亮前啊!拜託啦!
普通演算法輸出斐波那契數列第700項需要花很長的時間,因為遞歸多次嵌套演算法復雜度非常高。所以這里用動態規劃優化了一下,用到了python的字典功能。
程序如下:
def FastFib(n, memo):
if not n in memo:
memo[n] = FastFib(n - 1, memo) + FastFib(n - 2, memo)
return memo[n]
def FastFibonacci(n):
memo = {0:1, 1:1} # initialize the memo
return FastFib(n, memo)
print FastFibonacci(700)
輸出結果:
7763701L
希望能夠幫到你,如果不懂可追問,望採納!
7. python做斐波那契數列。
直接創建一個類然後調用下面的def函數即可
#斐波那契數列
'''
第一位是1
第二位是1
第三位是2
公式位F(n)=f(n-1)+f(n-2)
'''
def get_Fibonacci_sequence(n):
'''輸入n,遍歷到第n位的斐波那契數列'''
a,b=0,1
if n>=3:#即等於>2 相當於1,2位特殊處理
for i in range(n-1):#操作次數是n-1,去除一次第一位的操作
c=a+b
a,b,=b,c
print(b)#這里選擇先改變再輸出,可以減少1次的循環
def get_Fibonacci_Num(n):
'''輸入n,遍歷到第n位的斐波那契數列的第n位數'''
a, b = 0, 1
if n >= 3: # 即等於>2 相當於1,2位特殊處理
for i in range(n - 1): # 操作次數是n-1,去除一次第一位的操作
c = a + b
a, b, = b, c
# 這里選擇先改變再輸出,可以減少1次的循環
return b
def get_Fibonacci_Num_recursion(n):
'''輸入n,遍歷到第n位的斐波那契數列的第n位數,遞歸實現'''
if n==1 or n==2:#特別注意,這里要用邏輯或判斷,不能直接用或判斷,
return 1
else:
return get_Fibonacci_Num_recursion(n-1)+get_Fibonacci_Num_recursion(n-2)
get_Fibonacci_sequence(11)
print(get_Fibonacci_Num(11))
print(get_Fibonacci_Num_recursion(11))
8. 求助python大神。斐波那契數列,編寫程序,利用列表計算斐波那契數列前30項,並以列表形式輸出。
##縮進格式看圖
l=[1,1]
for i in range(28):
l.append(l[-2]+l[-1])
print(l)
9. python中解 斐波那契數遞推公式不能理解
第一張圖
def f(n):
if n==1 or n==2:
return 1
else:
return f(n-1)+f(n-2)
b=f(6)
print(b)
源代碼(注意源代碼的縮進)
第二張圖是階乘的遞歸程序,其過程是
fact(5)=5*fact(4)=5*4*fact(3)=5*4*3*fact(2)=5*4*3*2*fact(1)=5*4*3*2*1*fact(0)
因為fact(0)=1,所以上式=5*4*3*2*1*1=120
詳細解釋,
因為n等於5所以執行else語句返回5*fact(4)
n等於4所以執行else語句返回4*fact(3)
n等於3所以執行else語句返回3*fact(2)
n等於2所以執行else語句返回2*fact(1)
n等於1所以執行else語句返回1*fact(0)
n等於0所以執行if語句返回1
然後反向回歸
fact(1)=1*1
fact(2)=2*1*1
fact(3)=3*2*1*1
fact(4)=4*3*2*1*1
fact(5)=5*4*3*2*1*1=120
10. 斐波那契數列用python怎麼表示
斐波那契數列指的是這樣一個數列 0, 1, 1, 2, 3, 5, 8, 13,特別指出:第0項是0,第1項是第一個1。從第三項開始,每一項都等於前兩項之和。
Python 實現斐波那契數列代碼如下:
#-*-coding:UTF-8-*-
#Filename:test.py
#authorby:www.runoob.com
#Python斐波那契數列實現
#獲取用戶輸入數據
nterms=int(input("你需要幾項?"))
#第一和第二項
n1=0
n2=1
count=2
#判斷輸入的值是否合法
ifnterms<=0:
print("請輸入一個正整數。")
elifnterms==1:
print("斐波那契數列:")
print(n1)
else:
print("斐波那契數列:")
print(n1,",",n2,end=",")
whilecount<nterms:
nth=n1+n2
print(nth,end=",")
#更新值
n1=n2
n2=nth
count+=1
執行以上代碼輸出結果為:
你需要幾項? 10
斐波那契數列:
0 , 1 , 1 , 2 , 3 , 5 , 8 , 13 , 21 , 34 ,