題組內容
五、「遞迴」與「迴圈」是程式設計重要的手法,請回答下列問題:
(二)下列左右兩邊之程式碼,左邊以「遞迴」手法撰寫,右邊擬將之改為以「迴圈」手法撰 寫,請於右邊程式空白處填入正確程式碼。(9分)
申論題作答 (共 3 筆)
依時間顯示最近 3 筆。
Kiwi Tsai
申論題作答 #109096
18 分
18
總分
6分29秒 總時間
0 人解鎖
2026.10
正文
fibn = fibn(i1); i; fibn += fibn(i1);
Bo Jun
申論題作答 #106716
100 分
100
總分
1分23秒 總時間
1 人解鎖
2026.09
作答大綱
fibn=fibn1+fibn2; fibn2=fibn1; fibn1=fibn;
正文
fibn=fibn1+fibn2; fibn2=fibn1; fibn1=fibn;
igngs
申論題作答 #103982
100 分
100
總分
4分25秒 總時間
0 人解鎖
2026.08
正文
fibn=fibn2+fibn1; fibn2=fibn1; fibn1=fibn;
詳解 (共 4 筆)
a28205739
詳解 #2443853
fib_n = fib_n_2 + fi...
(共 62 字,隱藏中)
前往觀看
shang
詳解 #6209207
fib_n = fib_n_2 + fi...
(共 70 字,隱藏中)
前往觀看
我還有明天
詳解 #5147256

費氏數列的迭代建議背下來
想法:
(1)由於費氏數列基本規則,因此必有一段程式為fib_n = fibn_1 + fibn_2;
(2)接著從上圖可看出 會有fib_n_2=fib_n_1;與fib_n_1 =fib_n;(3)再將這三段程式碼依照優先順序排列後試算看看誰先誰後,即可得出答案
蔡明勳
詳解 #5635014
這題 fib_1 與 fib_2 的賦值的順序是有差的,答案會不一樣
正確如下 :

如果是
f_n = f_1 + f_2;
f_2 = f_1;
f_1 = f_n;
出來的數列會變成 :
[1 1 1 2 3 5 8 ......]
正確如下 :

如果是
f_n = f_1 + f_2;
f_2 = f_1;
f_1 = f_n;
出來的數列會變成 :
[1 1 1 2 3 5 8 ......]