This is the java program to check whether the matrix is invertible or not. The square matrix is invertible if and only if its determinant is non zero.
Here is the source code of the Java Program to Check if a Matrix is Invertible. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a simple program to check whether the matrix is invertible or not. //The complexity of the algorithm is O(n^3) import java.util.*; public class Invertible_Matrix { public double determinant(double A[][],int N) { double det=0; if(N == 1) { det = A[0][0]; } else if (N == 2) { det = A[0][0]*A[1][1] - A[1][0]*A[0][1]; } else { det=0; for(int j1=0;j1<N;j1++) { double[][] m = new double[N-1][]; for(int k=0;k<(N-1);k++) { m[k] = new double[N-1]; } for(int i=1;i<N;i++) { int j2=0; for(int j=0;j<N;j++) { if(j == j1) continue; m[i-1][j2] = A[i][j]; j2++; } } det += Math.pow(-1.0,1.0+j1+1.0)* A[0][j1] * determinant(m,N-1); } } return det; } public static void main(String args[]) { Scanner input = new Scanner(System.in); System.out.println("Enter the order of the square matrix"); int n = input.nextInt(); System.out.println("Enter the elements of the square matrix"); double[][] mat = new double[n][n]; for(int i=0; i<n; i++) { for(int j=0; j<n; j++) { mat[i][j] = input.nextDouble(); } } Invertible_Matrix I = new Invertible_Matrix(); if(I.determinant(mat, n) == 0) { System.out.println("Matrix is not Invertible, as the determinant is : "+I.determinant(mat, n)); } else { System.out.println("Matrix is Invertible, as the determinant is : "+I.determinant(mat, n)); } input.close(); } }
Output:
$ javac Invertible_Matrix.java $ java Invertible_matrix Enter the order of the square matrix: 3 Enter the elements of the square matrix: 1 2 3 4 5 6 7 8 9 Matrix is not Invertible, as the determinant is : 0.0
Related posts:
Java Program to Implement Network Flow Problem
Java Program to Implement Gaussian Elimination Algorithm
Automatic Property Expansion with Spring Boot
Creating Docker Images with Spring Boot
Supplier trong Java 8
File Upload with Spring MVC
Java Program to Represent Graph Using Incidence List
Map to String Conversion in Java
Spring Cloud AWS – RDS
HttpClient 4 Cookbook
Quản lý bộ nhớ trong Java với Heap Space vs Stack
Java 8 Streams peek() API
Lập trình đa luồng với Callable và Future trong Java
ETL with Spring Cloud Data Flow
Java Program to Implement Stack
Java Program to Implement Solovay Strassen Primality Test Algorithm
Java Program to Generate All Subsets of a Given Set in the Lexico Graphic Order
Query Entities by Dates and Times with Spring Data JPA
Spring Boot - Apache Kafka
Spring Boot - Tomcat Deployment
Java Program to Perform Matrix Multiplication
Java Program to Implement the Binary Counting Method to Generate Subsets of a Set
Spring Boot - Tomcat Port Number
Guide to Escaping Characters in Java RegExps
Hướng dẫn Java Design Pattern – DAO
Tạo số và chuỗi ngẫu nhiên trong Java
Java Program to Implement RoleList API
Spring Boot - Unit Test Cases
Different Ways to Capture Java Heap Dumps
Java Program to Implement an Algorithm to Find the Global min Cut in a Graph
Check If a File or Directory Exists in Java
Spring Security Authentication Provider