题目:如题
Fibonacci 数列:0,1,1,2,3,5,8,13,21,34,……,求菲波那契数列的前 n 项
算法分析:
找规律得出递推式:fn = fn-1 + fn-2 ( n >= 2 )
边界条件:
f0 = 0; f1 = 1
代码:
输入n
输出:前n项菲波那切数列
#include <iostream>
#include <algorithm>
using namespace std;
/*
斐波那契数列
*/
int main()
{
//斐波那契数列
int n, a1, a2;
cout<<"n:"<<endl;
cin>>n;
a1 = 0;
a2 = 1;
cout<<a1<<" "<<a2<<" ";
for(int i = 2;i <= n/2;i++){
a1=a1 + a2;
a2=a1 + a2;
cout<<a1<<" "<<a2<<" ";
}
if(n > (i-1)*2) {
cout<<a1 + a2<<endl;
}
return 0;
}