递推是一种根据前面的数据来求出须要的答案的一种算法。通常用来求有规律的答案。比如说斐波那契数列就可以用递推来实现。斐波那契数列的性质是前两个数字的和等于后一个数字。因此斐波那契数列的递推式是:r[i]=r[i-1]+r[i-2]。
可以用来练习递推。
这道题是让你输入一个数字(n),输出第n个斐波那契数列(保留小数点后2位)。具体操作如下:
1.输入一个数,n
2.定义一个大小为n的数组
3.开始递推
4.输出数组最后一个位置(n-1位置)
以上就是求第n个斐波那契数列的具体操作。下面就是代码:
#include<vector>
#include<iomanip>
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
vector<double> f(n+1);
f[1]=1;
f[2]=1;
for(int i=3; i<=n; i++){
f[i]=f[i-1]+f[i-2];
}
cout<<fixed<<setprecision(2)<<f[n]<<endl;
return 0;
}
(个人喜欢用vector数组)