LWeber89 Geschrieben 18. März 2009 Geschrieben 18. März 2009 Hi Leute die Aufgabe ist 2 arrays zu addieren und das dann in einem 3ten auszugeben. #include <stdio.h> #include <conio.h> #include <iostream.h> #include <vcl.h> void main(void) { int A[3][2]={{3,2},{4,5},{2,1}}; int B[2][2]={{1,7},{5,9}}; int C[3][2]; int i,k,j =0; for (i=0;i<3;i++) { for (j=0;j<2;j++) { for (k=0;k<2;k++) { C[j] += A[k] * B[k][j]; } } cout<<C[j]; } getch(); } ------------------------------------------------ was muss man nun noch dazu hacken? bzw wo ist der Fehler danke
Klotzkopp Geschrieben 18. März 2009 Geschrieben 18. März 2009 Der größte Fehler ist vermutlich, dass das Programm nicht zwei Arrays addiert, sondern zwei Matrizen multipliziert.
Micha82 Geschrieben 18. März 2009 Geschrieben 18. März 2009 Also: Um Arrays (Matrizen) addieren zu können müssen beide Arrays gleich groß sein... siehe Matrix (Mathematik) ? Wikipedia ... müsstest also zur addition sowas hier machen (ist in C schnell getippt ): #include <stdio.h> int main() { int A[3][2]={{3,2},{4,5},{2,1}}; int B[3][2]={{1,7},{5,9},{3,5}}; int C[3][2]; int i,j =0; for (i=0;i<3;i++) { for (j=0;j<2;j++) { C[j] = A[j] + B[j]; printf("%02d ",C[j]); } printf("\n"); } return 0; } das wäre eine Addition
da-beauty Geschrieben 21. März 2009 Geschrieben 21. März 2009 (bearbeitet) Nur ein Tipp: Die Zwei Matrizen müssen nicht beide gleich Größ sein!! Nur die Spalten bei der Ersten Matrize und die Zeilen bei der Zweiten Matrize müssen gleich sein. Der Code zum Berechnen lautet wie folgt: for(int x = 0; x < matrixA_line ; x++) { for(int y = 0; y < matrixB_column ; y++) { for(int z = 0; z < matrixB_line ; z++) { size_matrixC[x][y] += size_matrixA[x][z] * size_matrixB[z][y]; } } } Bearbeitet 21. März 2009 von da-beauty
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden