TDM Geschrieben 2. Dezember 2005 Geschrieben 2. Dezember 2005 hallo, Ich hatte Langeweile und dachte mir ich schreib mir ein C-Programm, welches 2 Matrizen multipliziert. Da ich das nie in der Schule hatte, hab ich bissl gegooglet und folgendes gefunden: Zur I. Zeile einer Matrix A wird das k-fache der J. Zeile addiert. Das Ergebnis ist die Matrix A'. Irgentwie versteh ich das nicht - meinen die es nun so: A { a11,a12,a13,a14 a21,a22,a23,a24 a31,a32,a33,a34 a41,a42,a43,a44 } * B { b11,b12,b13,b14 b21,b22,b23,b24 b31,b32,b33,b34 b41,b42,b43,b44 } = C { a11*b11,a12*b21,a13*b31,a14*b41 a21*b12,a22*b22,a23*b32,a24*b42 a31*b13,a32*b23,a33*b33,a34*b43 a41*b14,a42*b24,a43*b34,a44*b44 } oder bin ich total auf dem falschen weg und die meinen es anders ? Edit: hmm, irgentwie funktioniert das Einrücken ne wirklich... Zitieren
geloescht_Newlukai Geschrieben 2. Dezember 2005 Geschrieben 2. Dezember 2005 Da es mir zu umständlich zu beschreiben ist, hier ein Beispiel. Zitieren
Bubble Geschrieben 2. Dezember 2005 Geschrieben 2. Dezember 2005 Da ich das nie in der Schule hatte Ungewöhnlich, zumindest die Rechenregeln sollten dran gewesen sein. Seien A und B Matrizen. Die Spaltenzahl (m) von A muss gleich der Zeilenzahl (auch m) von B sein. a(i,j) bzw. b(i,j) bezeichnen den Eintrag in der i-ten Zeile und j-ten Spalte einer der Matrizen. A*B=C Der Eintrag c(i,j) in der Ergebnismatrix C berechnet sich dann mit c(i,j)=Summe(von k=1 bis k=m) über a(i,k)*b(k,j) Beachte: A*B != B*A Beispiel: A = [1, 2, 3; 4, 5, 6] % 2 Zeilen, 3 Spalten B = [1, 2; 3, 4; 5, 6] % 3 Zeilen, 2 Spalten c(1,1) = 1*1 + 2*3 + 3*5 = 22 c(1,2) = 1*2 + 2*4 + 3*6 = 28 c(2,1) = 4*1 + 5*3 + 6*5 = 49 c(2,2) = 4*2 + 5*4 + 6*6 = 64 Also zusammengefasst: C = [22, 28; 49, 64] Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.