Java 嵌套循环背后的逻辑

Java 嵌套循环背后的逻辑,java,logic,nested-loops,Java,Logic,Nested Loops,我很难理解产生如下输出的嵌套循环程序背后的逻辑: Pattern C 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8

我很难理解产生如下输出的嵌套循环程序背后的逻辑:

Pattern C
                   1 
                 1 2 
               1 2 3 
             1 2 3 4 
           1 2 3 4 5 
         1 2 3 4 5 6 
       1 2 3 4 5 6 7 
     1 2 3 4 5 6 7 8 
   1 2 3 4 5 6 7 8 9 
 1 2 3 4 5 6 7 8 9 10 
下面是代码:

void patternC(){
    System.out.println("\nPattern C");
    for(int m = 1; m <= a; m++){    //<-- a is for the desired number of lines

        //spasi
        for(int n = m; n <= a-m+a  ; n++){
            System.out.print(" ");
        }

        for(int o = 1; o <= m ; o++){
            System.out.print(o + " ");
        }

        System.out.println();
    }
}
void patternC(){
System.out.println(“\n模式C”);

对于(int m=1;m理解嵌套循环的基础知识的最好方法是在纸上执行代码。只需遵循每一步并跟踪每个变量,你就应该在纸上有相同的输出,并了解循环的作用。

如果你使用IDE::在调试模式下运行你的方法来理解下面是一个关于如何使用EclipseIDE在调试模式下运行程序的链接

如果您正在使用其他IDE,请在谷歌上搜索教程。否则请使用@Titulum的解决方案。

void patter(){
void patter(){

  for(int m = 1; m <= a; m++) // a is desired no to be selected by user. 
  {           
    for(int n = 1; n <= a-m  ; n++){
        System.out.print(" ");
    }

    for(int o = 1; o <= m ; o++){
        System.out.print(o);
    }

    System.out.println();
  }
}

对于(int m=1;m要理解,请尝试打印
m
n
o
的值,而不是在调试器中执行代码并观察计数器和限制。