How to check if a matrix is an identity matrix (1 on the main diagonal and 0 elsewhere) in Java

1 Answer

0 votes
public class MyClass {
    public static void main(String args[]) {
        int m[][] = {     
                        {1, 0, 0},  
                        {0, 1, 0},  
                        {0, 0, 1}  
                    };  
          

        int rows = m.length;  
        int cols = m[0].length;  
        
        boolean flag = true;  

        if (rows != cols) {  
            System.out.println("Not a square matrix");  
        }  
        else {  
            for (int i = 0; i < rows; i++) {  
                for (int j = 0; j < cols; j++) {  
                    if (i == j && m[i][j] != 1) {  
                        flag = false;  
                        break;  
                    }  
                    if (i != j && m[i][j] != 0) {  
                        flag = false;  
                        break;  
                    }  
                }  
            }  
              
            if (flag)  
                System.out.println("Identity matrix");  
            else  
                System.out.println("Not an identity matrix");  
        }  
    }  
}


 
 
/*
run:
 
Identity matrix
 
*/

 



answered Aug 26, 2021 by avibootz
edited Aug 26, 2021 by avibootz
...