-3

我有一个关于创建三角形或金字塔的外循环的问题,一般我们用 3 个“for”编码,第一个是行,第二个是空格,第三个是“*”,但是,有时我是对第一个是外循环感到困惑,例如:

          *
        * * *
      * * * * *

对于上面的金字塔,第一个循环应该是for(int i=0;i<=3;i++)or for(int i=0;i<=5;i++)

4

2 回答 2

1

你可以试试这个提示:-

for (int i = rows; i > x; i--) { ... }

对于每一行,您必须先打印一些空格,然后再打印星号。空格数应每行减少一个,星数应增加

使用完整代码更新:-

class Pyramid
{
    public static void main(String[] args) 
    {
         int x=11;
         int y=x/2; // spaces
         int z=1; // *`s

         for(int i=0;i<3;i++)
        {
             for(int j=0;j<y;j++)
            {
                 System.out.print(" ");
            }
            for(int k=0;k<z;k++)
            {
                System.out.print("*");
            }

            y=y-1;
            z=z+2;
            System.out.println();  //new line
        }

    }
}
于 2013-08-25T09:32:43.043 回答
0
class Pyramid
{
    public static void main(String[] args)
    {
         for(int j=1;j<=5;j+=2)  //for lines 
         {
              for(int i=1;i<=j;i++)  //for stars and spaces
              {
                  System.out.print("* ");
              }
              System.out.println();  //newline
         }
    }
}
于 2013-08-25T10:30:04.890 回答