aufgabe richtig?



  • Das ist die Aufgabe:
    Füllen Sie zwei quadratische Matrizen A und B mit 5 Zeilen bzw. Spalten mit ganzen Zufallszahlen von 1 bis 10.

    a. Zeigen Sie A und B auf dem Bildschirm.

    mein quelltext:

    void main(void)
    {
    int i,j;

    int a [5][5];

    int b [5][5];

    for (i=0;i<10;++i);
    {
    a[i][j] = s_rand ()%11;
    print_f("%d",&a[i][j]);
    }
    for (j=0;j<10;++j);
    {
    b[i][j] = s_rand ()%11;
    print_f("%4d",&b[i][j]);
    }

    system("PAUSE");
    }

    Fehler? Verbesserungen evtl.?



  • Wenn 5 du Zeilen und Spalten hast, warum hast du dann in der for Schleife nur eine Laufvariable, die von 0 bis 9 lauft?

    Es muss int main lauten.



  • for (i=0;i<5;++i);

    ?? so richtig ??



  • Maria1789 schrieb:

    for (i=0;i<5;++i);

    ?? so richtig ??

    Wie viele Felder hat eine 5x5 Matrix? Werden die so alle initialisiert? Gib deinen Laufvariablen sprechende Namen (statt i und j), dann siehst du, was du tun musst.



  • na 25 wenn ich mich recht entsinne? 😛

    hmm... stehe grad auf dem schlauch...

    müsste es so aussehen:

    for (i=0;i<25;++i);

    ???

    hmm



  • Maria1789 schrieb:

    müsste es so aussehen:

    for (i=0;i<25;++i);

    ???

    Nein



  • int i,j;

    int a [5][5];

    int b [5][5];

    for (i=0;i<5;++i);

    for (j=0;j<5;++j);

    so erzeuge ich doch eine matrix a mit 5*5 feldern und eine Matrix b mit 5*5 feldern oder nicht?

    nun bei der for schleife wird doch bei i und j von 0 bis 5 hochgezählt und ich habe alle felder (25) gefüllt?

    nun müsste ich es nur noch hinbekommen das die felder mit zufallszahlen von 1 bis 10 gefüllt werden, mit der rand funktion.

    a[i][j] = s_rand ()%11;
    printf("%d",a[i][j]);

    so wird doch in der matrix a für jedem werden eine zufallszahl zugewiesen oder nicht?



  • Maria1789 schrieb:

    so wird doch in der matrix a für jedem werden eine zufallszahl zugewiesen oder nicht?

    Rein theoretisch schon.
    Anders als in deinem ersten Post, brauchst du jedoch pro Matrix zwei verschachtelte Schleifen, eine mit i und eine mit j und im Rumpf von j kommt die Zuweisung.
    Und es heißt printf, nicht print_f.



  • Achte bei den Schleifen auf die ;

    Ist komisch, dass derselbe Fehler ( print_f("%d",&a[i][j]); )auch bei aufgabe1 auftaucht.


Anmelden zum Antworten