制作金字塔

时间:2012-10-24 10:57:05

标签: java

尝试在这里制作一个金字塔,但我是java的新手并且有点卡住了。

我想要制作的金字塔图有三个参数:一个显示金字塔应该有多少行,一个选择应该使用的符号,另一个显示峰值是否应该下降。

金字塔使用了这些方法:5,x和false。

这应该打印在这个金字塔上:

    x
   x x
  x x x
 x x x x
x x x x x

任何了解解决方案的人?

我尝试用一​​些谷歌搜索来制作金字塔,但我只得到这个输出: X XX XXX XXXX XXXXX

而不是错误的部分决定峰值是否应该下降。

2 个答案:

答案 0 :(得分:1)

这个例外背后的想法是试图使用循环。在这里,一个想法是使用具有模数运算符%的单个循环。但是,更明确的解决方案是使用两个嵌套循环。您可以分别以反向或顺序循环,而不是金字塔底部或按钮。

private void draw(int n, char symb, boolean top) {
      for (line i = 1; line <= n; ++line) {
          for (int star = 1; star <= line; ++star) {
              System.out.print(symb);
          }
          System.out.println();
      }
}

但是这会显示出来:

*
**
***
****
*****

我将在此停止让您完成该方法。我会让你添加空格,以便第一颗顶部的恒星位于中心,下面的两颗恒星位于中心位置。等等。我会让你训练如何反转打印(即底部在顶部)

答案 1 :(得分:0)

你需要玩空格

这是示例代码

    int lines=5;
    int lineno=1;
    while(lines>0)
    {
        //System.out.println("in loop");
    for(int i=lines;i>0;i--)//initial number of lines
    {
        System.out.print(" ");
    }
    for(int i=0;i<lineno;i++)
    System.out.print("x ");
    System.out.println();
    lineno++;
    lines--;
    }