java完成1/1!+1/2!……的前二项的和

img


哪个可能可以帮我看一下去对不对
刚开始学习

常规思路:

public class Test {

    public static void main(String[] args) {
        double result = 0;
        int count = 20;
        for (int i = 1; i <= count; i++) {
            double divisor = 1;
            for (int j = 1; j <= i; j++) {
                divisor = divisor * j;
            }
            result += 1 / divisor;
        }
        System.out.println(result);
    }
}

你的代码语法上还有很多问题,编译就会有有几处报错。思路看起来是对的,但是逻辑没有把握好
参考一下别人的代码

public class Example3_6 {
    public static void main(String[] args) {
        double sum = 0,item = 1;
        int i = 1,n = 20;
        while(i<=n) {
            sum = sum+item;
            i = i+1;
            item = item*(1.0/i);
        }
        System.out.println("sum="+sum);
    }
 
}
————————————————
版权声明:本文为CSDN博主「jiehaoxiang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40956679/article/details/80714515
public static void main(String[] args) {
        double sum = 0;
        double item = 1;
        for (int i = 1; i <= 20; i++) {
            item *= (1.0 / i);    // 累乘
            sum += item;    // 累加
        }
        System.out.println(sum);

    }
————————————————
版权声明:本文为CSDN博主「星星梦工厂」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_50818915/article/details/113184013

整体思路是对的

img


还有注意代码规范,我这里提供一份你的思路修改完之后的,你参考

img