使用函數輸出指定範圍內Fibonacci數的個數
未完待續~python
瞭解fibonacci數列:app
斐波納契數列(Fibonacci Sequence),又稱黃金分割數列。函數
1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765……
(1)fibonacci數列即斐波那契數列,它的特色是前面兩個數的和等於後面的一個數,fib(0)=fib(1)=1.
(2)斐波那契數列只有一個.測試
(3)若是設F(n)爲該數列的第n項(n∈N+)。那麼這句話能夠寫成以下形式:flex
F(1)=F(2)=1,F(n)=F(n-1)+F(n-2) (n≥3)spa
顯然這是一個線性遞推數列。code
下面的例子fib(0)=fib(1)=1接口
利用for循環ci
輸出範圍內的數列:
fibs = [1,1]
for i in range(8):
fibs.append(fibs[-2] + fibs[-1])
# print(fibs)
print(fibs) # [1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
輸出特定個數元素的數列:
fibs = [1,1]
num = input('數列元素個數:')
num=int(num)
for i in range(num-2):
fibs.append(fibs[-2] + fibs[-1])
print(fibs)
利用函數input
def fibs(num):
result = [1,1]
for i in range(num-2):
result.append(result[-2] + result[-1])
print(result)
fibs(10)
# [1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
例題:
在這裏描述函數接口。例如: fib(n) PrintFN(m,n,i)
在這裏給出函數被調用進行測試的例子。例如: /* 請在這裏填寫答案 */ m,n,i=input().split() n=int(n) m=int(m) i=int(i) PrintFN(m,n,i)
在這裏給出一組輸入。例如:
20 100 6
在這裏給出相應的輸出。例如:
fib(6) = 13 4
代碼:
def PrintFN(m,n,i): def fib(n): fibs = [1, 1] for i in range(n): fibs.append(fibs[-2] + fibs[-1]) print("fib(%s)=%d"%(n,fibs[n])) fib(i) fibs = [1, 1] g = 0 for i in range(n): fibs.append(fibs[-2] + fibs[-1]) # print(fibs) if(m<fibs[i]<n): # print(fibs[i]) g+=1 #數列個數 print(g)m,n,i=input().split()n=int(n)m=int(m)i=int(i)PrintFN(m,n,i)