方法一:普通法
#include
#include
unsigned
long
fibonacci
(unsigned n)
;/*列印fibonacci*/
intmain
(void
)printf
("\athank you for you using.");
return exit_success;
}unsigned
long
fibonacci
(unsigned n)
else
b =1;
return b;
}
方法二:利用陣列
#include
#include
#define upper 57
unsigned
intfibonacci
(unsigned
int a)
;/*列印fibonacci*/
unsigned
intcheck
(void);
/*檢查輸入是否為數字的錯誤*/
intmain
(void
)printf
("done!");
return exit_success;
}unsigned
intfibonacci
(unsigned
int a)
/*fibonacii數列求解運算*/}}
else
/*處理當輸入1 or 2時的情況*/
if(a ==2)
}}unsigned
intcheck
(void
)return input;
}
方法三:遞迴求解
#include
#include
#define upper 57
unsigned
intfibonacci
(unsigned
int a)
;/*列印fibonacci*/
unsigned
intcheck
(void);
/*檢查輸入是否為數字的錯誤*/
intmain
(void
)/*準備開始第n(n>1)次迴圈*/
printf
("this program is using for fibonacci array.\n");
printf
("please enter the number that you want to see "
"the fibonacci(less than 4294967295)"
" (for your computer's speed of operation "
"considerations, generally do not recommend "
"more than 10000)");
}printf
("done!");
return exit_success;
}unsigned
intfibonacci
(unsigned
int a)
/*fibonacii數列求解運算*/
/*遞迴*/
unsigned
intcheck
(void
)return input;
}
核心**:
普通法:
unsigned
long
fibonacci
(unsigned n)
else
b =1;
return b;
}
陣列法:
unsigned
intfibonacci
(unsigned
int a)
/*fibonacii數列求解運算*/}}
else
/*處理當輸入1 or 2時的情況*/
if(a ==2)
}}
遞迴法:
unsigned
intfibonacci
(unsigned
int a)
/*fibonacii數列求解運算*/
/*遞迴*/
顯而易見的是,普通法最簡單,但**可讀性不高;陣列法難易度居中;遞迴法最難,**最簡潔,但同時占用記憶體也多。 Fibonacci數列求餘 C語言
fibonacci數列求餘 c語言 問題描述 fibonacci數列的遞推公式為 fn fn 1 fn 2,其中f1 f2 1。當n比較大時,fn也非常大,現在我們想知道,fn除以10007的餘數是多少。輸入格式 輸入包含乙個整數n。輸出格式 輸出一行,包含乙個整數,表示fn除以10007的餘數。說...
Fibonacci數列C語言
fibonacci數列的遞推公式為 fn fn 1 fn 2,其中f1 f2 1。當n比較大時,fn也非常大,現在我們想知道,fn除以10007的餘數是多少。輸入包含乙個整數n。輸出一行,包含乙個整數,表示fn除以10007的餘數。在本題中,答案是要求fn除以10007的餘數,因此我們只要能算出這個...
Swift學習 求Fibonacci數列
參考自 題目 定義 fibonacci 數列如下 看到斐波那契數列幾乎所有的程式設計師在第一時間的反應都是 遞迴 沒錯了,作為和漢諾塔一樣的經典遞迴問題,我們幾乎毫不猶豫就可以寫出如下的 func fibonacci 1 index int int else if index 1 else 分析2 ...