Hallo,
ich würde gerne zwei Matritzen miteinander multiplizieren. Und zwar Matritze A der Größe 2x3 und Matritze B der Größe 3x2. Dabei muss der User selbst 12 random Zahlen eingeben. Hab zwar schon etwas programmiert, aber da ich mehrmal nachgerechnet habe, bin ich mir sicher, dass meine Lösung nicht stimmt. Nun würde ich gerne wissen wo mein Fehler liegt. Hier der Code:
Schonmal Danke für die Hilfe
ich würde gerne zwei Matritzen miteinander multiplizieren. Und zwar Matritze A der Größe 2x3 und Matritze B der Größe 3x2. Dabei muss der User selbst 12 random Zahlen eingeben. Hab zwar schon etwas programmiert, aber da ich mehrmal nachgerechnet habe, bin ich mir sicher, dass meine Lösung nicht stimmt. Nun würde ich gerne wissen wo mein Fehler liegt. Hier der Code:
Java:
public class Matrix {
static int[][] multiplyMatrix(int[][] a, int[][] b) {
int[][] c = new int[2][2];
c[0][0] = a[0][0]*b[0][0] + a[0][1]*b[1][0] + a[0][2]*b[2][0];
c[0][1] = a[0][0]*b[0][1] + a[0][1]*b[1][1] + a[0][2]+b[2][1];
c[1][0] = a[1][0]*b[0][0] + a[1][1]*b[1][0] + a[1][2]*b[2][0];
c[1][1] = a[1][0]*b[0][1] + a[1][1]*b[1][1] + a[1][2]*b[2][1];
return c;
}
public static void main(String[] args) {
try {
if (args.length != 12) {
System.out.println("You must use exactly 12 arguments of Type Integer!");
} else {
int[][] c = new int[2][2];
int[][] a = new int[2][3];
int[][] b = new int[3][2];
a[0][0] = Integer.parseInt(args[0]);
a[0][1] = Integer.parseInt(args[1]);
a[0][2] = Integer.parseInt(args[2]);
a[1][0] = Integer.parseInt(args[3]);
a[1][1] = Integer.parseInt(args[4]);
a[1][2] = Integer.parseInt(args[5]);
b[0][0] = Integer.parseInt(args[6]);
b[0][1] = Integer.parseInt(args[7]);
b[1][0] = Integer.parseInt(args[8]);
b[1][1] = Integer.parseInt(args[9]);
b[2][0] = Integer.parseInt(args[10]);
b[2][1] = Integer.parseInt(args[11]);
c = multiplyMatrix(a, b);
System.out.println("C00: " + c[0][0] + " C01: " + c[0][1]);
System.out.println("C10: " + c[1][0] + " C11: " + c[1][1]);
}
} catch (NumberFormatException nfEx) {
System.out.println("Wrong format! You may only use Int-numbers as arguments!");
}
}
}
Schonmal Danke für die Hilfe