C++输出斐波那契数列的几种方法

定义:

 

斐波那契数列指的是这样一个数列:0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, …
这个数列从第三项开始,每一项都等于前两项之和。

以输出斐波那契数列的前20项为例:

 

方法一:

比较标准的做法,是借助第三个变量实现的。

 

[cpp][/cpp] view plaincopy

  1. #include<iostream>
  2. using namespace std;
  3. int main(){
  4.     int f1=0,f2=1,t,n=1;
  5.     cout<<“数列第1个:”<<f1<<endl;
  6.     cout<<“数列第2个:”<<f2<<endl;
  7.     for(n=3;n<=20;n++){
  8.         t=f2;
  9.         f2=f1+f2;
  10.         f1=t;
  11.     cout<<“数列第”<<n<<“个:”<<f2<<endl;
  12.     }
  13.     cout<<endl;
  14.     return 0;
  15. }

 

 

方法二:

这是楼主学习的时候自己想到的方法,可以通过两次加分,一次循环输出两个项。

 

[cpp][/cpp] view plaincopy

  1. #include<iostream>
  2. using namespace std;
  3. int main(){
  4.     int f1=0,f2=1,t,n=1;
  5.     cout<<“数列第一项:”<<f1<<endl;
  6.     cout<<“数列第二项:”<<f2<<endl;
  7.     for(n=2;n<10;n++){
  8.         f1=f1+f2;
  9.     cout<<“数列第”<<(2*n-1)<<“项:”<<f1<<endl;
  10.     f2=f1+f2;
  11.     cout<<“数列第”<<(2*n)<<“项:”<<f2<<endl;
  12.     }
  13.     cout<<endl;
  14.     return 0;
  15. }

标签