C++輸出斐波那契數(shù)列的兩種實現(xiàn)方法
更新時間:2013年10月21日 08:37:41 作者:
以下是對C++中輸出斐波那契數(shù)列的兩種實現(xiàn)方法進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助
定義:
斐波那契數(shù)列指的是這樣一個數(shù)列:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...
這個數(shù)列從第三項開始,每一項都等于前兩項之和。
以輸出斐波那契數(shù)列的前20項為例:
方法一:
比較標準的做法,是借助第三個變量實現(xiàn)的。
復(fù)制代碼 代碼如下:
#include<iostream>
using namespace std;
int main(){
int f1=0,f2=1,t,n=1;
cout<<"數(shù)列第1個:"<<f1<<endl;
cout<<"數(shù)列第2個:"<<f2<<endl;
for(n=3;n<=20;n++){
t=f2;
f2=f1+f2;
f1=t;
cout<<"數(shù)列第"<<n<<"個:"<<f2<<endl;
}
cout<<endl;
return 0;
}
方法二:
這是小編學(xué)習(xí)的時候自己想到的方法,可以通過兩次加分,一次循環(huán)輸出兩個項。
復(fù)制代碼 代碼如下:
#include<iostream>
using namespace std;
int main(){
int f1=0,f2=1,t,n=1;
cout<<"數(shù)列第一項:"<<f1<<endl;
cout<<"數(shù)列第二項:"<<f2<<endl;
for(n=2;n<10;n++){
f1=f1+f2;
cout<<"數(shù)列第"<<(2*n-1)<<"項:"<<f1<<endl;
f2=f1+f2;
cout<<"數(shù)列第"<<(2*n)<<"項:"<<f2<<endl;
}
cout<<endl;
return 0;
}