000
07.06.2006, 10:08 Uhr
~fraggle2
Gast
|
Habe das Problem, das mir nach dem Ausführen bei der Ergebnisausgabe die Meldung bekomme: Die Anweisung in "0x0000000" verweist auf Speicher in "0x00000000". Der Vorgang "read" konnte nicht auf dem Speicher durchgeführt werden. Was muss ich ändern um dies zu beheben? Ich bin am verzweifeln!!
C++: |
#include <iostream.h> #include <math.h> void main() { int A[9][9],B[9][9],C[9][9]; int h1,h2,b1,b2; int a,b,c,d=0;
for(b=0;b<10;b++) { for(a=0;a<10;a++) { A[a][b]=0; B[a][b]=0; C[a][b]=0; } }
cout<<"Matrix 1 Hoehe :"; cin>>h1; cout<<"Matrix 2 Hoehe :"; cin>>h2; cout<<"Matrix 1 Breite :"; cin>>b1; cout<<"Matrix 2 Breite :"; cin>>b2; if((b1==h2) && h1<10 && h2<10 && b1<10 && b2<10 && h1>0 && h2>0 && b1>0 && b2>0) { cout<<endl<<endl; cout<<"Bitte Matrix 1 eingeben"<<endl<<endl; for(a=0;a<h1;a++) { for(b=0;b<b1;b++) { cin>>A[b][a]; cout<<" "; } cout<<endl; } cout<<endl<<endl; cout<<"Bitte Matrix 2 eingeben"<<endl<<endl; for(a=0;a<h2;a++) { for(b=0;b<b2;b++) { cin>>B[b][a]; cout<<" "; } cout<<endl; } for(b=0;b<h1;b++) { for(a=0;a<b2;a++) { for(c=0;c<b1;c++) { d = A[c][b]*B[a][c]; C[a][b]=C[a][b] + d; } } } cout<<endl<<endl<<endl; cout<<"Ihre berechnete Matrix:"<<endl<<endl; for(a=0;a<h1;a++) { for(b=0;b<b2;b++) { cout<<C[b][a]; cout<<" "; } cout<<endl; } } else cout<<"Fehler! Die Matrix kann nicht berechnet werden!"<<endl; }
|
|