Grundlagen: Entscheidungen 632

Neben Variablen und Wiederholungen sind Entscheidungen eine weitere wichtige Struktur in der Programmierung. Entscheidungen steuern den Ablauf von Programmen anhand von Vergleichen.

Der Befehl „if“ testet eine Bedingung und falls diese zutrifft, werden die Anweisungen darunter ausgeführt.

Python

name = input("Wie heißt du?")

if(name == "Richi"):
    print("Cool, ich heiße auch so!")

Scratch

In diesem Beispiel wird der Nutzer nach seinem Namen gefragt. Im Anschluss wird der eingegebene Name mit dem String (= Zeichenkette) „Richi“ verglichen. Ist der eingegebene Name gleich „Richi“, schreibt das Programm „Cool, ich heiße auch so!“.

Hier wurde der Operator „ist gleich ==“ genutzt.

Operatoren

Mit Operatoren werden Strings, Zahlen, Variablen miteinander verglichen. Das Ergebnis ist entweder wahr/true oder falsch/false:

Python

#Operator "ist gleich"
2 == 10

#Operator "ist nicht gleich"
2 != 10

#Operator "kleiner als"
2 < 10

#Operator "größer als"
2 > 10

#Operator "kleiner gleich"
2 <= 10

#Operator "größer gleich"
2 >= 10

Scratch

1. Aufgabe

  • Teste verschiedene Operatoren im Thonny Editor und notiere dir, welche richtig und welche falsch sind.
  • Zum Beispiel:
if(2==10):
    print("Wahnsinn...")
   

Alternative

Mit dem Befehl „if“ kann man Bedingungen überprüfen und falls diese wahr sind, den darunterliegenden Code ausführen. Um auch nicht zutreffende Bedingung zu überprüfen, kann man den Befehl „else“ nutzen.

Python

if(2==10):
    print("unmöglich...")
else:
    print("Genau, 2 ist nicht gleich 10!")

Scratch

Im Beispiel wird getestet, ob 2 gleich 10 ist. Das ist natürlich nicht wahr und das Programm springt zum „else“ Befehl und schreibt: „Genau, 2 ist nicht gleich 10!“.

Willst du einen Wert mehrfach testen, um zu sehen, ob eine Bedingung zutrifft, kannst du verschiedene Alternativen mit Hilfe des Befehls „elif“ testen:

Python

meinWert = 8

if(meinWert > 10):
    print("Der Wert ist größer als 10.")
elif(meinWert < 10):
    print("Der Wert ist kleiner als 10.")
else:
    print("Der Wert muss genau 10 sein.")

Scratch

Dieses Mal erstellen wir eine Variable mit dem Namen „meinWert“ und weisen dieser die Nummer 8 zu. Danach wird getestet, ob der Wert größer oder kleiner als 10 ist. Sollten beide Bedingungen nicht zutreffen muss logischerweise der Wert gleich 10 sein.

2. Aufgabe

  • Übertrage den Code in den Thonny Editor.
  • Verändere den Wert der Variable „meinWert“ und überprüfe die Ausgabe.
  • Erweitere den Code um eine Alternative, die testet, ob der Wert kleiner als 0 ist.

Darfst du in die Disco?

Python

alter = input("Hallo, wie alt bist du?")

#String wird in eine Zahl umgewandelt und in einer neuen Variable gespeichert
alterAlsZahl = int(alter)

if(alterAlsZahl >= 18):
    print("Willkommen im Club!")
else:
    print("Du kommst hier nicht rein!!!")

Scratch

Die Funktion „input()“ speichert die Nutzereingabe als String (= Zeichenkette) ab. Da wir aber das Alter abfragen und testen wollen, ob der Nutzer älter als 18 ist, müssen wir den String in eine Zahl umwandeln.

In Scratch ist diese Umwandlung nicht nötig, da Scratch automatisch testet, ob es sich bei der Eingabe um eine Zahl oder einen String handelt.

Die Funktion „int()“ wandelt einen String in eine Zahl um!

Jetzt hast du einen guten Überblick über Entscheidungen in Python gewonnen. Versuche doch gleich einmal das Spiel „Errate die Zahl“ zu programmieren.

Links