本帖最後由 鄭繼威 於 2024-7-15 09:57 編輯
1. 題目說明:
請依下列題意進行作答,使輸出值符合題意要求。
2. 設計說明:
請撰寫一程式,包含名為compute()的函式,接收主程式傳遞的一個正整數n(n<10),compute()計算費氏數列第n項的值後回傳至主程式,並輸出倒印費氏數列。
提示:費氏數列的某一項數字是其前兩項的和,而且第0項為0,第一項為1,表示方式如下:
提示:若使用 Java 語言答題,請以「JP」開頭命名包含 main 靜態方法的 class,評測系統才能正確評分。
3. 輸入輸出:
輸入說明
一個小於10的正整數
輸出說明
倒印費氏數列
範例輸入
9
範例輸出
fib(9)=34
fib(8)=21
fib(7)=13
fib(6)=8
fib(5)=5
fib(4)=3
fib(3)=2
fib(2)=1
fib(1)=1
本帖隱藏的內容需要回復才可以瀏覽 Python- fib = [0, 1]
- def compute(x):
- for i in range(x):
- fib.append(fib[-1] + fib[-2])
- return fib[x]
- n = int(input())
- Fib_n = compute(n)
- for i in range(n, 0, -1):
- print('fib(' + str(i) + ')=' + str(fib[i]))
複製代碼- #compute()求第n項的費氏數列
- def compute(n):
- if n==0:
- return 0
- elif n==1:
- return 1
- else:
- return compute(n-1)+compute(n-2)
- n=int(input())
- #n~1的for迴圈
- for i in range(n,0,-1):
- print(f"fib({i})={compute(i)}")
複製代碼 |