Einer oder mehrere Schritte werden nur ausgeführt, wenn eine bestimmte Bedingung erfüllt ist.
In Programmen möchten wir während der Ausführung des Programms entscheiden können, ob Befehle ausgeführt werden oder nicht. Auch möchten wir entscheiden können, ob eine Wiederholung abgebrochen werden soll.
Vergleichen
Um zu entscheiden, ob Befehle ausgeführt werden sollen, wird immer eine eine Frage gestellt, die eindeutig mit "Ja" oder "Nein" beantwortet werden kann. Wird die Frage mit "Ja" beantwortet, so ist diese Aussage Wahr und die Bedingung ist erfüllt. Andernfalls ist die Aussage Falsch und die Bedingung ist nicht erfüllt.
Ein Frage kann als Vergleich geschrieben werden. Beispielsweise wird die Frage "Ist 4 kleiner als 2?" als 4 < 2
aufgeschrieben. Die offensichtliche Antwort ist "Nein" und entspricht in Python dem Wert False
.
Spannender sind vergleiche, wenn diese mit Variablen durchgeführt werden, da man nicht schon im Voraus weiss, welcher Wert in einer Variable enthalten ist.
Die Frage von "Ist x kleiner als 2" (x < 2
) hängt also davon ab, welcher Wert zur Zeit in der Variable x
gespeichert ist.
alter = int(input('Wie alt bist du?'))
if alter < 14:
print('Du darfst Velo fahren')
elif alter < 16:
print('Du darfst Töffli fahren')
elif alter < 18:
print('Du darfst Roller fahren')
else:
print('Du darfst Auto fahren')
In Python können alle üblichen Fragen als Vergleiche von zwei Werten geschrieben werden.
Name | Mathematisch | Python |
---|---|---|
grösser | < | |
kleiner | > | |
grösser | <= | |
kleiner | >= | |
gleich | == | |
ungleich | != |
Bei der Überprüfung auf Gleichheit werden zwei Gleichheitszeichen ==
geschrieben.
Ausgabefenster
In Python lassen sich Ausgaben nicht nur mit print
sondern auch mit dem Befehl alert()
(aus der Bibliothek browser
) in einer Ausgabebox anzeigen. Die Ausgabe mit alert
wird hier verwendet, weil die Online-Version von Python die Ausgaben mit print
erst am Ende des Programms anzeigt wird.
alert
Mit dem Befehl alert
aus der Bibliothek browser
können Ausgabeboxen erzeugt werden.
from browser import alert
alert('Hello!')
Zufallszahlen erraten
Probieren Sie das Ratespiel aus:
Beschreiben Sie in eigenen Worten, wie das Ratespiel funktioniert.
Zeichnen Sie mit ihrer Pultnachbar:in ein Struktogramm für das Programm.
Schreiben Sie gemäss dem Struktogramm das Ratespiel in Python.
from browser import alert
from random import randint
Hinweis
Wenn die Zahl gefunden wurde, soll die Spieler:in nicht mehr nach einer Eingabe gefragt werden. Mit dem Befehl break
kann die Wiederholung abgebrochen werden.
break
break
Mit break
kann eine Wiederholter Codeblock beendet werden. Die Ausführung geht mit der nächsten Zeile nach dem Codeblock weiter.
Beispiel
for i in range(10):
print('Zahl', i)
if i == 4:
break
print('Ende')
Bemerke: Bei i == 4
wird break
aufgerufen und das Programm führt als nächstes die Zeile 5 aus.
8. Bedingte Ausführung ⑂