请编程计算,要经过多少次加减法运算才能得到圆周率?

公式为:PI=4/1-4/3+4/5-4/7+4/9-4/11+4/13-4/15+4/17
圆周率在 3.1415926 和3.1415927 之间
要经过多少次加减法运算*

我的代码无法跳出循环?

public class OutPi {
    public static void main(String[] args) {       
       double pi=4;
        int n=2;
        int k=1;
        while(pi<=3.1415926||pi>=3.1415927) {
            pi=pi-k*4/(2*n-1);
            n++;
            k*=-1;
        }
        System.out.println("需要计算:"+n);
     }
 }

我的代码无法跳出循环???

阅读 1.7k
1 个回答

问题出在k*4/(2*n-1);

while(pi<=3.1415926||pi>=3.1415927) {
    pi=pi-k*4/(2*n-1);
    n++;
    k*=-1;
    System.out.println("n: " + n);
    System.out.println("pi: " + pi);
}

你可以打印下,n pi的值。

int k=1;改成double k=1;就可以了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题