Matrixmultiplikation mit EINdimensionalen Arrays
-
Hallo Forumsleute,
ich möchte eine Matrixmultiplikation mit eindimensionalen Arrays durchführen. Ein solches Array ist in meiner Klasse wie folgt zu verstehen: nxn-Matrix A:
A={A[1,1], ..., A[1,n],
A[2,1], ..., A[2,n],
.
.
.
A[1,1], ..., A[n,n]}
D.h. die Matrix wird zeilenweise aufgeschrieben.Meine Matrixmultiplikation, die leider noch ein falsches Ergebnis dafür liefert, sieht sinngemäß für Matrizen C=A*B folgendermaßen aus:
[cpp] for (int i=0; i<n; i++) { for (int j=0; j<n; j++) { for (int k=0; k<A.n; k++) { C[j+i*n] += A[k+i*n] * B[k+k*n+j]; } } } [/cpp]
Sieht jemand von euch, welchen Fehler ich mache?
Compilieren lässt es sich, es gibt nur leider bei Multiplikation mit einer Nullmatrix als letzten Eintrag einen ungleich Null.Danke schonmal!
-
Ok, hab den Fehler gefunden.
-
Und wie war denn dein Fehler??