Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

import java.util.Scanner; public class InvMatrix{ public static void main(String

ID: 3659125 • Letter: I

Question

import java.util.Scanner; public class InvMatrix{ public static void main(String[] args){ //Scanner input = new Scanner(System.in); //double[][] matrix = new double[3][3]; //matrix = readMatrix(matrix); System.out.println("a"); //inverse(matrix); //writeMatrix(matrix); } public static void readMatrix(double[][] a){ for(int i = 0; i < a.length; i++){ System.out.print("Enter row " + (i+1) + ": "); for(int j = 0; j < a[i].length; j++) a[i][j] = input.nextDouble(); } } public static void inverse(double[][] a){ double det = 1 / determinant(a); double[][] b = new double[3][3]; b[0][0] = det * (a[1][1]*a[2][2] - a[1][2]*a[2][1]); b[0][1] = det * (a[0][2]*a[2][1] - a[0][1]*a[2][2]); b[0][2] = det * (a[0][1]*a[1][2] - a[0][2]*a[1][1]); b[1][0] = det * (a[1][2]*a[2][0] - a[1][0]*a[2][2]); b[1][1] = det * (a[0][0]*a[2][2] - a[0][2]*a[2][0]); b[1][2] = det * (a[0][2]*a[1][0] - a[0][0]*a[1][2]); b[2][0] = det * (a[1][0]*a[2][1] - a[1][1]*a[2][0]); b[2][1] = det * (a[0][1]*a[2][0] - a[0][0]*a[2][0]); b[2][2] = det * (a[0][0]*a[1][1] - a[0][1]*a[1][0]); return b; } public static double determinant(double[][] a){ double result = 0; result = a[0][0] * a[1][1] * a[2][2] + a[2][0] * a[0][1] * a[1][2] + a[0][2] * a[1][0] * a[2][1] - a[0][2] * a[1][1] * a[2][0] - a[0][0] * a[1][2] * a[2][1] - a[2][2] * a[1][0] * a[0][1]; return result; } public static void writeMatrix(double[][] a){ a = inverse(matrix); System.out.println("The inverse is: "); for(int i = 0; i < a.length; i++){ for(int j = 0; j < a[i].length; j++) System.out.print(a[i][j] + " "); System.out.println(); } } }

Explanation / Answer

Sample Result: enter values for matix Enter the number of rows 3 Enter the number of cols 3 Matrix[0][0] = 1 Matrix[0][1] = 2 Matrix[0][2] = 3 Matrix[1][0] = 4 Matrix[1][1] = 5 Matrix[1][2] = 5 Matrix[2][0] = 6 Matrix[2][1] = 7 Matrix[2][2] = 8 det is-5.0 -25.0 -25.0 25.0 10.0 50.0 -35.0 10.0 -30.0 15.0 ******************************************************************************* import java.util.Scanner; public class InvMatrix { public static void main(String[] args) { InvMatrix invMatrix = new InvMatrix(); System.out.println("Enter values for matix"); double matrix[][] = invMatrix.readMatrix(); double inMatrix[][] = invMatrix.inverse(matrix); invMatrix.writeMatrix(inMatrix); } /** * This method populates the matrix with user input values * * @return double[][] */ public double[][] readMatrix() { Scanner scanner = new Scanner(System.in); System.out.println("Enter the number of rows"); int rows = scanner.nextInt(); System.out.println("Enter the number of cols"); int cols = scanner.nextInt(); double[][] A = new double[rows][cols]; for (int r = 0; r