Skip to Content
RobotikPrüfungsvorbereitung

Umfang

  • Die Prüfung wird auf Exam.net stattfinden und 60 Minuten dauern. Sie umfasst sowohl Theorie als auch praktische Programmieraufgaben.
  • Sie werden Zugang zum Microbit-Editor  und seiner Dokumentation haben, mit dem Sie dank dem Simulator auf der rechten Seite auch zuhause üben können.
  • Es gelten die Lernziele der Lektionen, die wir behandelt haben, sofern sie hier nicht ausgeschlossen werden:
    • Bei der Lektion zu den Knöpfen haben wir die Knacknuss-Aufgabe nicht behandelt.

Folgende Übungsaufgaben sollten Ihnen zur Prüfungsvorbereitung hilfreich sein.

Herz pocht nicht

Hilfe! Folgendes Programm zeigt immer nur ein grosses Herz an. Erklären Sie meinen Fehler und was man auf welchen Linien hinzufügen müsste.

from microbit import * while True: display.show(Image.HEART) sleep(1000) display.show(Image.HEART_SMALL)

Lösung

Nach display.show(Image.HEART_SMALL) wiederholt der Microbit die while-Schleife sofort und zeigt wieder das grosse Herz an. Man müsste also etwas warten mit sleep(), z.B. sleep(500).


Muster selbst zeichnen

Was für ein Muster generiert folgenden Code? Sagen Sie voraus, welche LEDs nach diesem Programm angestellt sein werden.

from microbit import * for i in range(1,4): display.set_pixel(i, 1, 9) for i in range(1,2): display.set_pixel(i, 2, 9) for i in range(0,3): display.set_pixel(2, i, 0) display.set_pixel(3, 3, 0)

Lösung

microbit-led-pattern3.png

Muster nachprogrammieren

Schreiben Sie ein Programm mit so wenigen Zeilen Code wie möglich, das folgendes Muster auf dem Display generiert. (Ohne Image() zu gebrauchen. Leerzeilen zählen nicht.)

microbit-90-examprep-pattern-1.png

Lösung

from microbit import * for i in range(0,4): display.set_pixel(1, i, 9) for i in range(2,5): display.set_pixel(i, 4, 9) display.set_pixel(4, 1, 9)

Spalten füllen

Schreiben Sie ein Programm, das im Sekundentakt ein LED nach dem andern der mittleren Spalte anstellt.

Lösung

from microbit import * for i in range(5): display.set_pixel(2,i,9) sleep(1000)

Display füllen

Schreiben Sie ein Programm mit einer Funktion fill(anzahl), die in den mittleren drei Spalten die gewünschte Anzahl LEDs anstellt. Ein Beispiel-Auftruf für 13 LEDs wäre fill(13) und würde so aussehen:

microbit-90-fillmiddle.png

Lösung

from microbit import * def fill(anzahl): angestellt = 0 for x in range(1,4): for y in range(5): if angestellt == anzahl: return display.set_pixel(x,y,9) angestellt += 1 fill(13)

Display mit Knöpfen auffüllen

Erweitern Sie das fill()-Programm so, dass die Spalten nicht automatisch auffüllen, sondern dass man die Knöpfe A und B drücken kann, und dann jeweils ein LED mehr (Knopf B) oder weniger (Knopf A) anstellt. Achtung: Beachten Sie die “Edge-Cases” - d.h. die Randfälle, wenn Sie beispielsweise bereits keine LEDs angestellt haben und nochmal A drücken.

Lösung

from microbit import * def fill(anzahl): display.clear() angestellt = 0 for x in range(1,4): for y in range(5): if angestellt == anzahl: return display.set_pixel(x,y,9) angestellt += 1 leds = 7 fill(leds) while True: if button_a.was_pressed() and leds > 0: leds -= 1 fill(leds) if button_b.was_pressed() and leds < 15: leds += 1 fill(leds)
Last updated on