Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| lehrkraefte:blc:informatik:ffprg1-2020:ifelse [2020/03/02 16:47] – [Logische Verknüpfungen in Python] Ivo Blöchliger | lehrkraefte:blc:informatik:ffprg1-2020:ifelse [2022/02/24 11:33] (current) – [If: Selektion, Bedingte Ausführung] Ivo Blöchliger | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== If: Selektion, Bedingte Ausführung ====== | ||
| + | Testen Sie folgendes Programm | ||
| + | <code python> | ||
| + | w = -5 | ||
| + | print(" | ||
| + | </ | ||
| + | Anstatt einfach mit einem Fehler abzubrechen, | ||
| + | <code python> | ||
| + | # -*- 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(" | ||
| + | # Testen, ob die Wurzel überhaupt gezogen werden kann | ||
| + | if (w>=0): | ||
| + | print(" | ||
| + | else: | ||
| + | print(" | ||
| + | </ | ||
| + | |||
| + | 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 ===== | ||
| + | * '' | ||
| + | * das einfache Gleichheitszeichen wird für die Zuweisung (miss)gebraucht | ||
| + | * ''<'', | ||
| + | * '' | ||
| + | |||
| + | ===== Logische Verknüpfungen in Python ===== | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | Hinweis: Das '' | ||
| + | |||
| + | So erhält man '' | ||
| + | |||
| + | '' | ||
| + | |||
| + | |||
| + | ===== Wahrheitswerte True und False ===== | ||
| + | Das Ergebnis eines Vergleichs ist immer True oder False. | ||
| + | |||
| + | Man beachte folgenden Code: | ||
| + | <code python> | ||
| + | ok = True | ||
| + | |||
| + | # Overkill: | ||
| + | if ok==True: | ||
| + | print(" | ||
| + | | ||
| + | # Das reicht | ||
| + | if ok: | ||
| + | print(" | ||
| + | </ | ||
| + | ===== 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 | ||
| + | |||
| + | <hidden Lösungsvorschläge> | ||
| + | <code python temperatur.py> | ||
| + | # -*- coding: utf-8 -*- | ||
| + | w = int(raw_input(" | ||
| + | if w<0: | ||
| + | print(" | ||
| + | elif w<10: | ||
| + | print(" | ||
| + | elif w<18: | ||
| + | print(" | ||
| + | elif w<25: | ||
| + | print(" | ||
| + | else: | ||
| + | print(" | ||
| + | </ | ||
| + | |||
| + | <code python quadratisch.py> | ||
| + | # -*- coding: utf-8 -*- | ||
| + | a=2 | ||
| + | b=3 | ||
| + | c=-3 | ||
| + | |||
| + | if a==0: | ||
| + | | ||
| + | else: | ||
| + | # Diskriminante | ||
| + | d = b*b-4*a*c | ||
| + | if (d<0): | ||
| + | print(" | ||
| + | elif d==0: # Achtung, Vergleich mit Dezimalzahlen liefert nicht immer das gewuenschte Ergebnis! | ||
| + | print(" | ||
| + | else: | ||
| + | d=d**0.5 | ||
| + | x1 = (-b+d)/ | ||
| + | x2 = (-b-d)/ | ||
| + | print(" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ====== Quizz ====== | ||
| + | True oder False? | ||
| + | |||
| + | Achtung: Aufgaben 4 und 5 können **ohne Rechnen** gelöst werden! | ||
| + | <quizlib id=" | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | |||