Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| gf_informatik:microbit_programmieren_loesungen [2021-09-13 10:07] – gra | gf_informatik:microbit_programmieren_loesungen [2022-08-10 11:24] (aktuell) – gelöscht sca | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Microbit programmieren: | ||
| - | ==== Aufgaben A ==== | ||
| - | |||
| - | === A1 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | display.show(Image.DUCK) | ||
| - | </ | ||
| - | |||
| - | === A2 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | myImages = [Image.SAD, Image.MEH, Image.YES, Image.NO, Image.COW] | ||
| - | |||
| - | display.show(myImages, | ||
| - | </ | ||
| - | |||
| - | === A3 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | all_1 = Image(" | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | |||
| - | all_3 = Image(" | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | |||
| - | all_5 = Image(" | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | |||
| - | all_7 = Image(" | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | |||
| - | all_9 = Image(" | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | " | ||
| - | |||
| - | myImages = [all_1, all_3, all_5, all_7, all_9] | ||
| - | |||
| - | display.show(myImages, | ||
| - | </ | ||
| - | |||
| - | === A4 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | while True: | ||
| - | for brightness in range(1, | ||
| - | sleep(200) | ||
| - | for column in range(5): | ||
| - | for row in range (5): | ||
| - | display.set_pixel(column, | ||
| - | </ | ||
| - | |||
| - | ==== Aufgaben B ==== | ||
| - | |||
| - | === B1 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | while True: | ||
| - | if button_a.is_pressed(): | ||
| - | display.show(Image.GHOST) | ||
| - | if button_b.is_pressed(): | ||
| - | display.show(Image.RABBIT) | ||
| - | if pin_logo.is_touched(): | ||
| - | display.clear() | ||
| - | </ | ||
| - | |||
| - | === B2 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | while True: | ||
| - | if button_a.is_pressed(): | ||
| - | display.scroll(" | ||
| - | if button_b.is_pressed(): | ||
| - | display.show(Image.RABBIT) | ||
| - | if pin_logo.is_touched(): | ||
| - | display.clear() | ||
| - | </ | ||
| - | |||
| - | === B3 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | while True: | ||
| - | if button_a.is_pressed(): | ||
| - | display.scroll(" | ||
| - | if button_b.is_pressed(): | ||
| - | display.show(Image.RABBIT) | ||
| - | if pin_logo.is_touched(): | ||
| - | display.clear() | ||
| - | </ | ||
| - | |||
| - | === B4 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | while True: | ||
| - | if button_a.is_pressed(): | ||
| - | display.show(Image.HAPPY) | ||
| - | elif button_b.is_pressed(): | ||
| - | display.show(Image.SAD) | ||
| - | elif pin_logo.is_touched(): | ||
| - | display.show(Image.HEART) | ||
| - | else: | ||
| - | display.clear() | ||
| - | </ | ||
| - | |||
| - | === B5 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | while True: | ||
| - | if pin_logo.is_touched(): | ||
| - | display.scroll(str(button_a.get_presses()-button_b.get_presses())) | ||
| - | </ | ||
| - | |||
| - | ==== Aufgaben C ==== | ||
| - | |||
| - | === C1 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | while True: | ||
| - | if accelerometer.was_gesture(" | ||
| - | display.show(Image.DUCK) | ||
| - | elif accelerometer.was_gesture(" | ||
| - | display.show(Image.HOUSE) | ||
| - | </ | ||
| - | |||
| - | === C2 === | ||
| - | [[https:// | ||
| - | |||
| - | === C3 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | import random | ||
| - | |||
| - | while True: | ||
| - | if accelerometer.was_gesture(" | ||
| - | display.show(random.randint(1, | ||
| - | sleep(1000) | ||
| - | display.clear() | ||
| - | </ | ||
| - | |||
| - | === C4 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | import random | ||
| - | |||
| - | while True: | ||
| - | if accelerometer.was_gesture(" | ||
| - | display.show(random.randint(1, | ||
| - | sleep(1000) | ||
| - | if pin_logo.is_touched(): | ||
| - | display.clear() | ||
| - | </ | ||
| - | |||
| - | === C5 – Variante A === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | myImages = [] | ||
| - | |||
| - | for i in range(0, 9, 1): | ||
| - | myImg = Image() | ||
| - | myImg.fill(i) | ||
| - | myImages.append(myImg) | ||
| - | |||
| - | myPos = 0 | ||
| - | |||
| - | while True: | ||
| - | sleep(200) | ||
| - | if myPos < len(myImages) - 1: | ||
| - | myPos += 1 | ||
| - | else: | ||
| - | myPos = 0 | ||
| - | display.show(myImages[myPos]) | ||
| - | </ | ||
| - | |||
| - | === C5 – Variante B === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | myImages = [] | ||
| - | |||
| - | for i in range(0, 9, 1): | ||
| - | myImg = Image() | ||
| - | myImg.fill(i) | ||
| - | myImages.append(myImg) | ||
| - | |||
| - | display.show(myImages, | ||
| - | </ | ||
| - | |||
| - | === C6 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | myImages = [] | ||
| - | myPos = 0 | ||
| - | |||
| - | for i in range(0, 9, 1): | ||
| - | myImg = Image() | ||
| - | myImg.fill(i) | ||
| - | myImages.append(myImg) | ||
| - | |||
| - | while True: | ||
| - | if(button_a.is_pressed()): | ||
| - | sleep(100) | ||
| - | if myPos < len(myImages) - 1: | ||
| - | myPos += 1 | ||
| - | else: | ||
| - | myPos = 0 | ||
| - | display.show(myImages[myPos]) | ||
| - | </ | ||
| - | |||
| - | === C7 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | |||
| - | myImages = [] | ||
| - | myPos = 0 | ||
| - | |||
| - | for i in range(0, 10, 1): | ||
| - | myImg = Image() | ||
| - | myImg.fill(i) | ||
| - | myImages.append(myImg) | ||
| - | |||
| - | while True: | ||
| - | xAcceleration = accelerometer.get_x() | ||
| - | # xAcceleration von +/-2040 nach 0...9 umrechnen: | ||
| - | myPos = abs(xAcceleration) // 205 | ||
| - | print(myPos) | ||
| - | display.show(myImages[myPos]) | ||
| - | </ | ||
| - | |||
| - | ==== Aufgaben D ==== | ||
| - | |||
| - | === D1 === | ||
| - | <code python> | ||
| - | from microbit import* | ||
| - | import music | ||
| - | |||
| - | # Frère Jacques: | ||
| - | melodyJacques = [' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | |||
| - | note = 0 | ||
| - | while True: | ||
| - | if(button_a.is_pressed()): | ||
| - | music.play(melodyJacques[note]) | ||
| - | sleep(30) | ||
| - | if(note < len(melodyJacques)-1): | ||
| - | note += 1 | ||
| - | else: | ||
| - | note = 0 | ||
| - | </ | ||
| - | |||
| - | === D2 === | ||
| - | <code python> | ||
| - | from microbit import* | ||
| - | import music | ||
| - | |||
| - | # Frère Jacques: | ||
| - | melodyJacques = [' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | |||
| - | note = 0 | ||
| - | while True: | ||
| - | if(button_a.is_pressed()): | ||
| - | display.show(Image.HAPPY) | ||
| - | music.play(melodyJacques[note]) | ||
| - | sleep(30) | ||
| - | if(note < len(melodyJacques)-1): | ||
| - | note += 1 | ||
| - | else: | ||
| - | note = 0 | ||
| - | else: | ||
| - | display.show(Image.ARROW_W) | ||
| - | </ | ||
| - | |||
| - | === D3 === | ||
| - | <code python> | ||
| - | from microbit import* | ||
| - | import music | ||
| - | |||
| - | # Frère Jacques: | ||
| - | melodyJacques = [' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | |||
| - | # Popcorn: | ||
| - | melodyPop = | ||
| - | ' | ||
| - | ' | ||
| - | ' | ||
| - | |||
| - | noteA = 0 | ||
| - | noteB = 0 | ||
| - | while True: | ||
| - | if(button_a.is_pressed()): | ||
| - | music.set_tempo(bpm = 120) # Diese Melodie normal spielen | ||
| - | display.show(Image.ASLEEP) | ||
| - | music.play(melodyJacques[noteA]) | ||
| - | sleep(30) | ||
| - | if(noteA < len(melodyJacques)-1): | ||
| - | noteA += 1 | ||
| - | else: | ||
| - | noteA = 0 | ||
| - | |||
| - | elif(button_b.is_pressed()): | ||
| - | music.set_tempo(bpm = 200) # Diese Melodie schneller spielen | ||
| - | display.show(Image.MUSIC_CROTCHET) | ||
| - | music.play(melodyPop[noteB]) | ||
| - | sleep(30) | ||
| - | if(noteB < len(melodyPop)-1): | ||
| - | noteB += 1 | ||
| - | else: | ||
| - | noteB = 0 | ||
| - | |||
| - | else: | ||
| - | display.clear() | ||
| - | </ | ||
| - | |||
| - | === D4 === | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | import music | ||
| - | |||
| - | while True: | ||
| - | for freq in range(330, 770, 10): | ||
| - | music.pitch(freq, | ||
| - | for freq in range(770, 330, -10): | ||
| - | music.pitch(freq, | ||
| - | </ | ||