Zum Inhalt springen
geralt / Pixabay

if-else-Bedingungen

Grundgerüst

Mit dem folgenden Code wird geprüft, ob die Variable zahl den Wert 3 hat oder nicht. Je nach dem, ob die Bedingung erfüllt ist oder nicht, wird eine andere Anweisung befolgt.

zahl = 3

if zahl == 3: #prüfe Bedingung (hier: wenn zahl 3 ist)
    print("Die Zahl ist 3.") #Anweisung, wenn erfüllt
else: #sonst 
    print("Die Zahl ist nicht 3.") #Anweisung, wenn nicht erfüllt

Übung 1

  1. Probiere den Code aus dem Grundgerüst aus.
  2. Ändere den Wert von zahl zu 4 und teste den Code erneut.
Flussdiagramm

Übung 2

Schreibe ein Skript, bei dem geprüft wird, ob eine vorgegebene Zahl nicht 3 ist. Wähle entsprechend sinnvolle Anweisungen.

Tipp

zahl = 3

if zahl != 3: # != prüft, ob etwas nicht erfüllt ist
    #passende Anweisung
else: #sonst 
    #passende Anweisung


Übung 3

Mit Python kannst du auch ein kleines Ratespiel erstellen. Dafür musst du if-else-Bedingungen verschachteln. Wie das funktioniert, klären wir an einem Beispiel erst ein mal visuell mithilfe eines sogenannten Flussdiagramms dar:

  • Nutzer wird nacheinander gefragt.
  • Seine Angabe wird gespeichert.
  • Die Bedingungen werden geprüft.

Der Nutzer soll immer wieder gefragt werden und eine Eingabe machen, dafür sorgt der folgende Teil.

#Die Konsole gibt den Text zwischen den Hochkommas aus. Die Antwort des Benutzers wird in der Variable aw gespeichert.
aw = input('Hier steht die Frage an Nutzer')

Der vollständige Code zu dem Ratespiel oben sieht so aus:

print('Willkommen zu meinem Ratespiel! Ich werde erraten, woran du denkst! Denke an ein Auto, einen Bär oder einen Menschen! Gib bitte immer ein ja oder nein als Antwort ein!\n')

aw = input('Ist es lebendig?\n')

if aw == 'nein':
    print('Es ist das Auto!\n')
else:
    if aw == 'ja':
        aw = input('Hat es vier Beine?\n')
        if aw == 'ja':
            print('Es ist der Bär!')
        else:
            print('Es ist der Mensch!\n')
  1. Probiere den Code oben aus und erkläre:
  2. Erstelle ein ähnliches Ratespiel.
  3. Erstelle ein Ratespiel mit mehr Verschachtelungen.

Übung 4

if-else-Bedingungen lassen sich verschachteln, um mehr als nur genau 2 Fälle zu unterscheiden. Das kann schnell unübersichtlich werden. Man kann auch elif nutzen!

Beispiel

aw = int(input('Gib eine Zahl ein!\n')) #int() macht aus der Eingabe, die zunächst als Text angenommen wird, eine Zahl

if aw < 0:
    print('Die Zahl ist negativ.')
elif aw > 0:
    print('Die Zahl ist positiv.')
else:
    print('Hast wohl 0 eingegeben...')
  1. Probiere das Beispiel aus. Gib auch mal etwas Ungültiges ein. Was passiert?
  2. Ändere den Code so, dass geprüft wird, ob eine Zahl kleiner, gleich oder größer als 17 ist.
  3. Erstelle eine neue Version deines Ratespiels, bei dem du ein elif-Statement nutzt, um ungültige Eingaben abzufangen. Schau dir den Tipp möglichst spät an.
  4. Schau dir meine Lösung unter Tipp an und erstelle ein Flussdiagramm (Begriff: siehe Übung 3) dazu. Du kannst diese Seite dafür nutzen.
Tipp

Mit meinem Ratespiel oben hätte man:

aw = input('Ist es lebendig?\n')
if aw == 'nein':
    print('Es ist das Auto!\n')
elif aw == 'ja':
    aw = input('Hat es vier Beine?\n')
    if aw == 'ja':
        print('Es ist der Bär!')
    elif aw == 'nein':
        print('Es ist der Mensch!\n')
    else:
        print('Ungültige Eingabe!\n') #warum ist das noch nötig?
else:
    print('Ungültige Eingabe!\n')

Übung 5

Erstelle einen Code der folgende Kriterien erfüllt:

  • Du als Programmierer:in gibst zwei Werte für zwei Variablen vor.
  • Die gespeicherten Werte werden in einem if-else-Codeblock beide geprüft.
  • Unterscheide folgende Fälle:
    • beide Bedingungen werden erfüllt
    • mindestens eine Bedingung wird erfüllt
    • keine Bedingung wird erfüllt
Grundgerüst anzeigen
a = 0 #0 stehe hier für nein
b = 1 #1 stehe hier für ja

if a == 1 and b == 1: #andere Vergleichsoperatoren sind auch erlaubt, also <,>,!=
    print("Beide Bedingungen erfüllt.")
elif a == 1 or b == 1:
    print("Mind. 1 Bedingung erfüllt.")
else:
    print("Keine Bedingung erfüllt.")
Beispiel
a = int(input("Möchtest du Milch in deinem Kaffee? Gib 1 für Ja ein und 0 für nein."))
b = int(input("Möchtest du Zucker in deinem Kaffee? Gib 1 für Ja ein und 0 für nein."))


if a == 1 and b == 1:
    print("Zucker und Milch? Igitt!")
elif a == 1 or b == 1:
    print("Naja, wenigstens nicht beides!")
else:
    print("So schmeckt der Kaffee am besten!")
Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline-Feedback
Sieh alle Kommentare
0
Freue mich auf deine Ideen, kommentiere!x
()
x