hpilo

Chapter5_Arrays_Ex13

Dec 15th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.59 KB | None | 0 0
  1.  
  2. /*
  3.     =====================================================
  4.                    chapter 5: Arrays
  5.  
  6.       Ex13: snake matrix
  7.     =====================================================
  8. */
  9.  
  10. public class MyProgram {
  11.     public static void main(String[] args) {
  12.  
  13.         //variables
  14.  
  15.         // define the range of random number
  16.         final int MAX = 8;
  17.         final int MIN = 4;
  18.         int range = MAX - MIN + 1;
  19.  
  20.         int ROW=(int)(Math.random()*range)+MIN;   //row's range[4,8]
  21.         int COL=(int)(Math.random()*range)+MIN;  //col's range[4,8]
  22.  
  23.         int matrix[][]=new int[ROW][COL];
  24.         int number=1;
  25.         boolean toggle=true;    //toggle regardless col even or odd
  26.  
  27.         System.out.println("row="+ROW+" col="+COL);
  28.  
  29.         //init snake matrix
  30.         for (int col = COL - 1; col >= 0; col--) {
  31.             if (toggle) {
  32.                 for (int row = 0; row < ROW; row++) {   //start the snake at the top right
  33.                     matrix[row][col] = number;
  34.                     number++;
  35.                     toggle=false;
  36.                 }
  37.             } else {
  38.                 for (int row = ROW - 1; row >= 0; row--) {
  39.                     matrix[row][col] = number;
  40.                     number++;
  41.                     toggle=true;
  42.                 }
  43.             }
  44.         }
  45.  
  46.         //display snake matrix
  47.         for(int row=0;row<ROW;row++) {
  48.             for (int col = 0; col < COL; col++){
  49.                 System.out.print(matrix[row][col]);
  50.                 System.out.print("\t\t\t");
  51.             }
  52.             System.out.println();
  53.         }
  54.     }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment