如何使用java中的三个嵌套for循环来处理带ux的倒金字塔?

如何使用java中的三个嵌套for循环来处理带ux的倒金字塔?,java,for-loop,nested,Java,For Loop,Nested,我在试图找出如何使用扫描仪创建具有三个嵌套for循环的金字塔时遇到困难 我必须做到这一点 Enter a number 6 1 2 3 4 5 6 - 1 2 3 4 5 - - 1 2 3 4 - - - 1 2 3 - - - - 1 2 - - - - - 1 我基本上已经试过了,我知道这是错误的,但我知道我必须做什么,我不知道如何写它 Scanner ent= new Scanner(System.in); System.out.println("Enter a numb

我在试图找出如何使用扫描仪创建具有三个嵌套for循环的金字塔时遇到困难

我必须做到这一点

Enter a number
6
1 2 3 4 5 6 

- 1 2 3 4 5 

- - 1 2 3 4

- - - 1 2 3

- - - - 1 2

- - - - - 1
我基本上已经试过了,我知道这是错误的,但我知道我必须做什么,我不知道如何写它

Scanner ent= new Scanner(System.in);
System.out.println("Enter a number");
int x= ent.nextInt();


for(int a = x; a >= 1; a--) {
    for(int c=1;c<=x;c++) {
        System.out.print("_");
        for(int b = 1; b <= a; b++) { 
            System.out.print(d + " "); 
        } 
    }
    System.out.println("");
}
Scanner ent=新扫描仪(System.in);
System.out.println(“输入一个数字”);
int x=ent.nextInt();
对于(int a=x;a>=1;a--){
对于(int c=1;c,这里有一种方法:

System.out.println("Enter a number");
int x = ent.nextInt();

for (int i=0; i < x; ++i) {
    for (int j=0; j < i; ++j) System.out.print("- ");
    for (int j=1; j <= (x-i); ++j) {
        if (j > 1) System.out.print(" ");
        System.out.print(j);
    }
    System.out.println();
}

1 2 3 4 5 6
- 1 2 3 4 5
- - 1 2 3 4
- - - 1 2 3
- - - - 1 2
- - - - - 1
System.out.println(“输入一个数字”);
int x=ent.nextInt();
对于(int i=0;i

逻辑是使用两个独立的内部循环,一个用于破折号,一个用于数字。破折号的循环从0运行到
i-1
,即外部循环之前的一个位置。然后,对于行的其余部分,我们打印数字,从1到
x-i

将此模式分成两部分

  • 冲刺
  • 从1到n的数字
  • 首先计算你需要打印这个图案的次数。这里是6次

        int n=in.nextInt();
        for(int i=1;i<=n;i++)
        {
    
        }
    
    因此,我引入了一个变量dashes=0,并增加每行的破折号

        int n=in.nextInt();     
        int dashes=0;
    
        for(int i=1;i<=n;i++)
        {
            for(int j=1; j<=dashes;j++)
                System.out.print("-");
            dashes++;
        }
    
    最后的代码是

        int n=in.nextInt();
    
        int dashes=0;
    
        for(int i=1;i<=n;i++)
        {
            for(int j=1; j<=dashes;j++)
                System.out.print("-");
    
            for(int k=1;k<=n-i+1;k++)
                System.out.print(k);
    
            // for next row - starts in new line
            System.out.println();
            dashes++;
        }
    
    int n=in.nextInt();
    int破折号=0;
    对于(int i=1;i
    
    ------------
    Row | Numbers (n-i+1)
    ------------
     1  |  123456 
     2  |  12345
     3  |  1234
     4  |  123
     5  |  12
     6  |  1
    
        int n=in.nextInt();
    
        int dashes=0;
    
        for(int i=1;i<=n;i++)
        {
            for(int j=1; j<=dashes;j++)
                System.out.print("-");
    
            for(int k=1;k<=n-i+1;k++)
                System.out.print(k);
    
            // for next row - starts in new line
            System.out.println();
            dashes++;
        }