// ===================================================================== || // Beispiel Name: Matmult || // BeispielNr.: 1040 || // Autor: Sanel Krupic || // MatrikelNr.: 0325454 || // ===================================================================== || import eprog.*; public class Matmult extends EprogIO { public static void main (String [] args) throws EprogException { int n=0; boolean nichtfehler=true, leseFehler=false; try { n=readInt (); // Zahl n (Dimension) einlesen }catch (Exception e) { println("?"); //Fals Fehler auftritt, soll "?" ausgegeben werden nichtfehler=false; } if (nichtfehler) //Sind die Datentypen bei allen Eingaben richtig, die eingegebenen Daten aber inhaltlich nicht //korrekt oder erfuellen nicht die Bedingungen (z.B. 0<n<8 ), so gibt das Program "FALSCHE EINGABE" aus if ( n>=8 || n<=0 ) { print ("FALSCHE EINGABE"); return; } int [][] eingabematrix1 = new int[n][n]; for (int i=0; i<n; i++) for (int k=0; k<n; k++) try { eingabematrix1[i][k] = readInt(); // Die Elemente der Matrix1 werden eingelesen } catch (EprogException e) { leseFehler=true; } int [][] eingabematrix2 = new int[n][n]; for (int i=0; i<n; i++) for (int k=0; k<n; k++) try { eingabematrix2[i][k] = readInt(); // Die Elemente der Matrix2 werden eingelesen } catch (EprogException e) { leseFehler=true; } if (leseFehler) { println("?"); return; } int [][] ergebnismatrix = new int[n][n]; for (int i=0; i<n; i++) for (int j=0; j<n; j++) { ergebnismatrix[i][j] = 0; for (int k=0; k<n; k++) // matrix1 und matrix2 werden multipliziert ergebnismatrix[i][j] = ergebnismatrix[i][j] + eingabematrix1[i][k] * eingabematrix2[k][j]; } for (int i=0; i<n; i++) { for (int k=0; k<n; k++) { print(ergebnismatrix[i][k] + " "); // Das Produkt der zwei multiplizierten Matrizen wird ausgegeben } println(""); } }//End main }//End class