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

如何修改Java代码实现指定格式的倒半金字塔输出?

问题描述

需要打印如下格式的倒半金字塔:

1111
222
33
4

当前使用的Java代码如下:

public class HW5 {
    //5.   Print Inverted Half Pyramid.
    public static void main(String[] args) {
        int n = 4;
        for (int i = n; i >= 1; i--) {
            for (int j = 1; j <= i; j++) {
                System.out.print(i);
            }
            System.out.println();
        }
    }
}

但上述代码的输出结果为:

4444
333
22
1

请问如何修改代码以得到所需的输出格式?

修改方案

问题核心是外层循环变量的使用逻辑:当前代码用递减的i直接打印,导致输出从4开始。只需调整打印的数字计算方式,让每行的数字从1递增即可。

方案一:修改打印的数字表达式

将System.out.print(i)改为System.out.print(n - i + 1),这样当i=4时计算得1,i=3时计算得2,以此匹配目标序列:

public class HW5 {
    //5.   Print Inverted Half Pyramid.
    public static void main(String[] args) {
        int n = 4;
        for (int i = n; i >= 1; i--) {
            for (int j = 1; j <= i; j++) {
                System.out.print(n - i + 1);
            }
            System.out.println();
        }
    }
}

方案二:调整外层循环逻辑

让外层循环i从1递增到4,同时控制每行打印的字符数为n - i + 1,直接用i作为打印数字:

public class HW5 {
    //5.   Print Inverted Half Pyramid.
    public static void main(String[] args) {
        int n = 4;
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j <= n - i + 1; j++) {
                System.out.print(i);
            }
            System.out.println();
        }
    }
}

两种方案都能输出目标格式的倒半金字塔。


内容的提问来源于stack exchange,提问作者Md. Fattah Al Fahim

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 08:01:20