lehrkraefte:blc:informatik:ffprg1-2020:ifelse

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:blc:informatik:ffprg1-2020:ifelse [2020/01/28 14:58]
Ivo Blöchliger [Vergleichsoperatoren]
lehrkraefte:blc:informatik:ffprg1-2020:ifelse [2022/02/24 12:33] (current)
Ivo Blöchliger [If: Selektion, Bedingte Ausführung]
Line 3: Line 3:
 <code python> <code python>
 w = -5 w = -5
-print("Die Wurzel aus %f ist %f"(w, w**0.5))+print("Die Wurzel aus %f ist %f" (w, w**0.5))
 </code> </code>
 Anstatt einfach mit einem Fehler abzubrechen, könnte man vorher überprüfen, ob das Sinn macht: Anstatt einfach mit einem Fehler abzubrechen, könnte man vorher überprüfen, ob das Sinn macht:
Line 26: Line 26:
  
 ===== Vergleichsoperatoren ===== ===== Vergleichsoperatoren =====
-  * == (zwei! Gleichheitszeichen) zur Überprüfung der Gleichheit+  * ''=='' (zwei! Gleichheitszeichen) zur Überprüfung der Gleichheit
     * das einfache Gleichheitszeichen wird für die Zuweisung (miss)gebraucht     * das einfache Gleichheitszeichen wird für die Zuweisung (miss)gebraucht
-  * <, <=, >=, >  Kleiner, Kleiner gleich, grösser gleich, grösser +  * ''<''''<nowiki><=</nowiki>''''>=''''>''  Kleiner, Kleiner gleich, grösser gleich, grösser 
-  * != ungleich+  * ''!='' ungleich
  
 ===== Logische Verknüpfungen in Python ===== ===== 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)
  
 +Hinweis: Das ''and'' hat eine höhere Priorität als das ''or'' (wie das * eine höhere Priorität hat als das +).
  
 +So erhält man ''True'' für den Ausdruck ''True or True and False'' weil zuerst das ''and'' ausgewertet wird. 
 +
 +''(True or True) and False'' ergibt dann aber ''False''.
 +
 +
 +===== Wahrheitswerte True und False =====
 +Das Ergebnis eines Vergleichs ist immer True oder False.
 +
 +Man beachte folgenden Code:
 +<code python>
 +ok = True
 +
 +# Overkill:  (ok==True ergibt einfach wieder True, und der folgende Block im if wird ausgeführt
 +if ok==True:
 +  print("Alles ok")
 +  
 +# Das reicht
 +if ok:
 +  print("Viel schlanker und einfacher zu lesen und schreiben")
 +</code>
 ===== Aufgaben ===== ===== 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 Temperatur vom Benutzer erfragt und dann mindestens drei Bereiche ausgibt, wie z.B. "kalt, warm, heiss".
Line 46: Line 71:
 elif w<10: elif w<10:
     print("Es ist kuehl!")     print("Es ist kuehl!")
-elif w<10:+elif w<18:
     print("Es ist angenehm kuehl")     print("Es ist angenehm kuehl")
 elif w<25: elif w<25:
Line 76: Line 101:
 </code> </code>
 </hidden> </hidden>
 +
 +====== Quizz ======
 +True oder False? 
 +
 +Achtung: Aufgaben 4 und 5 können **ohne Rechnen** gelöst werden!
 +<quizlib id="quiz" rightanswers="[['a1'], ['a0'], ['a1'], ['a1'], ['a0']]" submit="Check Answers">
 +    <question title="&lt;pre&gt;2>3&lt;/pre&gt;" type="radio">True|False</question>
 +    <question title="&lt;pre&gt;7>9 or 9>7&lt;/pre&gt;" type="radio">True|False</question>
 +    <question title="&lt;pre&gt;not(True and (False or True))&lt;/pre&gt;" type="radio">True|False</question>
 +    <question title="&lt;pre&gt;234*345&lt;321*251 and False&lt;/pre&gt;" type="radio">True|False</question>
 +    <question title="&lt;pre&gt;234*345&lt;321*251 or True&lt;/pre&gt;" type="radio">True|False</question>
 +</quizlib>
 +
  
  • lehrkraefte/blc/informatik/ffprg1-2020/ifelse.1580219903.txt.gz
  • Last modified: 2020/01/28 14:58
  • by Ivo Blöchliger