Programming Examples

Java program to rotation input matrix 90 degree and print


Write a  program  to  declare  a  square  matrix  A[  ][  ]  of  order  MxM  where  'M'  is  the  number  of  rows  and  the  number  of  columns,  such  that  M  must  be  greater  than  2  and    less  than 10.  Accept  the  value  of  M  as  user  input.  Display  an  appropriate  message  for    an  invalid  input.  Allow  the  user  to  input  integers   into   this   matrix.   Perform   the   following tasks:

(a) Display the original matrix.

(b) Rotate the matrix 90° clockwise as shown below:

Original matrix

 

1 2 3

4 5 6

7 8 9

 

Rotated matrix

7 4 1

8 5 2

9 6 3

 

(c) Find the sum of the elements of the four comers of the matrix.

Test your program with the sample data and some random data: Example 1

INPUT : M = 3

3 4 9

2 5 8

1 6 7

OUTPUT :

ORIGINAL MATRIX

3 4 9

2 5 8

1 6 7

MATRIX AFTER ROTATION

1 2 3

6 5 4

7 8 9

Sum of the corner elements = 20

Example 2

INPUT : M = 4

1 2 4 9

2 5 8 3

1 6 7 4

3 7 6 5

OUTPUT :

ORIGINAL MATRIX

1 2 4 9

2 5 8 3

1 6 7 4

3 7 6 5

MATRIX AFTER ROTATION
3 1 2 1
7 6 5 2
6 7 8 4
5 4 3 9
Sum of the corner elements = 18
Solution

import java.util.*;
class Rotate90
{
	public static void main(String arr[])
	{
		int matrix[][]=new int[10][10];
		int m,a,b;
		Scanner sc=new Scanner(System.in);
		System.out.println("Enter the Value of M : ");
		m=sc.nextInt();
		System.out.println("Enter "+(m*m)+" Elements for Matrix : ");
		for(a=0;a<m;a++)
		{
			for(b=0;b<m;b++)
			{
				matrix[a][b]=sc.nextInt();
			}
		}
		System.out.println("Original Matrix :");
		for(a=0;a<m;a++)
		{
			for(b=0;b<m;b++)
			{
				System.out.print(matrix[a][b]+"  ");
			}
			System.out.println();
		}


		// Rotate a Matrix anti clock wise 90 degree
		for (int x = 0; x < m / 2; x++) 
		{
 
			for (int y = x; y < m - x - 1; y++) 
			{
			int temp = matrix[x][y];
			matrix[x][y] = matrix[y][m - 1 - x];
			matrix[y][m - 1 - x]= matrix[m - 1 - x][m - 1 - y];
			matrix[m - 1 - x][m - 1 - y] = matrix[m - 1 - y][x];
			matrix[m - 1 - y][x] = temp;
			}
		}
		
		System.out.println("Matrix After Rotate 90 Degree:");
		for(a=0;a<m;a++)
		{
			for(b=0;b<m;b++)
			{
				System.out.print(matrix[a][b]+"  ");
			}
			System.out.println();
		}
	
	}
}
Output

CCC Online Test 2021 CCC Practice Test Hindi Python Programming Tutorials Best Computer Training Institute in Prayagraj (Allahabad) Best Java Training Institute in Prayagraj (Allahabad) Best Python Training Institute in Prayagraj (Allahabad) O Level Online Test in Hindi Bank SSC Railway TET UPTET Question Bank career counselling in allahabad Sarkari Naukari Notification Best Website and Software Company in Allahabad Sarkari Exam Quiz