Hi ich soll Eine gegebene Matrix 15 mal potenzieren.
M^1=M // M^2 = M*M^1 // M^3 = M*M^2 // M^4=M*M^3..... M^15=M*M^14.
Die kodierung für die Multiplikation hab ich schon nur ich komm einfach nich drauf wie ich die 4x4 Matrix 15 mal in der kodierung potenzieren und ausgeben soll. Ich hab grad erst angefangen mit java und hab noch einige Lücken.
Hier noch die Matrix die gegeben ist : 0 1 0 0
0 0 1 0
0 0 0 1
-1 1 -1 3
Code:
import java.util.Scanner;
class MatrixPotenz {
public static void main(String args[]) {
int m, n, p, q, sum = 0, c, d, k;
// Eingabe der Zeilen und Spalten der ersten Matrix
Scanner in = new Scanner(System.in);
System.out.println("Geben Sie Bitte die Anzahl der Zeilen und Spalten der ersten Matrix ein");
m = in.nextInt();
n = in.nextInt();
int first[][] = new int[m][n];
// Erste Matrix
System.out.println("Geben Sie die Elemente der ersten Matrix ein");
for ( c = 0 ; c < m ; c++ )
for ( d = 0 ; d < n ; d++ )
first[c][d] = in.nextInt();
// Eingabe der Zeilen und Spalten der zweiten Matrix
System.out.println("Geben Sie die Anzahl der Zeilen und Spalten der zweiten Matrix ein,");
p = in.nextInt();
q = in.nextInt();
// Falls die Berechnung unter umständen nicht möglich sein sollte, Meldung !
if ( n != p )
System.out.println("Matrizen mit eingegebenen Zahlen können nicht miteinander multipliziert werden.");
else
{
int second[][] = new int[p][q];
int multiply[][] = new int[m][q];
// Erbeute Eingabe falls es nicht Möglich sein sollte / Berechnung im Anschluss
System.out.println("Geben Sie die Elemente der zweiten Matrix ein");
for ( c = 0 ; c < p ; c++ )
for ( d = 0 ; d < q ; d++ )
second[c][d] = in.nextInt();
for ( c = 0 ; c < m ; c++ )
{
for ( d = 0 ; d < q ; d++ )
{
for ( k = 0 ; k < p ; k++ )
{
sum = sum + first[c][k]*second[k][d];
}
multiply[c][d] = sum;
sum = 0;
Math.pow(1,2);
}
}
// Ausgabe der Endmatrix
System.out.println("Produkt der eingegebenen Matrizen:");
for ( c = 0 ; c < m ; c++ )
{
for ( d = 0 ; d < q ; d++ )
System.out.print(multiply[c][d]+"\t");
System.out.print("\n");
}
}
}
}