Hallo liebe Java Freunde.
Schlage mich seit 2 Tagen mit einem einzigen Code herum.
Ich kann irgendwie keinen Zusammenhang zwischen der verschachtelten FOR-Schleife und der Berechnung "temp" finden bzw. verstehe ich die Logik in diesem Fall garnicht.
Die Schleife bekommt als Endwert für i und j den Wert "7".
Bis dahin ist alles O.K.
Nun kommt der Teil, wo temp=(j+1-1)%4 berechnet wird.
Ich verstehe nicht, wieso "-1" und dann noch "%4" berechnet wird. Wenn außerdem die Schleifen den Wert "i" und "j" immer um 1 erhöhen, dann müsste doch das Ergebnis welches an die Berechnung übergeben wird in der Art wie (2+2-1)%4 und beim nächsten Durchlauf "(3+3-1) % 4" usw. berechnet werden. Wie kommt es dann dazu, das die Zeichenkette beim compilen die Reihenfolge 1230123 ect trotzdem ausgibt? :noe:
Ich kann leider nicht nachvollziehen, was die verschachtelte FOR-Schleife mit dieser Formel genau tut
Leute bin völlig verzweifelt, komme keinen Ticken voran Ich wäre euch selbst für die winzigste Hilfe sehr Dankbar ;(
Hier der Code:
Als Ergebnis erhalte ich folgendes:
1230123
2301230
3012301
0123012
1230123
2301230
3012301
P.S. Das Ergebnis ist schon richtig so, nur hab ich wie gesagt den Zusammenspiel der FOR Schleife mit der Berechnung unter temp nicht verstanden
Ich hoffe ihr könnt mir weiterhelfen und danke im Vorraus.
liebe Grüße
Schlage mich seit 2 Tagen mit einem einzigen Code herum.
Ich kann irgendwie keinen Zusammenhang zwischen der verschachtelten FOR-Schleife und der Berechnung "temp" finden bzw. verstehe ich die Logik in diesem Fall garnicht.
Die Schleife bekommt als Endwert für i und j den Wert "7".
Bis dahin ist alles O.K.
Nun kommt der Teil, wo temp=(j+1-1)%4 berechnet wird.
Ich verstehe nicht, wieso "-1" und dann noch "%4" berechnet wird. Wenn außerdem die Schleifen den Wert "i" und "j" immer um 1 erhöhen, dann müsste doch das Ergebnis welches an die Berechnung übergeben wird in der Art wie (2+2-1)%4 und beim nächsten Durchlauf "(3+3-1) % 4" usw. berechnet werden. Wie kommt es dann dazu, das die Zeichenkette beim compilen die Reihenfolge 1230123 ect trotzdem ausgibt? :noe:
Ich kann leider nicht nachvollziehen, was die verschachtelte FOR-Schleife mit dieser Formel genau tut
Leute bin völlig verzweifelt, komme keinen Ticken voran Ich wäre euch selbst für die winzigste Hilfe sehr Dankbar ;(
Hier der Code:
Java:
public class tester2 {
public static String quadrat(int laenge){
// Zeilen abwechselnd mit den Werten "1 2..." eintragen
String figur = ""; // Rückgabewert mit Leerstring initialisieren
int temp = 0; // temporäre Variable, rechenschritte werden hierauf ausgeführt
for(int i=1;i<=laenge;i++){ // Zeilenindex
for(int j=1;j<=laenge;j++)// Spaltenindex
{
temp = (j+i-1)%4;
figur += temp;
}
figur += "\n"; // neue Zeile beginnt
}
return figur;
}
public static void main(String[] args){
// Demo-Quadrat in Größe 7x7 ausgeben
System.out.println(quadrat(7));
}
}
Als Ergebnis erhalte ich folgendes:
1230123
2301230
3012301
0123012
1230123
2301230
3012301
P.S. Das Ergebnis ist schon richtig so, nur hab ich wie gesagt den Zusammenspiel der FOR Schleife mit der Berechnung unter temp nicht verstanden
Ich hoffe ihr könnt mir weiterhelfen und danke im Vorraus.
liebe Grüße