Interpretation Code calcTable

Achim334

Neues Mitglied
Hi liebe Community , ich verfolge das Forum schon seit längerem und habe auch schon öfters überlegt ob ich meine Fragen bezüglich Java reinposten soll habs dann aber gelassen weil ich dachte , dass die fragen zu dämlich seien. Diesmal gehts aber net anders , ich check den code einfach net ...

Java:
void run( )
{
      double A[][] = new double[2][3];
      for (int i=0; i<2; i++)
      for (int j=0; j<3; j++)
      A[i][j] = i + j;
     calcTable(A, 2, 3);
     for (int i=0; i<2; i++)
     for (int j=0; j<3; j++)
     System.out.println(A[i][j] + " ");
     calcTable2(A[0][0], A[0][1],
     A[0][2], A[1][0], A[1][0], A[1][0], 2, 3);
     for (int i=0; i<2; i++)
     for (int j=0; j<3; j++)
     System.out.println(A[i][j] + " ");
}
// -----------------------------------------------------------
void calcTable(double field[][], int N, int M)
{
      for (int i=0; i<N; i++)
      for (int j=0; j<M; j++)
      field[i][j] *= 2.;
}
// -----------------------------------------------------------
void calcTable2(double fld1, double fld2, double fld3, double fld4,
double fld5, double fld6, int N, int M)
      {
      fld1 *= 2.;
      fld2 *= 2.;
      fld3 *= 2.;
      fld4 *= 2.;
      fld5 *= 2.;
      fld6 *= 2.;
     }
}


Ich soll jetzt bestimmen was das Programmfragment ausgibt.
Was ich noch versteh ist , dass wir ein 2 x 3 Feld anlegen was wohl in Form einer Tabelle ausgegeben werden soll aber das "A[j] = i + j;" versteh ich zum beispiel net und was er mit "field[j] *= 2.;" bezwecken will versteh ich leider auch net. Wär superlieb wenn mir jemand helfen könnte , ich bin einfach so eine Niete was Java angeht.

Vielen Dank
Achim
 
Zuletzt bearbeitet von einem Moderator:
A[j] = i + j;
im Feld A, Position i,j wird i+j gesetzt,
das heißt, zeile 3, spalte 4 bekommt den wert 7

field[j] *= 2.;
feld an der stelle[j] wird mit 2 multiplziert und wieder gesetzt, das ist ein kurzschreibeweise für:
field[j] = field[j]*2.;
 
aja calcTable2 macht gar nix, da Java CallByValue ist und die werte beim Aufrufer nicht geändert werden nur weil du sie im aufrufenden mit irgendwas multizlizierst...

...multiplizerst ist ein komplziertes wort...
 
vielen dank schonmal 😉 , also seh ich das richtig das mit dem ersten system.out.println die Gesamtwerteanzahl die aktuelle zeile und Spalte angegeben wird oder?
Und die 2. Tabelle wird gar nicht dargestellt oder wie?
 

Zurück
Oben