Schleifen

MinaM

Mitglied
Hallo Zusammen,

sind die beiden folgenden Sätze uneingeschränkt richtig:

"Jede while-Schleife lässt sich auch durch eine for-Schleife ersetzen"

"do-while Schleifen lassen sich nicht durch eine wile oder for-Schleife ersetzen"

ich hoffe ihr versteht was ich meine
lg
MinaMurray
 
Hallo!

IMHO kann man jede iterative Codeausführung mit jeder bliebigen Schleifenart
(for/do-while/while) - mehr oder weniger Elegant formulieren. Einige Schleifenkonstrukte eigenen sich vom handling her besser für bestimmte Aufgaben als andere.

Gruß Tom
 
Hallo Thomas,

was heißt IMHO?

Und ist es nicht in der do-while Schleife, die Besonderheit, dass die Schleife minderstens
einmal durchlaufen wird , auch wenn die Endbedingung false ist.
Ich wüßte z.B nicht wie man es in einer while oder for Schleife ermöglichen kann,
das die Schleife minderstens einmal durchlaufen wird, wenn die Schleifenbedingung nicht
erfüllt ist.

lg
MinaMurray
 
Und ist es nicht in der do-while Schleife, die Besonderheit, dass die Schleife minderstens
einmal durchlaufen wird , auch wenn die Endbedingung false ist.
Ich wüßte z.B nicht wie man es in einer while oder for Schleife ermöglichen kann,
das die Schleife minderstens einmal durchlaufen wird, wenn die Schleifenbedingung nicht
erfüllt ist.

Code:
do{
   //deinschleifenrumpfcode
}while(bed);

wird ersetzt durch:
Code:
//deinschleifenrumpfcode
while(bed){
   //deinschleifenrumpfcode
}

Gruß

RedWing
 
"Jede while-Schleife lässt sich auch durch eine for-Schleife ersetzen"
Ja das ist doch klar oder?

ich kann im Prinzip jede While Schleife wie folgt sehen:

while ( Bedingung ) Block

Wobei der Block den Schleifenrumpf beinhaltet.

jede for Schleife schaut wie folgt aus:

for( Anweisung; Bedingung; Zuweisung) Block

Du hast also in einer for Schleife im Prinzip das gleiche konstrukt wie bei einer while Schleife, nur dass du eine zusätzliche Deklaration machen kannst, welche nur in nachfolgenden Block gültig ist, und Zuweisungen, die nach der Ausführung des Blockes ausgeführt werden.

"do-while Schleifen lassen sich nicht durch eine while oder for-Schleife ersetzen"
das ist jetzt Interpretationssache...

Meint man damit ausschließlich ein Schleifenkonstrukt dann ists klar das es nicht geht.
Meint man aber damit ein Codekonstrukt, dann kann man die eine Iteration die ja immer ausgeführt werden soll einfach vor dem Schleifenkonstrukt stellen (siehe Kommentar RedWing)
 
Zurück