九年义务教育漏网之鱼@ 2022-09-18 01:30 采纳率: 33.3%
浏览 24
已结题

运行结果出了问题但我找不到问题所在请看一下

运行结果出了问题,但我找不到我的问题所在,请看一下,非常感谢
运行结果

img

img

  • 写回答

1条回答 默认 最新

  • 一束尘光 2022-09-18 08:24
    关注

    for循环中的初始条件,可以设置为第1项的值4/3,你这里定义的s相当于最终要求出的PI,条件判断应该是某一项(item)的值,而不是s(PI)

    public static void main(String[] args) {
        double x, y, pi, n = 1;
        double item;
    
        for (item = 2, x = 4, y = 3, pi = 2; item >= 1 + Math.pow(10, -6); n++, x = Math.pow(2 * n, 2), y = (2 * n - 1) * (2 * n + 1)) {
            item = x / y;
            pi *= item;
        }
    
        System.out.println(n);
        System.out.println(pi);
        System.out.println("运算结束");
     }
    

    输出结果如下,跳出循环的边界值越小,最终结果越精确

    502.0
    3.140026946105019
    运算结束
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月26日
  • 已采纳回答 9月18日
  • 创建了问题 9月18日

悬赏问题

  • ¥100 华为手机私有App后台保活
  • ¥20 有谁能看看我coe文件到底哪儿有问题吗?
  • ¥20 我的这个coe文件到底哪儿出问题了
  • ¥15 matlab使用自定义函数时一直报错输入参数过多
  • ¥15 设计一个温度闭环控制系统
  • ¥100 rtmpose姿态评估
  • ¥15 java 通过反射找路径下的类,打包后就找不到
  • ¥15 通联支付网上收银统一下单接口
  • ¥15 angular有偿编写,
  • ¥15 centos7系统下abinit安装时make出错