java - 尝试仅使用嵌套的 for 循环(Java)打印一个边上有线条的递增数字金字塔

标签 java loops for-loop nested-loops

我是 Java 的初学者。 我正在解决嵌套的for循环问题......然后出现了这个问题。经过研究和重试后,我无法理解它。它必须使用嵌套的 for 循环来解决。

这就是问题希望我的代码输出的内容:

-----1-----
----333----
---55555---
--7777777--
-999999999-

这和我得到的一样接近:

---------1
-------333
-----55555
---7777777
-999999999

这是我的代码:

for (int line = 1; line <= 9; line+=2) {
    for (int j = 1; j <= (-1 * line + 10); j++) {
        System.out.print("-");
    }
    for (int k = 1; k <= line; k++) {
        System.out.print(line);
    }
    System.out.println();
}

最佳答案

你只需要添加另一个for循环来在右侧打印-。 同样现在第一个和第三个循环将执行一半的次数

for (int line = 1; line <= 9; line+=2) {
    for (int j = 0; j <= (-1 * line + 10) / 2; j++) {
        System.out.print("-");
    }
    for (int k = 1; k <= line; k++) {
        System.out.print(line);
    }
    for (int j = 0; j <= (-1 * line + 10) / 2; j++) {
        System.out.print("-");
    }
    System.out.println();
}

关于java - 尝试仅使用嵌套的 for 循环(Java)打印一个边上有线条的递增数字金字塔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62823687/

相关文章:

java - Android程序连接错误

java - 带 HashMap 的PreparedStatement

Python 在使用 zip() 遍历列表时不修改值,而是在使用 enumerate() 时修改值

c - C 中的 "Circular"for 循环

actionscript-3 - 闪光枪模拟

java - 在浏览器历史记录系统中乘以 for 循环

java - 为什么一类相同的包不能访问另一类?

java - 元素之间 Apache Tapestry 5.3.8 中的 Css 文件

java - 终止或中断 java 8 流循环

JavaScript。如何创建一个循环来创建对象,然后将这些对象插入数组中?