当前位置:   article > 正文

蓝桥杯 第五届C组 Java 第二题_2015年蓝桥杯javac组第二题

2015年蓝桥杯javac组第二题

1/1 + 1/2 + 1/3 + 1/4 + … 在数学上称为调和级数。
它是发散的,也就是说,只要加上足够多的项,就可以得到任意大的数字。
但是,它发散的很慢:
前1项和达到 1.0
前4项和才超过 2.0
前83项的和才超过 5.0
那么,请你计算一下,要加多少项,才能使得和达到或超过 15.0 呢?
请填写这个整数。
注意:只需要填写一个整数,不要填写任何多余的内容。比如说明文字。
这个答案是:1835421
前1835420项的和是14.99999983
前1835421项的和是15.00000038

public class Main {
public static void main(String[] args) {
int a=0;
double i=1.0,j=1.0;
double sum=0;
while(sum<15.0){
sum=sum+i/j;
j++;
a++;
}
System.out.println(a);
}
}

也可以使用加for循环的

public class Main {
public static void main(String[] args) {
double sum = 0;
long i = 1;
for (i = 1; i <= 100000000; i++) {
sum = sum + 1.0 / i;
if (sum >= 15.0) {
break;
}
}
System.out.println(i);
}
}

完毕 go

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/73642
推荐阅读
相关标签
  

闽ICP备14008679号