2174 - 计算分数序列的和(I)
有一个分数序列:
,求出这个数列的前N项之和.
Input
有多行数据,每行数据只有一个正整数N(N<=100),结果保留两位小数。
Output
输出N所对应的分数序列之和,每个输出占一行。
Examples
Input
5 8
Output
7.28 10.72
Solution C
#include<stdio.h> int main(){ int N; while(scanf("%d",&N)!=EOF){ double z=2.0,m=1.0,t; int i; double sum=0.0; for(i=1;i<=N;i++){ sum=sum+z/m; t=z; z=z+1; m=t; } printf("%.2f\n",sum); } return 0; }
Solution C++
#include <iostream> #include <iomanip> using namespace std; int main() { int n; double sum; while (cin>>n) { sum = 0; for (int i=1; i<=n; i++) { sum += 1 + (double)1/i; } cout <<setprecision(2) <<std::fixed<< sum<<endl; } return 0; }