Print the spiral order matrix as output for a given matrix of numbers.


import java.util.*;

 

public class Arrays {

   public static void main(String args[]) {

      Scanner sc = new Scanner(System.in);

      int n = sc.nextInt();

      int m = sc.nextInt();

 

      int matrix[][] = new int[n][m];

      for(int i=0; i

           for(int j=0; j

               matrix[i][j] = sc.nextInt();

           }

      }

 

      System.out.println("The Spiral Order Matrix is : ");

      int rowStart = 0;

      int rowEnd = n-1;

      int colStart = 0;

      int colEnd = m-1;

 

      //To print spiral order matrix

      while(rowStart <= rowEnd && colStart <= colEnd) {

          //1

          for(int col=colStart; col<=colEnd; col++) {

              System.out.print(matrix[rowStart][col] + " ");

          }

          rowStart++;

 

          //2

          for(int row=rowStart; row<=rowEnd; row++) {

              System.out.print(matrix[row][colEnd] +" ");

          }

          colEnd--;

 

          //3

          for(int col=colEnd; col>=colStart; col--) {

              System.out.print(matrix[rowEnd][col] + " ");

          }

          rowEnd--;

 

          //4

          for(int row=rowEnd; row>=rowStart; row--) {

              System.out.print(matrix[row][colStart] + " ");

          }

          colStart++;

 

          System.out.println();

      }

   }

}



Share to whatsapp

More Questions from Java Basic Codes Module 0

Write an infinite loop using do while condition.


View

Enter 3 numbers from the user & make a function to print their average.


View

For a given matrix of N x M, print its transpose in java.


View

Input a string from the user. Create a new string called ‘result’ in which you will replace the letter ‘e’ in the original string with letter ‘i’. 

Example : 

original = “eabcdef’ ; result = “iabcdif”

Original = “xyz” ; result = “xyz”


View

Print the spiral order matrix as output for a given matrix of numbers.


View

Write a function to calculate the product of 2 numbers.


View

Take an array of names as input from the user and print them on the screen.


View