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 15:09]
Ivo Blöchliger [Quizz]
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) +  * ''and'' (beides, sowohl als auch) 
-  * or (das eine, das andere oder beides) +  * ''or'' (das eine, das andere oder beides) 
-  * not (nicht) +  * ''not'' (nicht) 
-  * != (für XOR, wenn das mal jemand braucht)+  * ''!='' (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 ===== ===== Wahrheitswerte True und False =====
 Das Ergebnis eines Vergleichs ist immer True oder 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 52: 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 84: Line 103:
  
 ====== Quizz ====== ====== Quizz ======
-True oder False? +True oder False?  
-<quizlib id="quiz" rightanswers="['False', 'True', 'False', 'False', 'True']" submit="Check Answers"> + 
-    <question title="&lt;pre&gt;2>3&lt;/pre&gt;" type="text"></question> +Achtung: Aufgaben 4 und 5 können **ohne Rechnen** gelöst werden! 
-    <question title="&lt;pre&gt;7>9 or 9>7&lt;/pre&gt;" type="text"></question> +<quizlib id="quiz" rightanswers="[['a1']['a0']['a1']['a1']['a0']]" submit="Check Answers"> 
-    <question title="&lt;pre&gt;not(True and (False or True))&lt;/pre&gt;" type="text"></question> +    <question title="&lt;pre&gt;2>3&lt;/pre&gt;" type="radio">True|False</question> 
-    <question title="&lt;pre&gt;234*345&lt;321*251 and False&lt;/pre&gt;" type="text"></question> +    <question title="&lt;pre&gt;7>9 or 9>7&lt;/pre&gt;" type="radio">True|False</question> 
-    <question title="&lt;pre&gt;234*345&lt;321*251 or True&lt;/pre&gt;" type="text"></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> </quizlib>
  
  
  • lehrkraefte/blc/informatik/ffprg1-2020/ifelse.1580220585.txt.gz
  • Last modified: 2020/01/28 15:09
  • by Ivo Blöchliger