Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:microbit_und_roboter_programmieren:aufgaben_hof [2024-09-30 07:54] – [Aufgabe G6 (Medium): Remote Control] hofgf_informatik:microbit_und_roboter_programmieren:aufgaben_hof [2025-09-23 12:14] (aktuell) hof
Zeile 262: Zeile 262:
 Tipps: Tipps:
    * Definiere zuerst Bilder für die sechs Seiten des Würfels.    * Definiere zuerst Bilder für die sechs Seiten des Würfels.
-   * Verwende das ''random''-Modul, um eine random Zahl (resp. random Bild) zu bestimmen.+   * Verwende das ''random''-Modul, um eine random Zahl (resp. random Bild) zu bestimmen ([[gf_informatik:programmieren_ii#zufallszahlen|1M Dossier zu Zufallszahlen]]).
  
 {{ :gf_informatik:wuerfel.jpg?100 |}} {{ :gf_informatik:wuerfel.jpg?100 |}}
Zeile 512: Zeile 512:
 <code python> <code python>
 from microbit import * from microbit import *
 + 
 while True: while True:
-    # Sound level from 0..250+    # Sound level from 0..255
     level = microphone.sound_level()     level = microphone.sound_level()
-    # How many leds do we light up+    # How bright do we get
-    leds = int(25 * level / 250) +    brightness = int(* level / 255
-    # How bright ist the last led? + 
-    brightness = level % 10 +
     for x in range(5):     for x in range(5):
         for y in range(5):         for y in range(5):
-            value = x * 5 + y +            display.set_pixel(x, y, brightness) 
-            if value < leds: + 
-                display.set_pixel(x,y,9) +
-            elif value == leds: +
-                display.set_pixel(x,y,brightness+
-            else: +
-                display.set_pixel(x,y,0+
     sleep(10)     sleep(10)
 </code> </code>
Zeile 550: Zeile 542:
         for y in range(5):         for y in range(5):
             if x < 4:             if x < 4:
 +                # Copy value from next column, such that the columns
 +                # scroll from right to left side of display. 
                 display.set_pixel(x, y, display.get_pixel(x+1,y))                 display.set_pixel(x, y, display.get_pixel(x+1,y))
             elif 4-y < leds:             elif 4-y < leds:
 +                # In the rightmost column, draw the bar for the current
 +                # volume.
                 display.set_pixel(x, y, 9)                 display.set_pixel(x, y, 9)
             elif 4-y == leds:             elif 4-y == leds:
 +                # Top non-dark pixel of the bar is dimmed according to fractional 
 +                # volume.
                 display.set_pixel(x, y, brightness)                 display.set_pixel(x, y, brightness)
             else:             else:
 +                # The top pixels of the last column are black (cleared)
                 display.set_pixel(x, y, 0)                 display.set_pixel(x, y, 0)
    
Zeile 929: Zeile 928:
 ++++ ++++
 </nodisp> </nodisp>
-<nodisp 1>+<nodisp 2>
 ++++Lösungen| ++++Lösungen|
  
  • gf_informatik/microbit_und_roboter_programmieren/aufgaben_hof.1727682848.txt.gz
  • Zuletzt geändert: 2024-09-30 07:54
  • von hof