题目描述
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。
n<=39
思路:没什么思路,斐波那契数列:前两个数字是0、1,;之后所有的数字都是前两个数字的和;
注意:第0次为0,第1次为1;
输入: 10
输入出:
前 10 个斐波那契数是: 1 1 2 3 5 8 13 21 34 55
#include <iostream>
using namespace std;
class Solution{
public:
int Fibonacci(int n){
int num1=0,num2=1,re=0;
if(n==0){
cout << 0 << endl;
return 0;
}
if(n==1){
cout << 1 << endl;
return 1;
}
cout << " 前 " << n << " 个斐波那契数是: ";
cout << num2;
for (int i = 0; i < n-1; ++i) {
re =(num1+num2);
num1 = num2;
num2 = re;
cout << " " << re;
}
return re;
}
};
int main(){
Solution test;
// 从第47个开始会大于int值表示范围
test.Fibonacci(10);
return 0;
}