codevs1007 级数求和

题目描述 Description

已知:Sn= 1+1/2+1/3+…+1/n。显然对于任意一个整数K,当n足够大的时候,Sn大于K。
  现给出一个整数K(1<=k<=15),要求计算出一个最小的n;使得Sn>K。

输入描述 Input Description

键盘输入 k

输出描述 Output Description

屏幕输出 n

样例输入 Sample Input

1

样例输出 Sample Output

2

 
#include<bits/stdc++.h>
using namespace std;
double k;

int main(){
	cin>>k;
	int i;
	for(i=1;;i++){
		if(k<0)break;
		k-=(double)1/i;
	}
	cout<<i-1<<endl;
	return 0;
}
原文地址:https://www.cnblogs.com/codetogether/p/7066797.html