Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| efinf:blcks2017:jython:tipps [2017/08/31 06:39] – Simon Knaus | efinf:blcks2017:jython:tipps [2017/09/12 13:21] (current) – Simon Knaus | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ==== 2.10 ==== | ||
| + | * Abbruch bei '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * Abbruch der Schleife. Das Beispielprogramm definiert eine sogenannte // | ||
| + | stopit = False | ||
| + | def changeglobalvariabe(): | ||
| + | # definiert stopit als globale Variable | ||
| + | global stopit | ||
| + | stopit = True | ||
| + | | ||
| + | print(stopit) | ||
| + | changeglobalvariabe() | ||
| + | print(stopit) | ||
| + | |||
| + | while True: | ||
| + | if(stopit): | ||
| + | break | ||
| + | </ | ||
| + | |||
| + | ==== 3.10 ==== | ||
| + | |||
| + | Bei A1 geht es darum, dass mit Zufallszahlen experimentiert wird. Die ganze Darstellung ist für uns untergeordnet. Versuch den Code unten zu verstehen und ergänze ihn, mit zufällig gezogenen Monaten. | ||
| + | |||
| + | <code python birthday.py> | ||
| + | |||
| + | from gpanel import * | ||
| + | import random | ||
| + | |||
| + | # Anzahl Wiederholungen | ||
| + | NB_GAMES = 100 | ||
| + | # Wartezeit zwischen den Wiederholungen | ||
| + | DELAY_TIME = 1000 | ||
| + | # Anzahl Kinder | ||
| + | NB_CHILDREN = 5 | ||
| + | |||
| + | def play(): | ||
| + | # | ||
| + | for n in range(12): | ||
| + | year[n] = 0 | ||
| + | for n in range(NB_CHILDREN): | ||
| + | ''' | ||
| + | Hier müssen zufällige Monate gezogen werden und die gezogenen Kinder zu den Monaten in years addiert werden | ||
| + | | ||
| + | ''' | ||
| + | move(5 + 10 * month, -5 + year[month] * 10) | ||
| + | fillCircle(5) | ||
| + | # | ||
| + | for month in year: | ||
| + | if month > 1: | ||
| + | | ||
| + | | ||
| + | |||
| + | # Gitterbrett Zeichnen | ||
| + | def drawBoard(): | ||
| + | # | ||
| + | | ||
| + | # | ||
| + | for n in range(12): | ||
| + | move(5 + 10 * n, 60) | ||
| + | rectangle(10, | ||
| + | |||
| + | makeGPanel(0, | ||
| + | #years initialisieren | ||
| + | year = [0] * 12 | ||
| + | n = 0 | ||
| + | nbHit = 0 | ||
| + | while n < NB_GAMES: | ||
| + | n += 1 | ||
| + | | ||
| + | rc = play() | ||
| + | if rc: | ||
| + | nbHit += 1 | ||
| + | | ||
| + | | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== A1 ==== | ||
| + | <code python> | ||
| + | bioNoten = [] | ||
| + | note = 0 | ||
| + | |||
| + | while note != None: | ||
| + | note = inputFloat(" | ||
| + | #so lange in der Schlaufe, bis Abbrechen gedrückt wird | ||
| + | # noten den bioNoten hinzufügen. | ||
| + | |||
| + | # durchschnitt der bioNoten ausgeben | ||
| + | # hilfreiche funktionen: * sum(liste) ergibt summe, | ||
| + | # * len(liste) ergibt länge | ||
| + | |||
| + | |||
| + | #schönes ausgeben | ||
| + | |||
| + | |||
| + | noten = [2,3,4] | ||
| + | |||
| + | print(' | ||
| + | </ | ||