1087:级数求和
【题目描述】
已知:Sn=1+12+13+…+1n。显然对于任意一个整数k,当n足够大的时候,Sn大于k。现给出一个整数k(1≤k≤15),要求计算出一个最小的n,使得Sn>k。
【输入】
一个整数k。
【输出】
一个整数n。
【输入样例】
1
【输出样例】
2
#include<iostream>
using namespace std;
int main()
{ int k;
cin>>k;
double Sn=0;
int i=0;
while(Sn<=k)
{i++;
Sn+=1.0/i; //注意double型中1.0和1的区别
}
cout<<i<<endl;
return 0;
}