Java for WH in while WH ausdrücken

mo_ritzl

Lt. Commander
Registriert
Dez. 2010
Beiträge
1.515
Hallo zusammen;
man kann ja "for" Wiederholungen(Zählwiederholung) als while Wiederholungen(Mit Eingangsbedingung) auch ausdrücken oder?
Kleines Beispiel:
for (i=1; int<=256; i=2*i)
{
Sequenz
}

Wie würde das dann als while WH aussehen(wenn es geht)

thx
Moritz
 
achtet bitte auf die korrekte Bedingung:
while (i <= 256)
 
klingt für mich irgendwie nach "hausaufgaben vergessen" ... typisches schulinformatik problem, woran auch nur absolute anfänger scheitern. hoffentlich lehne ich mich damit nicht zu weit aus dem fenster.

@mo_ritzl: da du ja jetzt das prinzip gesehen hast, kannst du das ganze auch für eine do-while schleife aufschreiben? (wäre nämlich die nächste schleife, für die sowas formuliert werden sollte ;) )
 
Denkst du der macht jetzt dein Lehrerspielchen mt, nach DEM Auftritt hier? :D
 
ich wollte dir/euch eigentlich die chance geben, selbst mal nachzudenken. (soll für den späteren lebensweg nutzen, hab ich mir sagen lassen...)

da ihr jetzt das prinzip erkennen könnt, sollte es ein leichtes sein, weitere schleifen äquivalent umzuformen.
 
Ich werfe jetzt einfach mal in den Raum, dass es nicht äquivalent ist.

Erstmal nachdenken bitte ;)

Stichwort: continue
 
Eine while-Schleife die mindestens einmal ausgeführt wird, da die Bedingung erst am Ende steht.

Muss aber sagen, dass mir selten eine untergekommen ist.
 
also ich will jetzt sicher nicht klugscheißen, aber ich studiere informatik und habe schon einige jahre programmierpraxis aufm buckel... es ist möglich!

jede (mir derzeit bekannte) schleife ist absolut äquivalent zu jeder anderen. selbst rekursion ist nur genauso mächtig wie schleifen (wenn die variablen während des durchlaufs veränderbar sind).
 
Von ihrem Nutzen her sind alle Schleifen natürlich gleich. Wiederholen eines Anweisungsblocks. Allerdings gibt es wie schon angesprochen Unterschiede bei der Steuerung. Bei kopfgesteuerten Schleifen (for, while) erfolgt die Prüfung der Schleifenbedingung vor der Ausführung des Schleifenrumpfes. Bei sog. fußgesteuerten (do while, repeat until) Schleifen erfolgt mindestens ein Schleifendurchlauf. Allerdings werden die seltener benutzt.

continue (und break) sind in jeder Schleife in Java verfügbar.
 
Zurück
Oben