我无法绕着"用棍子男人画楼梯"程序

Mon*_*ica 28 java for-loop

您可能以前在Java 1类中看到过它:这是一个问题,要求您编写一个绘制下图的程序:

在此输入图像描述

我必须使用常数.我不被允许使用除了for循环之外的任何东西print,和println.没有参数,没有数组.我知道如何用参数和数组做到这一点,幸运的是我.任何帮助表示赞赏!

这是我不完整的代码:

public class Stairs {
    public static final int LENGTH=5;

    public static void main(String[] args) {
        printStairs();
    }

    public static void printStairs() {
        for (int allStairs=1; allStairs<=15; allStairs++) {
            for (int spaces=1; spaces<=(-5*allStairs+30); spaces++) {
                System.out.print(" ");
            }
            for (int stair = 1; stair <= 5; stair++) {
                System.out.println("  o  *******");

            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Jon*_*uis 26

这听起来像是一个家庭作业问题,所以我不只是想给你答案,而是试着将其分解为步骤.想想你知道的事情:

1)每个火柴人都有这样的形状:

  o  ******
 /|\ *     
 / \ *     
Run Code Online (Sandbox Code Playgroud)

2)您可以使用以下代码打印出来:

System.out.println("  o  ******");
System.out.println(" /|\ *     ");
System.out.println(" / \ *     ");
Run Code Online (Sandbox Code Playgroud)

3)您可以使用循环打印多个:

for (int stair = 1; stair <= LENGTH; stair++) {
    System.out.println("  o  ******");
    System.out.println(" /|\ *     ");
    System.out.println(" / \ *     ");
}
Run Code Online (Sandbox Code Playgroud)

想想这会给你带来什么样的输出,以及需要改变什么.意识到每个火柴人需要缩进一定数量.弄清楚如何根据值来适当地缩进它们stair.

  • 谢谢!我不想让你给我答案,我其实想要了解它. (2认同)