- Java Programs - Advanced
- Java Programs - Home
- Pernicious Number Program
- Check Matrix Column Sum Program
- Flipgram (Heterogram) Program
- Circular Queue Program
- Flight Passenger Inheritance Program
- Goldbach Number Program
- Shift Matrix Rows Up Program
- Pangram String Program
- Later Date Program
- Symmetric Matrix Program
- Cell Phone Keypad Program
- Unique Digit Integer Program
- Max & Min Elements in Matrix Program
- Anagram Strings Program
- Mask String Program Specimen
- Mix Array Program Specimen
- LCM using Recursion Program Specimen
- Recycle Dequeue Program Specimen
- Library Compute Inheritance Program Specimen
- Linked List & Binary Tree Question Specimen
- Decimal to Hexadecimal Program
- Insertion Sort Program
- Lowest & Highest ASCII Value Program
- Card Game Stack Program
- Employee Salary Overtime Inheritance Program
- Binary Tree 2024 Questions
- Hamming Number Program
- Doubly Markov Matrix Program
- Snowball String Program
- Future Date Program
- Lucky Number Program
- Bar Graph of Vowels & Consonants Program
- Vampire Number Program
- Rotate Matrix by 270 Degree Anticlockwise Program
- Keyword Cipher Program
- Increasing, Decreasing & Bouncy Number Program
- Fill Matrix with Characters Program
- Decode Encoded Text Program
- Project Submission Date Program
- Sort Matrix Boundary Elements Program
- Insert Word in a Sentence Program
- Composite Magic Number Program
- Mirror Image of a Matrix Program
- Common Words in a Paragraph Program
- Dudeney Number Recursive Program
- Matrix Transpose Program
- Sort Words Alphabetically Program
- DeQueue Data Structure Program
- Demand Supply Inheritance Program
- Linked List & Binary Tree Question
- Pronic Number in Java using Recursion
- Unique Word Program
- No Repeated Alphabets Program
- Calculate Series Program
- Reverse Number using Recursion Program
- Item Taxable Inheritance Program
- Stack Data Structure Program
- Evil Number Program
- Merge Two Arrays Program
- Remove Repeated Alphabets Program
- Rack Stack Data Structure Program
- Stock Sales Inheritance Program
- Date and Month Program
- Binary Search using Recursion Program
- Mix Two Words Program
- Circular Queue Program
- Data Interface Program
- Prime Adam Number Program
- Octal to Decimal Conversion Program
- Arrange Words Length-wise Program
- Armstrong Number Program
- Reverse Matrix Elements Program
- Rearrange Vowels & Consonants Program
- Record & Highest Inheritance Program
- Diary Class Queue Program
- Linked List and Binary Tree Program
- Generate Date Program
- Array Format Program
- Generate Palindrome Words
- Perfect Number Program on Recursion
- Checking for Equal Matrices
- Words Beginning with Capital Letter
- Number Series Inheritance Program
- Register Stack Program
- Goldbach Number Program
- Sorting Two-Dimensional Matrix Program
- Vertical Banner Program
- Palindrome using Recursion Program
- Adder Program
- Swap Sort Program
- Product Sales Inheritance Program
- Queue Program on Array
- Cartons Program
- Quiz Program
- Caesar Cipher Program
- Disarium Number Recursive Program
- Shift Matrix Shuffle Program
- ConsChange Program
- Bank Account Inheritance Program
- Bookshelf Stack Program
- Circular Prime Program
- Sort Non-boundary Matrix Elements Program
- Words Beginning and Ending with Vowels Program
- Admission Recursive Binary Search Program
- Merger Class Concatenation Program
- String Frequency Program
- WordPile Stack Program
- Plane Circle Inheritance Program
- Smallest Integer Program
- Rotate Matrix 90 Degrees Program
- Vowels and Consonants Per Word Program
- Merging Sorted Arrays Program
- Series Sum Program
- Fibonacci Strings Program
- Stock Purchase Inheritance Program
- Array to Stack Program
- Composite Magic Program
- Symmetric Matrix Program
- Deleting Word from String Program
- Emirp Number Program
- Exchange Alphabets Program
- Matrix Difference Program
- Perimeter Area Inheritance Program
- Dequeue Queue Program
- ISBN Code Program
- Mirror Image Matrix Program
- Palindrome Words Program
- Combine Array Program
- Vowel Word Program
- Happy Number Program
- Link Queue Program
- Detail Bill Inheritance Program
- Prime Palindrome Program
- Arrange Words Alphabetically Program
- Sort Matrix Elements Program
- Frequency of “And” and “An” Program
- Decimal to Octal Conversion Program
- Pseudo Arithmetic Sequence Program
- Record Rank Inheritance Program
- Stack Program Storing Names
- Number to Words Conversion Program
- Magic Number Program
- Special Number Program
- Triangular Number Program
Java Programs - Advanced
![]() Share with a Friend |
Shift Matrix Rows Up Program - Java Program
Write a program to declare a matrix A[][] of order (M × N) where ‘M’ is the number of rows and ‘N’ is the number of columns such that both M and N must be greater than 2 and less than 10. Allow the user to input integers into this matrix. Display appropriate error message for an invalid input.
Perform the following tasks on the matrix:
(a) Display the input matrix.
(b) Shift each row one step upwards so the first row becomes the last row, 2nd row will be the 1st row and so on.
(c) Display the rotated matrix along with the highest element and its location in the matrix.
Test your program for the following data and some random data:
Example 1
INPUT:
M = 3
N = 4
Enter elements in the matrix:
|
100 |
90 |
87 |
76 |
|
200 |
500 |
167 |
998 |
|
77 |
567 |
89 |
254 |
OUTPUT:
FORMED MATRIX AFTER ROTATING:
|
200 |
500 |
167 |
998 |
|
77 |
567 |
89 |
254 |
|
100 |
90 |
87 |
76 |
Highest element: 998 (Row: 0 and Column: 3)
Example 2
INPUT:
M = 4
N = 3
Enter elements in the matrix:
|
54 |
120 |
187 |
|
78 |
55 |
289 |
|
134 |
67 |
89 |
|
63 |
341 |
122 |
OUTPUT:
FORMED MATRIX AFTER ROTATING:
|
78 |
55 |
289 |
|
134 |
67 |
89 |
|
63 |
341 |
122 |
|
54 |
120 |
187 |
Highest element: 341 (Row: 2 and Column: 1)
Example 3
INPUT:
M = 2
N = 3
OUTPUT: SIZE IS OUT OF RANGE. INVALID ENTRY.
import java.util.Scanner; class ShiftRows{ public static void main(String[] args){ Scanner in = new Scanner(System.in); System.out.print("M = "); int m = Integer.parseInt(in.nextLine()); System.out.print("N = "); int n = Integer.parseInt(in.nextLine()); if(m < 3 || m > 9 || n < 3 || n > 9){ System.out.println("SIZE IS OUT OF RANGE. INVALID ENTRY."); return; } int mat[][] = new int[m][n]; int r = 0; int c = 0; System.out.println("ENTER ELEMENTS IN THE MATRIX:"); for(int i = 0; i < m; i++){ for(int j = 0; j < n; j++){ mat[i][j] = Integer.parseInt(in.nextLine()); } } System.out.println("ORIGINAL MATRIX:"); display(mat); int a[] = new int[n]; for(int i = 0; i < n; i++) a[i] = mat[0][i]; for(int i = 1; i < m; i++){ for(int j = 0; j < n; j++){ mat[i - 1][j] = mat[i][j]; } } for(int i = 0; i < n; i++) mat[m - 1][i] = a[i]; System.out.println("FORMED MATRIX AFTER ROTATING:"); display(mat); for(int i = 0; i < m; i++){ for(int j = 0; j < n; j++){ if(mat[i][j] > mat[r][c]){ r = i; c = j; } } } System.out.print("HIGHEST ELEMENT: " + mat[r][c]); System.out.println(" (Row: " + r + " and Column: " + c + ")"); } public static void display(int mat[][]){ for(int i = 0; i < mat.length; i++){ for(int j = 0; j < mat[0].length; j++){ System.out.print(mat[i][j] + "\t"); } System.out.println(); } } }
Output
OUTPUT 1: M = 4 N = 3 ENTER ELEMENTS IN THE MATRIX: 100 90 87 76 200 500 167 998 77 567 89 254 ORIGINAL MATRIX: 100 90 87 76 200 500 167 998 77 567 89 254 FORMED MATRIX AFTER ROTATING: 76 200 500 167 998 77 567 89 254 100 90 87 HIGHEST ELEMENT: 998 (Row: 1 and Column: 1) OUTPUT 2: M = 4 N = 3 ENTER ELEMENTS IN THE MATRIX: 54 120 187 78 55 289 134 67 89 63 341 122 ORIGINAL MATRIX: 54 120 187 78 55 289 134 67 89 63 341 122 FORMED MATRIX AFTER ROTATING: 78 55 289 134 67 89 63 341 122 54 120 187 HIGHEST ELEMENT: 341 (Row: 2 and Column: 1) OUTPUT 3: M = 2 N = 3 SIZE IS OUT OF RANGE. INVALID ENTRY.
