【蓝桥杯】【调和级数】

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bear_huangzhen/article/details/78674359

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

分析
此题利用Rational分数类做,会出现数据太长导致异常问题。
直接用double来处理此题。

源码

public static void main(String[] args) {

        double i = 0.0;
        double sum = 0.0;
        while (sum<15) {
            i += 1.0;
            double x = 1/i;
            sum += x;
        }

        System.out.println(i);

    }

结果
1835421

猜你喜欢

转载自blog.csdn.net/bear_huangzhen/article/details/78674359
今日推荐