lehrkraefte:blc:informatik:glf20:programmieren:while-zahlenraten

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
Next revision Both sides next revision
lehrkraefte:blc:informatik:glf20:programmieren:while-zahlenraten [2020/10/28 20:19]
Ivo Blöchliger [while-loop]
lehrkraefte:blc:informatik:glf20:programmieren:while-zahlenraten [2020/10/28 20:51]
Ivo Blöchliger [Skelett für das Rate-Spiel]
Line 16: Line 16:
  
 ===== Zufallszahlen ===== ===== Zufallszahlen =====
 +<WRAP todo>
 +Python kann Zufallszahlen erzeugen. Dafür muss die entsprechende Funktion importiert (d.h. verfügbar gemacht) werden.
 +
 +Testen und verstehen Sie folgendes Programm:
 <code  python> <code  python>
 from random import randrange  # Funktion randrange importieren from random import randrange  # Funktion randrange importieren
  
-wurfel = ""+wurfel = ""     # Für die Ausgabe auf einer Zeile
 for i in range(50): for i in range(50):
     wurfel += "%d " % randrange(1,7)  # Zufallszahl von 1 bis und mit 6     wurfel += "%d " % randrange(1,7)  # Zufallszahl von 1 bis und mit 6
Line 25: Line 29:
 print(wurfel) print(wurfel)
 </code> </code>
 +
 +Passen Sie das Programm so an, dass Roulette-Zahlen (0 bis und mit 36) oder Münzwürfe (0 oder 1) erzeugt werden.
 +</WRAP>
  
  
Line 41: Line 48:
 </WRAP> </WRAP>
  
-===== Skelett für das Rate-Spiel ===== +===== Programmieren Sie das Rate-Spiel ===== 
 +<WRAP todo> 
 +Starten Sie mit folgendem Skelett (Struktur des Programms ist gegeben, z.T. nur in Kommentaren, die Details in Python fehlen aber noch.
 <code python> <code python>
 grenze = 100 grenze = 100
Line 64: Line 72:
  
 </code> </code>
 +</WRAP>
 +
 +===== Der Computer soll raten =====
 +Programmieren Sie ein Programm, das die Zahl erraten kann. Damit man dem Computer bequem mitteilen kann, ob die gesuchte Zahl kleiner, gefunden oder grösser ist, stelle ich folgende Funktion ''dialog'' zur Verfügung, die -1 (kleiner), 0 (gefunden) oder +1 (grösser) liefert:
 +<code python>
 +from entrydialog import *
 +
 +def dialog(meldung):
 +    knoepfe = [ButtonEntry(i) for i in ("kleiner", "GEFUNDEN!", "grösser")]
 +    pane = EntryPane(meldung, *knoepfe)
 +    dlg = EntryDialog(450, 200, pane)
 +    while not dlg.isDisposed():
 +        for i in range(3):
 +            if knoepfe[i].isTouched():
 +                dlg.dispose()
 +                return i-1
 +
 +# Zum Testen:
 +resultat = dialog("Ich rate 50")
 +if resultat<0:
 +  print("Es wurde kleiner gedrückt")
 +elif resultat==0:
 +  print("Es wurde GEFUNDEN gedrÜckt")
 +else:
 +  print("Es wurde grösser gedrückt")
 +</code>
 +
  • lehrkraefte/blc/informatik/glf20/programmieren/while-zahlenraten.txt
  • Last modified: 2022/09/19 19:47
  • by Olaf Schnürer