Java Pi计算器卡住了

31 浏览
0 Comments

Java Pi计算器卡住了

最近我用Java制作了一个派计算器,当我运行它时,它以极快的速度定义了派,但接着它卡在了3.141592653589787,只输出了这个数。如果有人能帮忙解决问题,这是我的代码。

public static void main(String[] args) {
    double a = 2;
    double b = 3;
    double c = 4;
    double z = 3;
    while (true) {
        double x = a*b*c;
        double y = 4/x;
        z+=y;
        a+=2;
        b+=2;
        c+=2;
        x = a*b*c;
        y = 4/x;
        z-=y;
        a+=2;
        b+=2;
        c+=2;
        System.out.println(z);
    }
}

admin 更改状态以发布 2023年5月21日
0
0 Comments

我更喜欢使用这段代码来实现矩形逼近PI的方法:

    int rectangleCount = 100;
    double width = 0.0;
    double pi = 0.0;
    double height = 0.0;
    double radius = 1.0;
    for (int i = 1; i <= rectangleCount; i++) {
        width = (double)i / rectangleCount;
        height = Math.sqrt(radius - width*width);
        pi = pi + (radius/rectangleCount) *height;
    }
    pi = pi + 1.0/rectangleCount; //first rectangle
    System.out.println(pi*4);

基本上,您选择的矩形数并不重要。第一个矩形始终具有相同的半径和宽度,而其余的矩形可以在for循环中计算。

0