Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| planung:microbitpython [2023/03/13 21:22] – marroc | planung:microbitpython [2023/05/10 08:32] (aktuell) – alte Version wiederhergestellt (2023/01/01 21:20) marroc | ||
|---|---|---|---|
| Zeile 14: | Zeile 14: | ||
| - Multiplizieren Sie die Zahl mit 100. | - Multiplizieren Sie die Zahl mit 100. | ||
| - Halbieren Sie das Resultat. | - Halbieren Sie das Resultat. | ||
| - | - Wenn Sie bereits Geburtstag hatten, addieren Sie das aktuelle Jahr und subtrahieren 2100. (Falls das Geburtsdatum vor dem Jahr 2000 ist, so wäre dies nicht 2100 sondern 2000) | + | - Wenn Sie bereits Geburtstag hatten, addieren Sie das aktuelle Jahr und subtrahieren 2100. |
| - | - Wenn Sie noch nicht Geburtstag hatten, addieren Sie das aktuelle Jahr und subtrahieren 2101. (Falls das Geburtsdatum vor dem Jahr 2000 ist, so wäre dies 2001 und nicht 2001) | + | - Wenn Sie noch nicht Geburtstag hatten, addieren Sie das aktuelle Jahr und subtrahieren 2101. |
| - Subtrahieren Sie die letzten beiden Zahlen Ihres Jahrganges (z.B. bei 1991 subtrahieren Sie 91). | - Subtrahieren Sie die letzten beiden Zahlen Ihres Jahrganges (z.B. bei 1991 subtrahieren Sie 91). | ||
| - Ihre Zahl sollte dreistellig sein. Die erste Ziffer besteht aus der Zahl, welche Sie sich am Anfang gemerkt haben, die letzten beiden Ziffern sind Ihr Alter in Jahren. Verblüffend, | - Ihre Zahl sollte dreistellig sein. Die erste Ziffer besteht aus der Zahl, welche Sie sich am Anfang gemerkt haben, die letzten beiden Ziffern sind Ihr Alter in Jahren. Verblüffend, | ||
| Zeile 48: | Zeile 48: | ||
| **<color # | **<color # | ||
| - | **<color # | + | **<color # |
| **<color # | **<color # | ||
| Zeile 173: | Zeile 173: | ||
| * Schliessen Sie den Microbit per USB-Kabel an Ihrem Computer an. | * Schliessen Sie den Microbit per USB-Kabel an Ihrem Computer an. | ||
| - | * Öffnen Sie **https:// | + | * Öffnen Sie **https:// |
| * Ein Erklärungsvideo finden Sie [[https:// | * Ein Erklärungsvideo finden Sie [[https:// | ||
| * Grundsätzlich kann auch ein anderer Browser ihrer Wahl genutzt werden, dann muss über ein Download und ein manuelles " | * Grundsätzlich kann auch ein anderer Browser ihrer Wahl genutzt werden, dann muss über ein Download und ein manuelles " | ||
| Zeile 191: | Zeile 191: | ||
| <code python> | <code python> | ||
| - | kiste = 100 | + | Kiste = 100 |
| </ | </ | ||
| Der Wert wird einer Variablen durch das Gleichsetzen zugewiesen. Eine Zuweisung eines Werts an die Variable ist, wie wenn man einen Gegenstand in die Kiste legt. \\ | Der Wert wird einer Variablen durch das Gleichsetzen zugewiesen. Eine Zuweisung eines Werts an die Variable ist, wie wenn man einen Gegenstand in die Kiste legt. \\ | ||
| - | :!: <color # | + | :!: <color # |
| - | Im Beispiel ist eine Variable mit dem Namen //kiste// erstellt worden und in dieser Variablen wird der Wert //100// gespeichert. Jedes Mal, wenn nun die Variable //kiste// im Programm aufgerufen wird, ersetzt das Programm //kiste// durch //100//. | + | Im Beispiel ist eine Variable mit dem Namen //Kiste// erstellt worden und in dieser Variablen wird der Wert //100// gespeichert. Jedes Mal, wenn nun die Variable //Kiste// im Programm aufgerufen wird, ersetzt das Programm //Kiste// durch //100//. |
| \\ | \\ | ||
| == Beispiel == | == Beispiel == | ||
| <code python> | <code python> | ||
| - | kiste = 100 | + | Kiste = 100 |
| - | kiste = 50 | + | Kiste = 50 |
| - | kiste = 50 + kiste | + | Kiste = 50 + Kiste |
| </ | </ | ||
| - | Im obigen Beispiel eines kurzen Programms, welches von oben links zeilenweise nach unten rechts durchlaufen wird, werden der Variablen | + | Im obigen Beispiel eines kurzen Programms, welches von oben links zeilenweise nach unten rechts durchlaufen wird, werden der Variablen |
| - | * Zuerst wird der Variablen | + | * Zuerst wird der Variablen |
| - | * Dann wird die Variable | + | * Dann wird die Variable |
| - | * Die Variable | + | * Die Variable |
| Wer beim Arbeiten mit dem Micro:bit Variablen verwendet möchte, kann dies auf ganz verschiedene Arten tun. | Wer beim Arbeiten mit dem Micro:bit Variablen verwendet möchte, kann dies auf ganz verschiedene Arten tun. | ||
| Beispielsweise kann das folgende Programm ähnlich wie das Kisten-Beispiel für den Micro:bit programmiert werden: | Beispielsweise kann das folgende Programm ähnlich wie das Kisten-Beispiel für den Micro:bit programmiert werden: | ||
| - | <code python | + | <code python |
| from microbit import * | from microbit import * | ||
| - | kiste=2 | + | Kiste=2 |
| - | kiste=kiste * 3 | + | Kiste=Kiste * 3 |
| - | display.scroll(' | + | display.scroll(' |
| - | display.show(kiste) | + | display.show(Kiste) |
| </ | </ | ||
| - | In diesem Beispiel ist die Variable | + | In diesem Beispiel ist die Variable |
| + | |||
| + | // | ||
| <WRAP center round todo 80%> | <WRAP center round todo 80%> | ||
| Zeile 228: | Zeile 230: | ||
| - Studieren Sie das kurze Programm unten. Diskutieren Sie zu zweit, was hier programmiert wurde. Halten Sie dies kurz schriftlich fest. | - Studieren Sie das kurze Programm unten. Diskutieren Sie zu zweit, was hier programmiert wurde. Halten Sie dies kurz schriftlich fest. | ||
| - Schliessen Sie den Micro:bit an, kopieren Sie das Programm in Ihren Editor (mico:bit classroom). Senden Sie dies dann an den Micro:bit und überprüfen Sie so die angestellten Vermutungen und Überlegungen von Aufgabe 1. | - Schliessen Sie den Micro:bit an, kopieren Sie das Programm in Ihren Editor (mico:bit classroom). Senden Sie dies dann an den Micro:bit und überprüfen Sie so die angestellten Vermutungen und Überlegungen von Aufgabe 1. | ||
| - | - Identifizieren Sie alle Variablen und Variablenwerte dieses Programms und markieren Sie diese, indem Sie den Code in ein Textdokument kopieren und kommentieren. :!: Kommentare können mit einem # direkt im Programm notiert werden. | + | - Identifizieren Sie alle Variablen und Variablenwerte dieses Programms und markieren Sie diese, indem Sie den Code in ein Textdokument kopieren und kommentieren. |
| - | - Erweitern bzw. verändern Sie den Rechner1 so, dass auch andere Operationen (Grundoperationen) durchgeführt werden. | + | |
| </ | </ | ||
| Zeile 291: | Zeile 292: | ||
| <WRAP center round todo 80%> | <WRAP center round todo 80%> | ||
| **3.Programmieraufgabe**\\ | **3.Programmieraufgabe**\\ | ||
| - | * Was genau macht das untenstehende Programm? Schreiben Sie für jede Zeile einen Kommentar, was diese Zeile bzw. die Befehle und Methoden dieser Zeile genau bewirken. | + | Was genau macht das untenstehende Programm? Schreiben Sie für jede Zeile einen Kommentar, was diese Zeile bzw. die Befehle und Methoden dieser Zeile genau bewirken. Wo gibt es eine Variable? Verändern Sie das Programm so, dass es das Doppelte des Knopfdruckwertes zurückgibt. |
| - | * Wo gibt es Variablen? Woran erkennt man dies? | + | |
| - | * Verändern Sie das Programm so, dass es das Doppelte des Knopfdruckwertes zurückgibt. | + | |
| - | * Erweritern Sie das Programm, so dass vom Knopfdurckwert die Anzahl Drücker des zweiten Knopfes (Button B) subtrahiert wird. | + | |
| - | * Zusatz: Wie könnte das Programm verändert werden, dass der Knopfdruckwert von a und jener von b multipliziert werden? | + | |
| </ | </ | ||
| Zeile 314: | Zeile 311: | ||
| <panel title=' | <panel title=' | ||
| <code python> | <code python> | ||
| + | ## Aufgabe 1a) Lösung | ||
| + | from microbit import * | ||
| + | from math import * | ||
| + | #Variablen definieren und einen Wert zuweisen | ||
| + | a=3 | ||
| + | b=5 | ||
| + | # | ||
| + | display.scroll(' | ||
| + | display.scroll(a) | ||
| + | display.scroll(' | ||
| + | display.scroll(b) | ||
| + | display.scroll(' | ||
| + | display.scroll(' | ||
| + | display.scroll(sqrt(a^2+b^2)) | ||
| </ | </ | ||
| </ | </ | ||
| Zeile 322: | Zeile 333: | ||
| {{ : | {{ : | ||
| == Beispiel: == | == Beispiel: == | ||
| - | <code python | + | <code python |
| #Programm 1 | #Programm 1 | ||
| from microbit import * | from microbit import * | ||
| Zeile 328: | Zeile 339: | ||
| display.scroll(' | display.scroll(' | ||
| sleep(3000) #3000ms Zeit,in welcher der Benutzer den Knopf A einige Male drücken muss. | sleep(3000) #3000ms Zeit,in welcher der Benutzer den Knopf A einige Male drücken muss. | ||
| - | knopfdruck=button_a.get_presses() #Es wird gezählt, wie oft der Knopf gedrückt wurde. | + | knopfdruck=button_a.get_presses() #Es wirdgezählt, wie oft der Knopf gedrückt wurde. |
| display.scroll(knopfdruck) #Es wird die Anzahl Betätigungen angezeigt. | display.scroll(knopfdruck) #Es wird die Anzahl Betätigungen angezeigt. | ||
| </ | </ | ||
| - | Durch dieses kleine | + | Durch dieses kleine |
| :!: **Das <color # | :!: **Das <color # | ||
| Zeile 339: | Zeile 350: | ||
| Das Programm kann natürlich auch wie folgt erweitert werden. | Das Programm kann natürlich auch wie folgt erweitert werden. | ||
| == Beispiel: == | == Beispiel: == | ||
| - | <code python | + | <code python |
| #Programm 2 | #Programm 2 | ||
| from microbit import * | from microbit import * | ||
| Zeile 377: | Zeile 388: | ||
| === Beispiel: === | === Beispiel: === | ||
| {{ : | {{ : | ||
| - | <code python | + | <code python |
| #Programm 3 | #Programm 3 | ||
| from microbit import * | from microbit import * | ||
| Zeile 565: | Zeile 576: | ||
| </ | </ | ||
| - | <WRAP center round todo 80%> | + | <WRAP center round todo 60%> |
| **Lernfragen**\\ | **Lernfragen**\\ | ||
| - Wie kann erreicht werden, dass ein Teil eines Programms nur in bestimmten Fällen ausgeführt wird? | - Wie kann erreicht werden, dass ein Teil eines Programms nur in bestimmten Fällen ausgeführt wird? | ||
| Zeile 572: | Zeile 583: | ||
| - Welches sind die wichtigsten Erkenntnisse der Programmieraufgaben 1 bis 10? Notieren Sie dies kurz! | - Welches sind die wichtigsten Erkenntnisse der Programmieraufgaben 1 bis 10? Notieren Sie dies kurz! | ||
| </ | </ | ||
| - | < | ||
| - | <panel title=" | ||
| - | <code python> | ||
| - | from microbit import * | ||
| - | import music | ||
| - | import radio | ||
| - | zaehler=1 | ||
| - | puls1=0 | ||
| - | puls2=0 | ||
| - | while (zaehler< | ||
| - | display.show(Image.HEART) | ||
| - | if (button_a.is_pressed()= True): | ||
| - | display.show(' | ||
| - | sleep(200) | ||
| - | music.play(music.BA_DING) | ||
| - | sleep(15000) | ||
| - | puls1= button_a.get_presses()*4 | ||
| - | music.play(music.BA_DING) | ||
| - | display.show(' | ||
| - | display.scroll(puls1) | ||
| - | zaehler =zaehler+1 | ||
| - | elif (button_b.is_pressed()): | ||
| - | display.show(' | ||
| - | sleep(200) | ||
| - | music.play(music.BA_DING) | ||
| - | sleep(15000) | ||
| - | puls2= button_b.get_presses()*4 | ||
| - | music.play(music.BA_DING) | ||
| - | display.show(' | ||
| - | display.scroll(puls2*4) | ||
| - | zaehler =zaehler+1 | ||
| - | #senden von Informationen | ||
| - | #Der Sender - Micro:bit | ||
| - | radio.config(group=1) | ||
| - | radio.on() | ||
| - | |||
| - | radio.send(" | ||
| - | radio.send(str(puls1)) | ||
| - | radio.send(" | ||
| - | radio.send(str(puls2)) | ||
| - | </ | ||
| - | </ | ||
| - | </ | ||