This is an old revision of the document!
If: Selektion, Bedingte Ausführung
Testen Sie folgendes Programm
w = -5 print("Die Wurzel aus %f ist %f", (w, w**0.5))
Anstatt einfach mit einem Fehler abzubrechen, könnte man vorher überprüfen, ob das Sinn macht:
# -*- coding: utf-8 -*- # Das ist ein Kommentar. Die obige Zeile erlaubt es # Umlaute ä, ö, ü in Kommentare zu schreiben. Sonst geht das in TigerJython aber nicht. w = float(raw_input("Zahl = ")) # Testen, ob die Wurzel überhaupt gezogen werden kann if (w>=0): print("Die Wurzel aus %f ist ungefähr %f" % (w, w**0.5)) else: print("Keine Wurzel aus negativen Zahlen, sorry")
Beachten Sie folgende Punkte:
- raw_input liefert eine Zeichenkette vom Benutzer. Diese muss erst noch mit float in eine Zahl umgewandelt werden.
- Am Ende der Zeilen mit if und else steht ein Doppelpunkt
- Die Zeilen danach sind eingrückt. Es können mehrere eingrückte Zeilen vorkommen.
Vergleichsoperatoren
- == (zwei! Gleichheitszeichen) zur Überprüfung der Gleichheit
- das einfache Gleichheitszeichen wird für die Zuweisung (miss)gebraucht
- <, ⇐, >=, > Kleiner, Kleiner gleich, grösser gleich, grösser
- != ungleich
Logische Verknüpfungen in Python
- and (beides, sowohl als auch)
- or (das eine, das andere oder beides)
- not (nicht)
- != (für XOR, wenn das mal jemand braucht)
Wahrheitswerte True und False
Das Ergebnis eines Vergleichs ist immer True oder False.
Aufgaben
- Schreiben Sie ein Programm, das die Temperatur vom Benutzer erfragt und dann mindestens drei Bereiche ausgibt, wie z.B. “kalt, warm, heiss”.
- Schreiben Sie ein Programm, das die quadratische Gleichung $ax^2+bx+c=0$ löst, wenn die Werte für $a$, $b$, $c$ am Programmbeginn gegeben sind. Unterscheiden Sie dazu die Fälle, je nach Anzahl der Lösungen