D
Daena
Gast
Hallo ihr Lieben!
Vor kurzem habe ich mit einem 14 Tage Java-Kurs (PDF) angefangen; Eine Aufgabe bereitet mir jetzt ziemliches Kopfzerbrechen und ich komme auf keinen grünen Zweig. (Vielleicht stehe ich auch nur auf der Leitung und es ist ein grundliegendes Verständnisproblem.) Wäre wirklich großartig, wenn mir hierbei jemand helfen könnte...
Die Aufgabenstellung gibt folgenden Quellcode vor; man soll ihn einfach nur verstehen:
Was ich vermuten würde wäre:
III 0
JJJ 0
KKK 0
KKK 1
JJJ 1
KKK 0
KKK 1
JJJ 2
KKK 0
KKK 1
III 1
... alles nochmal für III 1
... alles nochmal für III 2
Er gibt aber aus:
III 0
JJJ 0
KKK 0
KKK 1
III 1
JJJ 0
KKK 0
KKK 1
III 2
JJJ 0
KKK 0
KKK 1
- Warum srpingt er nach dem ersten KKK 1 nicht zu SprungZuJ sonder zu SprungZuI?
- Und warum kommt ein Fehler wenn ich direkt unter eine Sprungmarke SprungZuJ: einen System.out.println setze der mir eine Ausgabe machen soll? Warum spielt es eine Rolle was unter dem Marker steht, wenn das Programm doch nur hinspringen soll?
Da i,j und k in den Schleifen immer wieder enu deklariert werden, starten sie doch immer wieder bei 0. Hm, müsste dann nicht mit dem Quellcode nicht eine Endlosschleife rauskommen? Hilfe!!
Total verwirrt,
die Daena
Vor kurzem habe ich mit einem 14 Tage Java-Kurs (PDF) angefangen; Eine Aufgabe bereitet mir jetzt ziemliches Kopfzerbrechen und ich komme auf keinen grünen Zweig. (Vielleicht stehe ich auch nur auf der Leitung und es ist ein grundliegendes Verständnisproblem.) Wäre wirklich großartig, wenn mir hierbei jemand helfen könnte...
Die Aufgabenstellung gibt folgenden Quellcode vor; man soll ihn einfach nur verstehen:
Java:
public class Tag3Uebung9{
public static void main(String [] args){
SprungZuI:
for (int i=0; i<=2; i++){ // III
System.out.println("III "+i);
SprungZuJ:
for (int j=0; j<=2; j++){ // JJJ
System.out.println("JJJ "+j);
for (int k=0; k<=2; k++){ /// KKK
System.out.println("KKK "+k);
if (k==1){
System.out.println("!SPRUNG! k=1: k="+k);
break SprungZuJ;
}
} /// KKK
} // JJJ
} // III
}
}
Was ich vermuten würde wäre:
III 0
JJJ 0
KKK 0
KKK 1
JJJ 1
KKK 0
KKK 1
JJJ 2
KKK 0
KKK 1
III 1
... alles nochmal für III 1
... alles nochmal für III 2
Er gibt aber aus:
III 0
JJJ 0
KKK 0
KKK 1
III 1
JJJ 0
KKK 0
KKK 1
III 2
JJJ 0
KKK 0
KKK 1
- Warum srpingt er nach dem ersten KKK 1 nicht zu SprungZuJ sonder zu SprungZuI?
- Und warum kommt ein Fehler wenn ich direkt unter eine Sprungmarke SprungZuJ: einen System.out.println setze der mir eine Ausgabe machen soll? Warum spielt es eine Rolle was unter dem Marker steht, wenn das Programm doch nur hinspringen soll?
Da i,j und k in den Schleifen immer wieder enu deklariert werden, starten sie doch immer wieder bei 0. Hm, müsste dann nicht mit dem Quellcode nicht eine Endlosschleife rauskommen? Hilfe!!
Total verwirrt,
die Daena