Watch the video to learn more about java
https://www.youtube.com/watch?v=QZKcULOC4lg

This question was asked in the ISC 2019. It is a Object passing type of program. Here an object of the same class is passed as an argument in the function of the class

Design a class MatRev to reverse each element of a matrix.
Example:

ISC 2019  MatRev program

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): parameterized 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.

import java.util.Scanner;
class MatRev
{
    int arr[][];
    int m;
    int n;
    public MatRev(int mm, int nn)
    {
        m = mm;
        n = nn;
        arr = new int[m][n];
    }
    public void fillArray()
    {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter matrix elements:");
        for(int i = 0; i < m; i++)
        {
            for(int j = 0; j < n; j++)
            {
                arr[i][j] = sc.nextInt();
            }
        }
    }
    public int reverse(int num)
    {
        int rev;
        String r = "";
        String n = Integer.toString(num);
        int len = n.length();
        for(int i = len-1;i>=0;i--)
        {
            r+=n.charAt(i)+"";
        }
        rev = Integer.valueOf(r);
        return rev;
    }
    public void revMat(MatRev num)
    {
        for(int i = 0; i < m; i++)
        {
            for(int j = 0; j < n; j++)
            {
                this.arr[i][j] = reverse(num.arr[i][j]);
            }
        }
    }
   public void show()
    {
        for(int i = 0; i < m; i++)
        {
            for(int j = 0; j < n; j++)
            {
                System.out.print(arr[i][j] + " ");
            }
            System.out.println();
        }
    }
    public static void main(String args[])
    {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter number of rows: ");
        int x = sc.nextInt();
        System.out.print("Enter number of columns: ");
        int y = sc.nextInt();
        MatRev ob1 = new MatRev(x, y);
        MatRev ob2 = new MatRev(x, y);
        ob1.fillArray();
        ob2.revMat(ob1);
        System.out.println("Original Matrix");
        ob1.show();
        System.out.println("Matrix with reversed elements");
        ob2.show();
    }
}

Output:
Enter number of rows: 3
Enter number of columns: 3
Original Matrix
72 371 5
12 6 426
5 123 94
Matrix with reversed elements
27 173 5
21 6 624
5 321 49

For other number related programs check the given link
https://java4school.com/important-number-programs-icse-part-4

LEAVE A REPLY

Please enter your comment!
Please enter your name here