Question
Design a class MatRev to reverse each element of a matrix.
72 371 5
12 6 426
5 123 94
Becomes
27 173 5
21 6 624
5 321 49
Some of the members of the class are given below:
Class name:MatRev
Data members/instance variables:
arr[ ][ ]:to store integer elements
m:to store the number of rows
n:to store the number of columns
Member functions/methods:
MatRev(int mm, int nn):parameterised constructor to initialise the data members m = mm and n = nn
void fillarray( ):to enter elements in the array
int reverse(int x): returns the reverse of the number x
void revMat( MatRev P):reverses each element of the array of the parameterized object and stores it in the array of the current object
void show( ):displays the array elements in matrix form
Define the class MatRev giving details of the constructor( ), void fillarray( ), int reverse(int), void revMat(MatRev) and void show( ). Define the main( ) function to create objects and call the functions accordingly to enable the task.
Share code with your friends
Share on whatsapp
Share on facebook
Share on twitter
Share on telegram
Code
import java.util.Scanner;
public class MatRev
{
int arr[][],m,n;
Scanner sc=new Scanner(System.in);
MatRev(int mm,int nn)
{
m=mm;
n=nn;
arr=new int[m][n];
}
void fillarray()
{
System.out.println("ENTER ELEMENTS IN ARRAY");
for(int i=0;i< m;i++)
{
for(int j=0 ;j< n;j++)
{
arr[i][j]=sc.nextInt();
}
}
}
int reverse(int x)
{
int rev=0, rem=0;
while(x!=0)
{
rem=x% 10;
rev=rev*10 + rem;
x=x/ 10;
}
return rev;
}
void revMat(MatRev P)
{
for(int i=0;i< m;i++)
{
for(int j=0 ;j< n;j++)
{
arr[i][j]=reverse(P.arr[i][j]);
}
}
}
void show()
{
for(int i=0;i< m;i++)
{
for(int j=0 ;j< n;j++)
{
System.out.print(arr[i][j] + "\t");
}
System.out.println();
}
}
public static void main()
{
Scanner sc1=new Scanner(System.in);
System.out.println("ENTER NUMBER OF ROWS OF MATRIX");
int row=sc1.nextInt();
System.out.println("ENTER NUMBER OF COLUMNS OF MATRIX");
int col=sc1.nextInt();
MatRev ob1 = new MatRev(row,col);
MatRev ob2=new MatRev(row,col);
ob1.fillarray();
System.out.println("Original Array");
ob1.show();
ob2.revMat(ob1);
System.out.println(" Reverse array");
ob2.show();
}
}