Matrizenaddition < Softwaretechnik+Pro < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 16:51 Mo 23.01.2012 | Autor: | Sunny22 |
Aufgabe | Erzeugen Sie zwei Matrizen mit z Zeilen und s Spalten (z, s <= 20). Geben Sie zulässige Werte für s und z ein.
Die ganzzahligen Werte sollen zufällig bestimmt werden.
Geben Sie die beiden Matrizen, ihre Summe und ihre Differenz aus.
geg.: z (Anzahl Zeilen)
s (Anzahl Spalten)
Matrix 1: mij = rand() % 20 (Werte zwischen 0 und 19)
Matrix 2: mij = rand() % 20 + 30 (Werte zwischen 30 und 49)
ges.: Summe und Differenz der Matrizen
Lsg.: Felder vereinbaren,
Matrizen mit geschachtelter for-Schleife erzeugen und anzeigen,
Summe und Differenz der Matrizen berechnen und anzeigen |
Hey,
Ich hoffe ihr könnt mir helfen.
erstmal mein Lösungsansatz:
#include <iostream>
using namespace std;
#include <ctime> // wegen Zufallszahlen
const int NMAX = 20; // max Groesse der Felder
int main()
{
int matrix1[NMAX][NMAX];
int matrix2[NMAX][NMAX];
srand(time(0));
cout << "Matrix 1: " << endl;
for (int i=0; i < NMAX; i++) {
for (int j=0; j < NMAX; j++)
cout << matrix1[i][j] << " ";
cout << endl;
}
for (int k=0; k<NMAX;k++) {
for (int l=0; l<NMAX;l++)
cout<< matrix2[k][l] << " ";
cout << endl;
}
system("PAUSE");
return 0;
}
Das ganze passiert mit Programmierung in C++.
Jetzt fehlt im Endeffekt noch, dass die Elemente zufällig ausgewählt werden. Also:
matrix2[k][l]=rand()%20+ 30
bzw matrix1[i][j]=rand()%20
aber wenn ich das dazwischen schreibe wird der Fehler angezeigt, dass das l Matrix 2 bzw j in Matrix 1 nicht definiert werden kann.
außerdem klappt es nicht dass mir matrizen angezeigt werden, es sieht immernoch so aus wie Vektoren..
Ich hoffe dass ihr mir helfen könnt. wäre Super!
Danke schonmal im Vorraus!
Liebe Grüße! :)
|
|
|
|
Hallo!
Du zeigst nich, wo du die Zeilen mit den Zufallszahlen untergebracht hast, aber ich kann mir das Problem denken:
Du solltest ganz dringend nach JEDER FOR-Schleife mit geschweiften Klammern arbeiten. Ohne gilt die Schleife ja nur für den nächsten durch ein ';' beendeten Befehl.
So, wie dein Programm da steht, sollte es genau das machen, was man erwartet. Fügst du jetzt noch deine Zufallszahlen-Zeilen ein, bekommst du Probleme mit den inneren FOR-Schleifen!
Zu guter letzt dient das auch noch der Übersicht.
|
|
|
|