本帖最後由 tonyh 於 2014-8-30 16:41 編輯
費氏數列規則如下:
第n項 = 第 n-1 項 + 第 n-2 項
即整個費式數列為:
1 1 2 3 5 8 13 21 34 55 89 144 233 377...
利用函式遞迴法, 推算費氏數列中第N項的值.
- #include<iostream>
- #include<cstdlib>
- using namespace std;
- int fei(int);
- int main()
- {
- int n;
- cout<<"請輸入欲推算費氏數列的項次: ";
- cin>>n;
- cout<<"費氏數列中第"<<n<<"個項次的值為: "<<fei(n)<<endl;
- system("pause");
- return 0;
- }
- int fei(int n)
- {
- if(n<=1)
- return n;
- else
- return fei(n-1)+fei(n-2);
- }
- /*
- 假設 n=4
- fei(4)=fei(3)+fei(2)
- =fei(2)+fei(1)+fei(1)+fei(0)
- =fei(1)+fei(0)+1+1+0
- =1+0+1+1+0
- =3
- */
複製代碼 |