时间限制
1S
内存限制
1000Kb
问题描述
有一分数序列:
2/1,3/2,5/3,8/5,13/8,21/13,......An/Bn
A1=2,A2=3,An=An-1+An-2;
B1=1,B2=2,Bn=Bn-1+Bn-2。
求出这个数列的前n(2<=n<=30)项之和。
输入说明
一个整数n
输出说明
输出一个实数表示数列前n项之和,结果保留2位小数(四舍五入)
输入样例
2
输出样例
3.50
double f(int n) //定义函数 { if (n==1) { return 2.000; } else if (n==2) { return 3.000; } else if (n>2) { return f(n-1)+f(n-2); } } double g(int n) //定义函数 { if (n==1) { return 1.000; } else if (n==2) { return 2.000; } else if (n>2) { return g(n-1)+g(n-2); } } #includeint main() { int n; double sum=0.000; scanf ("%d", &n); for (int i=1;i<=n;i++) //对各项求和 { sum=sum+f(i)/g(i); } printf ("%.2lf",sum); return 0; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)