小言_互联网的博客

递推法 求菲波那契数列的前 n 项

569人阅读  评论(0)

题目

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;
}

转载:https://blog.csdn.net/weixin_42716366/article/details/102409607
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场