M13 · Pflicht

Entweder – oder

Übersicht: alle Merk- und Infokästen mit ihren Beispielen. Lücken erscheinen, sobald du sie im Heft richtig ausgefüllt hast.

Aufgabe 2 – Login fehlgeschlagen

Wie sagt man das?

Bisher lautet die Anweisung: „Wenn das Passwort richtig ist: Erfolg. Wenn das Passwort falsch ist: Fehlschlag.“ Kürzer und ohne Umkehrung sagt man: „Wenn das Passwort richtig ist: Erfolg,  : Fehlschlag.“

Aufgabe 3 – Die zweiseitige Verzweigung

if und else

Soll auch dann Code laufen, wenn die Bedingung nicht erfüllt ist, benutzt man das Schlüsselwort else (englisch für sonst). So entsteht eine zweiseitige Verzweigung – umgangssprachlich ein „wenn … sonst …“:

WENN Passwort korrekt: „Login erfolgreich“ SONST: „Login fehlgeschlagen“

if bedingung:
    anweisungsblock1
else:
    anweisungsblock2
if eingabe == pw:
    print("Login erfolgreich")
else:
    print("Login fehlgeschlagen")
  • Ist die Bedingung wahr, läuft der if-Teil, sonst der else-Teil – immer genau einer von beiden.
  • else hat keine Bedingung. Es steht auf der gleichen Ebene wie das zugehörige if und endet mit einem Doppelpunkt. Die Zeilen darunter sind eingerückt.
  • Du entscheidest bei jedem Programm selbst, ob du nur if (einseitig) oder if und else (zweiseitig) brauchst.

Im Struktogramm sieht das so aus:

Struktogramme: links die einseitige Verzweigung mit Anweisungen nur unter True, rechts die zweiseitige mit je einem Anweisungsblock unter True und unter False

In der Kristallhöhle geht es genauso: if wall_ahead(): dreht sich der Avatar, else: geht er weiter.

Nicht immer passt else:

Dieses Programm soll ausgeben, ob eine ganze Zahl positiv oder negativ ist:

zahl = int(input("Zahl? "))
if zahl > 0:
    print("positiv")
else:
    print("negativ")

Teste in Gedanken die Zahlen von -5 bis 5. Bei der Zahl   antwortet das Programm nicht korrekt.

Zusammenfassung

Das Wichtigste:

Mit   bekommt eine Verzweigung einen zweiten Weg – eine   Verzweigung. Es wird immer genau   der beiden Teile ausgeführt. else hat   Bedingung und steht auf der   Ebene wie das zugehörige if.

Willkommen bei ProgVenture!

Schön, dass Sie hier sind. ProgVenture wird laufend weiterentwickelt und ist derzeit im Alpha-Stadium. Das ist für den Einsatz im Unterricht wichtig:

Alpha: Die meisten Inhalte wurden mit KI-Unterstützung aus einem früheren Programmierkurs übertragen und sind noch nicht vollständig von Hand geprüft. Inhalte werden noch verändert und ergänzt. Bitte sehen Sie Aufgaben vor dem Einsatz im Unterricht durch und rechnen Sie mit Änderungen.

Fehler entdeckt oder eine Idee? Über „Feedback“ erreichen Rückmeldungen direkt die Entwicklung. Diesen Hinweis öffnen Sie jederzeit wieder über das Alpha-Siegel.