Punktestand beim Basketballturnier
AFB I–IIBeim Schulturnier notiert ein Programm den Spielstand der 9b:
team = "9b"punkte = 0punkte = punkte + 3punkte = punkte + 2fouls = 1fouls = fouls + 1punkte = punkte + 1im_finale = Falseprint(team, punkte, fouls, im_finale)
- Nenne alle Variablen des Programms mit ihrem Datentyp.
- Bestimme die Ausgabe des Programms. Halte die Werte der Variablen nach jeder Zeile in einer Tabelle fest.
- Erläutere am Beispiel von Zeile 3, was bei
punkte = punkte + 3im Speicher passiert, und warum dieselbe Zeile in der Mathematik keinen Sinn ergäbe.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
team: str („9b“ steht in Anführungszeichen) · punkte: int · fouls: int · im_finale: bool.
Erwartungshorizont zu Aufgabe b)
- nach Zeile 1–2: team = "9b", punkte = 0
- nach Zeile 3: punkte = 3
- nach Zeile 4: punkte = 5
- nach Zeile 5–6: fouls = 1, dann fouls = 2
- nach Zeile 7–8: punkte = 6, im_finale = False
9b 6 2 False
Erwartungshorizont zu Aufgabe c)
Python wertet zuerst die rechte Seite aus: Es holt den aktuellen Wert von punkte (0) und rechnet 0 + 3 = 3. Dieses Ergebnis wird danach unter dem Namen punkte gespeichert und ersetzt den alten Wert. In der Mathematik wäre punkte = punkte + 3 eine Gleichung, die für keine Zahl stimmt (0 = 3). In Python bedeutet = aber „bekommt den Wert“, nicht „ist gleich“.
Die Wetterstation der Schule
AFB II–IIIDie Wetter-AG will die Messwerte ihrer Station speichern. Leons erster Versuch:
ort = Hannovertemperatur = 18,5regen mm = 2.4windig = trueprint(ort, temperatur, regen_mm, windig)
- Analysiere das Programm: Finde alle vier Fehler und gib jeweils an, ob Python eine Fehlermeldung zeigt.
- Implementiere eine fehlerfreie Fassung. Am Mittag ist es 3.5 Grad wärmer: Erhöhe die Temperatur mit einer Zuweisung und gib zum Schluss alle Werte sowie den Datentyp von temperatur aus.
- Entscheide begründet, welcher Datentyp jeweils am besten passt: Anzahl der Messungen, Luftdruck in hPa (z. B. 1013.2), Name der Station, „Sensor defekt?“, Postleitzahl 01067.
Hinweise
Hinweis zu Aufgabe a)
Hinweis zu Aufgabe b)
Hinweis zu Aufgabe c)
Erwartungshorizont
Erwartungshorizont zu Aufgabe a)
Zeile 1: Hannover ohne Anführungszeichen wird als Variable gesucht → NameError. Zeile 2: 18,5 erzeugt keinen Fehler, speichert aber zwei Werte (18, 5) statt einer Kommazahl — ein heimlicher Fehler. Zeile 3: Leerzeichen im Namen → SyntaxError (den meldet Python als Erstes, noch vor dem Start). Zeile 4: true klein → NameError. Zeile 5 benutzt schon den richtigen Namen regen_mm.
Erwartungshorizont zu Aufgabe b)
Mögliche Lösung:
ort = "Hannover"temperatur = 18.5regen_mm = 2.4windig = Truetemperatur = temperatur + 3.5print(ort, temperatur, regen_mm, windig)print(type(temperatur))
Hannover 22.0 2.4 True <class 'float'>
Erwartungshorizont zu Aufgabe c)
Anzahl der Messungen: int (ganze Zahl). Luftdruck: float (Kommazahl). Name: str. „Sensor defekt?“: bool (ja/nein → True/False). Postleitzahl: str — mit ihr wird nicht gerechnet, und als Zahl ginge die führende 0 verloren (plz = 01067 ist in Python sogar ein SyntaxError). Also plz = "01067".
