斐波那契数列是一种非常有意思的数列,由 0 和 1 开始,之后的斐波那契系数就由之前的两数相加。用数学公式定义斐波那契数列则可以看成如下形式:
F0=0
F1=1
Fn=Fn-1+Fn-2
我们约定Fn表示斐波那契数列的第n项,你能知道斐波那契数列中的任何一项吗?
输入包括一行,包括一个数字N(0≤N≤50)。
输出包括一行,包括一个数字,为斐波那契数列的第N项的值。
样例1
输入:
7
输出:
13
/*
方法一:打表法
*/
#include<iostream>
using namespace std;
int a[55];
int main()
{
int i,x;
a[0]=0;
a[1]=1;
for(i=2;i<=50;i++)
{
a[i]=a[i-1]+a[i-2];
}
cin >> x;
cout << a[x];
return 0;
}
/*
方法二:递归法
*/
#include<iostream>
using namespace std;
int Fibonacci(int x)
{
if(x == 0)
{
return 0;
}
if(x == 1)
{
return 1;
}
return Fibonacci(x-1)+Fibonacci(x-2);
}
int main()
{
int x;
cin >> x;
cout << Fibonacci(x);
return 0;
}