1/1 + 1/2 + 1/3 + 1/4 + ... 在数学上称为调和级数。它是发散的,也就是说,只要加上足够多的项,就可以得到任意大的数字。但是,它发散的很慢。
前1项和达到 1.0
前4项和才超过 2.0
前83项的和才超过 5.0
那么,请你计算一下,要加多少项,才能使得和达到或超过 m 呢?
输出格式:
第n项达到或超过m。
输入样例:
10
输出样例:
第n项达到或超过m
12367
C++代码
#include <bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
int n,m;
double sum=0;
cin>>m;
for(n=0;sum<=m;)
{
n++;
sum=sum+(1.0/n);
}
cout<<n;
return 0;
}