1/1 + 1/2 + 1/3 + 1/4 + … 在数学上称为调和级数。
它是发散的,也就是说,只要加上足够多的项,就可以得到任意大的数字。
但是,它发散的很慢:
前1项和达到 1.0
前4项和才超过 2.0
前83项的和才超过 5.0
那么,请你计算一下,要加多少项,才能使得和达到或超过 15.0 呢?
请填写这个整数。
==================
心得:
一开始想到精度损失->bigdecmial或者BigInteger,后面发现运行太久了,一直没等到结果,遂百度…结果,热心网友清一色的double操作令我无颜以对
//1835422
public class Main{
public static void main(String[] args) {
int i =1;
double sum =0;
while(true) {
if(sum >=15) break;
sum +=1.0/i;
i ++;
}
System.out.println(i);
}
}