Java for loop display pattern 7

Question

We would like to use for loop the show the following pattern.

Pattern://from w  w w  .  j a  va 2 s .  c  o  m


                               1
                           1   2   1
                       1   2   4   2   1
                   1   2   4   8   4   2   1
               1   2   4   8  16   8   4   2   1
           1   2   4   8  16  32  16   8   4   2   1
       1   2   4   8  16  32  64  32  16   8   4   2   1
   1   2   4   8  16  32  64 128  64  32  16   8   4   2   1
public class Main {
  public static void main(String[] args) { 
    int startRight = 0, // Initialize decending numbers
       endSpace = 7;    // Initialize number of white space in row
    // Display number of rows and numbers in each row
    //your code here
  }
}


public class Main {
  public static void main(String[] args) { 
    int startRight = 0, // Initialize decending numbers
       endSpace = 7;    // Initialize number of white space in row
    // Display number of rows and numbers in each row
    for (int row = 1; row <= 128; row += row) {
      // Display white space
      for (int startSpace = 0; startSpace < endSpace; startSpace++) {
        System.out.print("    ");
      }
      // Display acending numbers
      for (int l = 1; l <= row; l += l) {
        System.out.printf("%4d", (l));
      }
      // Display decending numbers
      for (int r = startRight; r > 0 ; r /= 2 ) {
        System.out.printf("%4d", (r));  
      }
      System.out.println(); // End line
      endSpace--;         // Decrement endSpace
      startRight = row;     // Assign row to startRight
    }
  }
}



PreviousNext

Related