Brauche hilfe mit Variablen bei Java?

... komplette Frage anzeigen

2 Antworten

Letztes Jahr hatte ich auch informatik - man ist das n kack!

Also die For Schleife macht da alles.

In der For Schleife steht i=1, also ist die Variable i das selbe wie 1. Die Schleife startet also sozusagen mit 1.

Da steht auch i<=k/2. Das bedeutet solange i kleiner als k geteilt durch 2 oder gleich groß wie k geteilt durch 2 ist, wird der Befehl ausgeführt.

Dann steht da noch k--. Das bedeutet, dass k immer eins abnimmt. Ok mal rechnen:

1. Fall 1 ist kleiner als 6 geteilt durch 2 -> wird ausgegeben
2. Fall 1 ist kleiner als 5 geteilt durch 2 -> wird ausgegeben
3. Fall 1 ist kleiner als 4 geteilt durch 2 -> wird ausgegeben
4. Fall 1 ist kleiner als 3 geteilt durch 2 -> wird ausgegeben
5. Fall 1 ist gleich groß wie 2 geteilt durch 2 -> wird ausgeben
Insgesamt wird es 5 mal duchgeführt. Danach käme 1 ist kleiner als 1 geteilt durch 2 - Aber das stimmt ja gar nicht mehr! Deshalb wird es nicht mehr ausgeführt.

Und jetzt mach das gleiche mal für i<=k (also ohne geteilt durch 2!)
1. Fall 1 ist kleiner als 6 -> wird ausgegeben
2. Fall ??? du bist dran. :)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Eismensch
13.09.2016, 20:49

Deine Ausführung ist korrekt, jedoch glaube ich war sein "Fehler", dass er statt der Laufvariable "i" die Grenzvariable "k" verändert hat.

Ich vermute er hätte 

 for (int i=1; i<=k/2; i++)


nutzen müssen. Dann würde bei
"i<=k" 6 Durchläufe und bei
"i<=k/2" drei Durchläufe entstehen.

2

du hast k- -  geschrieben, jedoch sollte "i" durchlaufen

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von marl3x
13.09.2016, 20:12

Ach du... vielen lieben dank. Aber warum geht es denn nicht so auch? Wieso merkt er nicht das k abgezogen wird?

0

Was möchtest Du wissen?