Seite 1 von 1

Ein Newbie hat eine Frage zu den while-Schleifen

Verfasst: Freitag 28. Februar 2020, 15:39
von SittingDuck19
Hallo alle zusammen,
erstmal freut es mich, nun Mitglied in diesem Forum zu sein.
Ich glaube meine Frage ist recht sonderbar, da sie sich auf tiefstes Basiswissen bezieht. Ich bin nämlich nur ein armer Student, der versucht, in dem Informatik-Modul seines Studiums (Maschinenbau) zurechtzukommen. Wenn ich bzw. meine Frage nicht in das Forum passt, dann fühlt euch freu, den Beitrag zu löschen.
Folgendes:
Den Sinn von Schleifen habe ich bereits verstanden. for-Schleifen und kopfgesteuerter while-Schleifen stellen kein Problem dar, aber bei der fußgesteuerten while-Schleife hapert es. Wie genau funktioniert das "True" im Kopf und worauf bezieht es sich?Habt ihr vielleicht ein einfaches Beispiel?
Im Voraus schon mal danke für die Anworten.

Liebe Grüße
SittingDuck ;)

Re: Ein Newbie hat eine Frage zu den while-Schleifen

Verfasst: Freitag 28. Februar 2020, 15:45
von __deets__
Vielleicht hilft ja der Blick ueber den Tellerrand. Andere Sprachen kennen sowas (ich mache das mal in Python-Syntax, aber es ist nicht Python):

Code: Alles auswählen

do:
    berechne_was()
while bedingung
Sprich: man hat eine Schleife, die garantiert *einmal* durchlaeuft, und dann am *Ende* (oder am Fuss, um in deiner Lingo zu bleiben) entscheidet man ueber das weiter vorgehen. Und in Python hat man dieses Konstrukt so nicht. Was macht man also? Sowas hier:

Code: Alles auswählen

while True: # immer wahr, bricht also nicht ab
     berechne_was()
     if bedingung-:
         break

Re: Ein Newbie hat eine Frage zu den while-Schleifen

Verfasst: Freitag 28. Februar 2020, 16:05
von SittingDuck19
Hi,
also bezieht sich das "while True" auf die direkte Zeile darunter. Sprich:
Solange die Bedingung in der "zweiten" Zeile erfüllt ist, laufe ich immer weiter. Wenn dann die if-Bedingung in Zeile drei erfüllt ist, dann höre ich auf mit der Schleife?

Re: Ein Newbie hat eine Frage zu den while-Schleifen

Verfasst: Freitag 28. Februar 2020, 16:22
von __deets__
Das while-True bezieht sich - wie bei allen anderen Schleifen - auf den GESAMTEN eingerueckten Teil darunter. Also sowohl die berechnung, als eben auch die if-Abfrage, die ggf. aus der Schleife ausbricht.

Re: Ein Newbie hat eine Frage zu den while-Schleifen

Verfasst: Freitag 28. Februar 2020, 16:22
von sparrow
@SittingDuck19: Nein. Das "while True:" bedeutet, dass die Schleife so lange ausgeführt wird, wie die Bedingung (also das True) wahr ist. Da True immer wahr ist, wird sie ewig ausgeführt. Es sei denn, innerhalb der Schleife wird break aufgerufen.