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 the MD5 Algorithm
Java Program to Perform Polygon Containment Test
Hướng dẫn Java Design Pattern – Observer
Adding a Newline Character to a String in Java
Vấn đề Nhà sản xuất (Producer) – Người tiêu dùng (Consumer) và đồng bộ hóa các luồng trong Java
Java Program to Implement Rope
Spring Boot Tutorial – Bootstrap a Simple Application
Java Program to Implement the Program Used in grep/egrep/fgrep
The HttpMediaTypeNotAcceptableException in Spring MVC
Guide to Escaping Characters in Java RegExps
Java Program to Implement LinkedBlockingDeque API
How to Iterate Over a Stream With Indices
Java Program to Perform Partial Key Search in a K-D Tree
LinkedHashSet trong Java hoạt động như thế nào?
Java Program to Find Nearest Neighbor for Dynamic Data Set
Giới thiệu thư viện Apache Commons Chain
Guide to CopyOnWriteArrayList
New Features in Java 11
HttpClient 4 – Follow Redirects for POST
Spring Cloud AWS – RDS
Spring Boot: Customize Whitelabel Error Page
Tính đóng gói (Encapsulation) trong java
A Custom Data Binder in Spring MVC
Spring Boot - Service Components
Java Program to Implement Threaded Binary Tree
Guide to Java 8 groupingBy Collector
Queue và PriorityQueue trong Java
Hướng dẫn Java Design Pattern – Command
Java Convenience Factory Methods for Collections
Java Program to Perform String Matching Using String Library
Using Optional with Jackson
Introduction to Spring Boot CLI