Das folgende Programm enthält einen der oben gezeigten Schleifen-Codes.
Erläutere die Funktionsweise des Codes.
Programmname: while_a1.py
Der im Bild gezeigte Code lässt sich auch in Python umsetzen.
Übernimm den folgenden Code in deine Datei:
zahl = 4
while zahl > 0:
print(zahl)
Ergänze den Code mit der fehlenden Anweisung.
Worauf muss man bei der Verwendung der while-Schleife achten?
Merkmale der while-Schleife:
Programmname: while_a2.py
Setze den folgenden Pseudocode in ein funktionierendes Python-Programm um.
Eingabe gewünschter Zuckerstückchen im Tee
Zuckerstückchen werden hinzugegeben bis gewünschte Menge erreicht ist.
Ausgabe: Hier ist Ihr Tee mit ... Zuckerstücken
Modifiziere deinen Code so, dass ab einer gew¨nschten Menge von 5 Zuckerstücken eine Warnung vor zu viel Zucker im Tee ausgegeben wird.
Sollte der eingegebene Wert größer als 8 sein, soll ein Spruch deiner Wahl ausgegeben werden.
Programmname: while_a3.py
Ein Roboter soll backen lernen.
Leider fehlt ihm der Code, um zu entscheiden wieviele Esslöffel voll Wasser er dem Teig hinzugeben muss.
Ein Esslöffel fasst ca. 15 ml Wasser.
Dem Teig sollen 90 ml Wasser "zugeführt" werden.
Schreibe einen funktionierenden Programmcode, der dem Teig solange löffelweise Wasser "zuführt" (print()), bis 90 ml Wasser im Teig sind.
Lass dir am Ende die Anzahl der Löffel und die Menge an Wasser im Teig ausgeben.
Modifiziere deinen Code so, dass man dem Roboter vorgeben kann wie viel Wasser er dem Teig hinzugeben soll.
Wenn man weniger als einen ganzen Esslöffel Wasser benötigt, soll abgerundet werden.
In einigen Programmiersprachen gibt es eine sogenannte do-while()-Schleife.
Diese gibt es nicht direkt in Python, man kann sie mit Hilfe der Schleifensteueranweisungen simulieren.
Die folgende Tabelle zeigt die Unterschiede der in Python do-while()-ähnlichen Schleife zur normalen while()-Schleife auf.
While-Schleife | Do-while()-ähnliche Schleife | |
---|---|---|
Aufbau |
while (Bedingung): |
while True: |
Ausführung |
Wenn die Bedingung erfüllt ist
→kopfgesteuerte Schleife |
Mindestens einmal, Bedingung wird erst am Ende getestet
→fußgesteuerte Schleife |
Anfangsüberprüfung | Zuerst | Nach dem ersten Durchlauf |
Anzahl der Durchläufe | Kann 0 Durchläufe haben | Mindestens einen Durchlauf |
Verwendung | Wenn die Anzahl der Iterationen nicht im Voraus bekannt ist | Wenn der Block mindestens einmal ausgeführt werden muss |
Programmname: while_fakultaet.py
Die Fakultät ist in der Mathematik eine Funktion, die einer natürlichen Zahl das Produkt aller natürlichen Zahlen (ohne Null) kleiner und gleich dieser Zahl zuordnet.
Dabei gilt:
Schreibe einen Code der eine beliebige, positive natürliche Zahl einliest.
Anschließend soll die Fakultät der eingelesenen Zahl berechnet und nur das Ergebnis ausgegeben werden.
Beachte auch, dass bei 0! als Ergebnis 1 angezeigt werden muss.
Das Programm sollte in der ausführung folgendermaßen aussehen:
Ergänze dein Programm so, dass bei der Eingabe von Zahlen kleiner als 0 eine Fehlermeldung ausgegeben wird.
Das Programm soll danach keine weiteren Anweisungen durchlaufen.
Ergänze dein Programm so, dass bei fehlerhaften Eingaben die Abfrage so oft wiederholt wird, bis eine gültige Eingabe übergeben wurde.