1422 - C语言-分数数列
有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。
Input
N
Output
数列前N项和
Examples
Input
10
Output
16.48
Solution C
int main(int argc, char* argv[]) { int n,i; double sum,f[100]; while(~scanf("%d",&n)) { f[0]=1;f[1]=2; sum=0; for(i=1;i<=n;i++) { if(i>1) f[i]=f[i-2]+f[i-1]; sum+=f[i]/f[i-1]; } printf("%.2lf\n",sum); } return 0; }
Solution C++
#include<iostream> #include<cstdio> using namespace std; int main() { int n; cin>>n; double fz=2,fm=1,sum=0; for (int i=1; i<=n; i++) { sum+=fz/fm; double t=fz; fz+=fm; fm=t; } printf("%.2lf\n",sum); return 0; }