Announcement

Collapse
No announcement yet.

Schleifen Unterschiede

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Schleifen Unterschiede

    Hallo allerseits,<br>
    folgende Frage habe ich:<p>
    - Was ist eigentlich der Unterschied zwischen eine <b>for</b>- und eine <b>while</b>-Schleife, außer, daß die Positionen von (Start; Bedingung; Aktualiesierung)unterschiedlich sind?
    <p>
    - Wieso braucht man <b>do-while</b>-Schleife und nicht immer nur die <b>while</b>-Schleife? Ein Beispiel vielleicht dazu.
    <p>
    Danke vorab für jede Hilfe.

    Gruß Otto

  • #2
    do-while fuehrt eine Schleife MINDESTENS einmal aus, waehrend while VOR dem Ausfuehren prueft. Natuerlich kann man eine davon sparen, aber die Konstrukte helfen, einen vorher in einer Metasprache formulierten Algorithmus in eine lesbare Form zu ueberfuehren, so dass selbst nach Jahren aus dem Source hervorgeht, welcher Algorithmus dahinter steht und wie er gedacht ist. Haltet mich fuer altmodisch, weil ich noch die alte Niklas-Wirth-These vertrete, demzufolge Datenstrukturen die Algorithem bestimmen und erst DANN die Frage nach der Umsetzung in eine reale Programmiersprache angegangen wird.<p>
    for() kommt aus der C-Welt, wo es kein while und do gab. Damals hielt man es fuer clever, for() mit Testmechanismen auf eine Schleifenvariable zu versehen anstatt einfach nur mit INT-Zaehlern zu arbeiten, und nach nunmehr 30 Jahren C hat sich ein Grossteil der Programmierer mit dieser Variante der for()-Schleife angefreundet, so dass man es in Java uebernommen hat. Mit while() allein laesst sich jeder Fall einer while(), do() und for()-Schleife ausdruecken, nur halt manchmal weniger elegant und schwieriger auf dem ersten Blick erkennbar.<p>
    Gruss, Marc

    Comment

    Working...
    X