Problem : 斐波那契数列

Problem : 斐波那契数列

Description
斐波那切数列0,1,1,2,3,5,8,13,21,34,55……从第三项起,每一项都是紧挨着的前两项的和。写出计算斐波那切数列的任意一个数据项递归程序

Input
输入一个数字N,N<=35

Output
如题

Sample Input
6
Sample Output
5

#include <iostream>
using namespace std;
int f[36]={0,0,1,1,2};
int fibonacci(int x,int i,int a,int b)
{
    int fibonacci;
    if (x==2||x==3) return 1;
    else if (x==1) return 0;
    else fibonacci=a+b;
    return fibonacci;
}

int main()
{
    int x,temp=0;
    cin>>x;
    for (int i=4;i<=x;i++)
    {
        int a=f[i-1],b=f[i-2];
        f[i]=fibonacci(x,i,a,b);
    }
    cout<<f[x];
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_41654438/article/details/81429043