题目链接:http://acm.ocrosoft.com/problem.php?cid=1227&pid=19
题目描述
观察下面的式子,并找出其中的规律,计算前 n 项和。
2/1+3/2+5/3+8/5+ 13/8+ 21/13…….
输入
Input
每行输入 1 个整数 n ( 0 ≤ n ≤ 100 ),当 n=0 时,表示输入结束,不做运算。
输出
Output
每个测试实例的输出占一行,结果保留 3 位小数。
样例输入
1 3 13 0
样例输出
2.000 5.167 21.334
后一个数的分母是前一个数的分子,后一个数的分子是前一个数的分子+分母。
#include<bits/stdc++.h>
using namespace std;
int n;
int main(){
while(cin>>n){
if(n==0){
break;
}
double i=1.0,j=2.0;
double sum=0.0;
for(int k=1;k<=n;k++){
sum+=j/i;
j+=i;
i=j-i;
}
printf("%.3lf\n",sum);
}
return 0;
}
cpp
运行

