【问题描述】
输入2个正整数m和n(m≥1,n≤10000),输出m到n之间所有的Fibonacci数Fibonacci数列(第一项起):1,1,2,3,5,8,13,21…
【输入形式】
从键盘输入2个整数m和n,以空格分隔。
【输出形式】
输出m到n之间所有的Fibonacci 数,以空格分隔。
【样例输入1】
20 100
【样例输出1】
21 34 55 89
【样例输入2】
50 300
【样例输出2】
55 89 144 233
#include<iostream>
using namespace std
;
int Fibonacci(int x
);
int main()
{
int m
,n
,x
=1;
cin
>>m
>>n
;
do
{
if((Fibonacci(x
)>=m
)&&(Fibonacci(x
)<=n
))
{
cout
<<Fibonacci(x
)<<' ';
}
x
=x
+1;
}while(Fibonacci(x
)<=n
);
return 0;
}
int Fibonacci(int x
)
{
int t
;
if(x
==1||x
==2) t
=1;
else t
=Fibonacci(x
-1)+Fibonacci(x
-2);
return t
;
}