Discovery & Checkpoint
Gegeben ist folgender Code:
alter = 15
attest = True
if alter >= 18 or attest:
print("Zulassung erteilt")
else:
print("Abgelehnt")Was wird auf der Konsole ausgegeben?
Parsons Puzzle
Bringe die Kacheln in die richtige logische Reihenfolge, um ein Schiedsrichter-Prüfprogramm zu erstellen.
Der Kandidat erhält die Lizenz nur, wenn er mindestens 17 Jahre alt ist und die Regelprüfung bestanden hat.
Tipp: Benutze die Anfasser zum Verschieben und ⇥- / ⇥+ zum Einrücken.
Scaffolding & Bugfix
Für die Schiedsrichter-Lizenz gelten strenge Regeln: Man erhält die Lizenz nur, wenn man mindestens 80 Punkte erzielt hat und die Theorieprüfung bestanden ist.
Hat man zwar mindestens 50 Punkte erreicht, aber die Kriterien für die Lizenz nicht erfüllt, muss man in die Nachpruefung. Ansonsten ist man Durchgefallen.
Im vorgegebenen Code haben sich zwei typische Fehler eingeschlichen:
1. Logikfehler: Es wurde der Operator or statt and verwendet. Dadurch würde ein Kandidat fälschlicherweise die Lizenz erhalten, obwohl die Theorie nicht bestanden wurde (theorie_bestanden = False)!
2. Syntaxfehler: In der zweiten Bedingung fehlt das Schlüsselwort für die alternative Mehrfachverzweigung (elif).
Repariere beide Fehler, sodass bei den vorgegebenen Werten korrekterweise Urteil: Nachpruefung ausgegeben wird.
Tipp: Passe den Code im Editor an und klicke auf „Ausführen & Prüfen“.
punkte = 85
theorie_bestanden = False
if punkte >= 80 and theorie_bestanden:
print("Urteil: Lizenz erteilt")
elif punkte >= 50:
print("Urteil: Nachpruefung")
else:
print("Urteil: Durchgefallen")
Coding Challenge
Programmiere den digitalen Schiri-Assistenten für ein hitziges Match in der Sportart Volleyball.
Ein Foulspiel soll anhand der verbleibenden Spielzeit und der Art des Vergehens bewertet werden.
1. Erstelle eine Variable restzeit mit dem Wert 30 (in Minuten).
2. Erstelle eine Variable taktisches_foul mit dem Wert True.
3. Entscheide mit einer if-elif-else-Kette über die Strafe:
- Wenn restzeit <= 10 oder taktisches_foul == True ist:
Gib Strafe: Zeitstrafe aus.
- Wenn restzeit <= 30 ist (und keine Zeitstrafe ausgesprochen wurde):
Gib Strafe: Verwarnung aus.
- In allen anderen Fällen (else):
Gib Strafe: Ermahnung aus.Tipp: Schreibe deinen Code in den Editor und klicke auf „Code testen“.
Test-Suite
restzeit = 30
taktisches_foul = True
if restzeit <= 10 or taktisches_foul:
print("Strafe: Zeitstrafe")
elif restzeit <= 30:
print("Strafe: Verwarnung")
else:
print("Strafe: Ermahnung")
Der digitale Schiri-Assistent
Erweitere deinen Schiri-Assistenten um weitere Spielsituationen! Baue zusätzliche Faktoren ein wie wiederholtes_foul, reklamieren oder letzter_mann.
Nutze Verknüpfungen mit and, or und not, um zwischen Pfiff, Verwarnung, Zeitstrafe oder direktem Platzverweis zu entscheiden.
Tipp: Passe den Code an, führe ihn aus oder lade dein fertiges Programm als Python-Datei herunter.
Lektion vollständig abgeschlossen!
Du hast alle Phasen gemeistert und kannst hier im Sandbox-Labor frei weiterprogrammieren.