You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需数组实现行数值求和:幂次表Java程序修改问询

解决方法:边计算边累加,无需数组

嘿,你完全不用纠结数组的事儿!咱们可以在处理每一行(也就是每个x值)的时候,直接维护一个累加变量,计算每个幂次的同时就把它加到总和里,最后一行输出完幂次后,直接把总和打出来就行。这样代码既简洁又高效,完全不用额外存数组。

先补全并修改你的代码:

public class PowerTable { // 类名首字母大写更符合Java规范哦
    public static void main(String[] args) {
        final int NMAX = 5;
        final double XMAX = 10;

        // 打印表头(幂次n)
        for(int n = 1; n <= NMAX; n++) {
            System.out.printf("%10d", n);
        }
        // 表头最后加个"Sum"列,让表格更清晰
        System.out.printf("%15s%n", "Sum");

        // 遍历每个x值,打印每行的幂次和总和
        for(double x = 1; x <= XMAX; x++) {
            double rowSum = 0; // 每行的总和,初始化为0

            // 计算并打印x的1到NMAX次幂
            for(int n = 1; n <= NMAX; n++) {
                double power = Math.pow(x, n);
                System.out.printf("%10.2f", power); // 保留两位小数提升可读性
                rowSum += power; // 把当前幂次值直接加到总和里
            }

            // 打印当前行的总和
            System.out.printf("%15.2f%n", rowSum);
        }
    }
}

关键改动说明:

  • 新增rowSum变量:在每个x的循环开始时初始化,每次计算完x^n就把值累加到这个变量里,全程不用额外存储所有幂次值。
  • 表头补充"Sum"列:让表格的结构更清晰,读者一眼就能看懂最后一列的含义。
  • 格式化输出:用%.2f保留两位小数,避免输出过长的小数位,让表格更整齐。
  • 逻辑连贯:计算、打印、求和一步到位,完全不用绕弯子,代码可读性拉满。

这样改完之后,既满足了每行输出总和的需求,又完全不用搞复杂的数组存储,逻辑直观又简洁😉

内容的提问来源于stack exchange,提问作者Steve

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 02:33:34