第4题:简单斐波那契
契数列是一种非常有意思的数列,由 0 和 1 开始,之后的斐波那契系数就由之前的两数相加。
用数学公式定义斐波那契数列则可以看成如下形式: F0=0 F1=1 Fn=Fn-1+Fn-2
我们约定Fn表示斐波那契数列的第n项,你能知道斐波那契数量中的任何一项吗?
输入包括一行,包括一个数字N(0≤N≤50)。
输出包括一行,包括一个数字,为斐波那契数列的第N项的值。
完成代码
#include<iostream>
using namespace std;
int fib(int i){
if(i==0)
return 0;
if(i==1||i==2)
return 1;
else
return fib(i-1)+fib(i-2);
}
int main()
{
int i;
cin>>i;
if(i<0||i>50)
cout<<"输入数字必须在0~50之间!"<<endl;
else
cout<<fib(i)<<endl;
return 0;
}
打代码真的好难啊T_T 单单一句return fib(i-1)+fib(i-2) 我就消化了好久,不过做出来递归还是蛮有成就感的!