Java Program to Compute Determinant of a Matrix

This is the Java Program to Find the Modulus of a Matrix.Problem Description

Given a square matrix, find and print the modulus(determinant) of the matrix.
Example:
Matrix:
1 2 3
4 5 6
7 8 9

Output:
Modulus = 0Problem Solution

The algorithm for calculating modulus of 3*3 matrix is
x=(matrix[0][0] * (matrix[1][1] * matrix[2][2] – matrix[1][2] * matrix[2][1]));
y=(matrix[0][1] * (matrix[1][0] * matrix[2][2] – matrix[1][2] * matrix[2][0]));
z=(matrix[0][2] * (matrix[1][0] * matrix[2][1] – matrix[1][1] * matrix[2][0]));

determinant= x – y + z;Program/Source Code

Here is the source code of the Java Program to Find the Modulus of a Matrix. The program is successfully compiled and tested using IDE IntelliJ Idea in Windows 7. The program output is also shown below.

//Java Program to Find the Modulus of a 
 
import java.io.BufferedReader;
import java.io.InputStreamReader;
 
public class ModulusOfAMatrix {
    // Function to read array elements and calculate the determinant
    public static void main(String[] args) {
        BufferedReader br= new BufferedReader(new InputStreamReader(System.in));
        int order=3;
        int[][] matrix=new int[3][3];
        System.out.println("Enter the elements of 3x3 matrix");
        int i,j;
        for(i=0;i<matrix.length;i++){
            for(j=0;j<matrix[i].length;j++){
                try{
                    matrix[i][j]=Integer.parseInt(br.readLine());
                }
                catch(Exception e){
                    System.out.println("An error occured. Please retry");
                    return;
                }
            }
        }
        int determinant,x,y,z;
        x=(matrix[0][0] * (matrix[1][1] * matrix[2][2]
                       - matrix[1][2] * matrix[2][1]));
        y=(matrix[0][1] * (matrix[1][0] * matrix[2][2]
                       - matrix[1][2] * matrix[2][0]));
        z=(matrix[0][2] * (matrix[1][0] * matrix[2][1]
                       - matrix[1][1] * matrix[2][0]));
        determinant= x - y + z;
        System.out.println("The modulus of the given matrix is "+ determinant);
 
    }
}

Program Explanation

1. In function main(), a matrix is entered.
2. Then in variables x, y and z various coefficients are calculated.
3. Finally, the statement (determinant= x – y + z), calculates the determinant and it is displayed.

Time Complexity: O(1).Runtime Test Cases

Case 1 (Simple Test Case):
 
Enter the elements of 3x3 matrix
1
2
3
4
5
6
7
8
9
The modulus of the given matrix is 0
 
Case 2 (Simple Test Case - another example):
 
Enter the elements of 3x3 matrix
12
43
5
23
56
7
45
2
65
The modulus of the given matrix is -19598

Related posts:

Allow user:password in URL
Introduction to PCollections
Java Program to Remove the Edges in a Given Cyclic Graph such that its Linear Extension can be Found
Java Program to Generate All Possible Combinations Out of a, b, c, d, e
Introduction to Java 8 Streams
Fixing 401s with CORS Preflights and Spring Security
Vòng lặp for, while, do-while trong Java
Comparing getPath(), getAbsolutePath(), and getCanonicalPath() in Java
How to Convert List to Map in Java
XML Serialization and Deserialization with Jackson
Spring Security and OpenID Connect
CharSequence vs. String in Java
Java Program to do a Depth First Search/Traversal on a graph non-recursively
Hướng dẫn sử dụng Printing Service trong Java
Java Program to Check Cycle in a Graph using Graph traversal
Java Program to Implement Bubble Sort
Serve Static Resources with Spring
Biểu thức Lambda trong Java 8 – Lambda Expressions
Java Program to Check if any Graph is Possible to be Constructed for a Given Degree Sequence
Compact Strings in Java 9
Java Program to Implement LinkedTransferQueue API
Removing all duplicates from a List in Java
Introduction to Spring Data MongoDB
What is a POJO Class?
Java Program to Describe the Representation of Graph using Adjacency Matrix
Java Program to Perform Complex Number Multiplication
Custom HTTP Header with the HttpClient
Java Program to Use the Bellman-Ford Algorithm to Find the Shortest Path
Wrapper Classes in Java
Configuring a DataSource Programmatically in Spring Boot
Exploring the Spring 5 WebFlux URL Matching
Spring Boot Change Context Path