Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| gf1:programmieren2 [2025/04/23 12:25] – marroc | gf1:programmieren2 [2025/05/06 15:18] (aktuell) – marroc | ||
|---|---|---|---|
| Zeile 60: | Zeile 60: | ||
| **Aufgabe 2: Der Microbit - Display für Ausgaben**\\ | **Aufgabe 2: Der Microbit - Display für Ausgaben**\\ | ||
| - Verbinden Sie den BBC: | - Verbinden Sie den BBC: | ||
| - | - Öffnen Sie in einem Browser diesen [[https:// | + | - Öffnen Sie in einem Browser |
| - Falls sich im Editor schon Programmiercode befindet, dann entfernen Sie diesen! Kopieren Sie den folgenden Code in den Editor: | - Falls sich im Editor schon Programmiercode befindet, dann entfernen Sie diesen! Kopieren Sie den folgenden Code in den Editor: | ||
| <code python> | <code python> | ||
| from microbit import * #Import aller Bibliotheken | from microbit import * #Import aller Bibliotheken | ||
| counter = 0 # Startwert der Variable | counter = 0 # Startwert der Variable | ||
| - | while True: # while - Schleife | + | display.scroll(' |
| + | while True: # wird durchgeführt, | ||
| if button_a.was_pressed(): | if button_a.was_pressed(): | ||
| counter = counter + 1 # Erhöhe die Variable namens counter um 1 | counter = counter + 1 # Erhöhe die Variable namens counter um 1 | ||
| Zeile 71: | Zeile 72: | ||
| </ | </ | ||
| - Klicken Sie anschliessend auf **Send to micro: | - Klicken Sie anschliessend auf **Send to micro: | ||
| - | - Beobachten | + | - Ändern |
| - | - Ändern Sie das Programm wie folgt ab und flashen Sie es danach: Anstatt " | + | |
| - Diskutieren Sie zu zweit die folgenden Fragen! | - Diskutieren Sie zu zweit die folgenden Fragen! | ||
| - | - Geht das Programm auf dem Microbit verloren, wenn man diesen vom Strom trennt? | + | - Was ändert sich, wenn '' |
| - | - Was bedeutet die Zeile "from microbit import *"? | + | - Warum genau muss '' |
| + | - Was bedeutet die Zeile "from microbit import *"? | ||
| + | - Eine Verbildlichung des Programms ist in folgendem Diagramm zu sehen. Passen Sie dies nun an, nachdem Sie die Aufgabe 2 gelöst haben.\\ {{: | ||
| + | < | ||
| + | <panel title=" | ||
| + | Sicher haben Sie sich auch schon gefragt, warum die beiden Zeile '' | ||
| + | <WRAP nicebox grey> | ||
| + | Ein import-Befehl in Python holt nützliche Werkzeuge | ||
| </ | </ | ||
| + | Bezogen auf Python und auch auf den Micro:bit bedeutet dies: \\ | ||
| + | In Python gibt es vordefinierte Bibliotheken (eine Sammlung von Dateien, sogenannten Modulen), die von jedem Programmierer genutzt werden kann, es muss somit keine Erweiterung installiert werden, die benötigten " | ||
| + | Folgenden (oder ähnliche) Importbefehle könnten für Sie nützlich sein: | ||
| + | ^ Befehl ^ Bedeutung ^ | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |'' | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| <WRAP nicebox yellow> | <WRAP nicebox yellow> | ||
| - | <color # | + | <color # |
| - | Ergänzen Sie ihr OneNote mit diesen Befehl in Ihrem persönlichen** <color # | + | Neben dem Befehl |
| - | \\ | + | Es ist weiter möglich, nur einzelne Pixel zu manipulieren mit Hilfe des Befehls |
| - | **Display**: | + | Der Befehl |
| - | Neben dem Befehl display.scroll() gibt es ebenfalls den Befehl display.show(), | + | :!: Ein [[https:// |
| - | Es ist weiter möglich, nur einzelne Pixel zu manipulieren mit Hilfe des Befehls | + | |
| - | Der Befehl display.set_pixel(0, | + | |
| - | --> Link zur ausführlichen Dokumentation: https:// | + | |
| </ | </ | ||
| ===== Programmierkonzepte Variable ===== | ===== Programmierkonzepte Variable ===== | ||
| - | Ziel dieses Teils ist es, erste Erfahrungen im Programmieren | + | Ziel dieses Teils ist es, erste Programmiererfahrungen |
| + | \\{{ : | ||
| + | Variablen sind in der Programmierung sehr nützlich. Man kann sie sich wie Behälter vorstellen, in denen Daten gespeichert werden. Stell dir eine Kiste vor, in der du etwas aufbewahrst – der Inhalt der Kiste ist der Wert der Variable. | ||
| + | Beispiel: | ||
| + | <code python> | ||
| + | kiste = 100 | ||
| + | </ | ||
| + | Hier wird der Wert 100 in die Variable '' | ||
| - | {{ :gf1: | + | Beispiel: |
| - | Variablen haben in der Programmierung grosse Nützlichkeit, | + | |
| - | Eine Variable ist wie ein Behälter, in dem Daten gespeichert werden können. Man kann sich eine Kiste vorstellen, in der etwas aufbewahrt werden kann und der Wert der Variable wäre somit der aufbewahrte Inhalt der Kiste. | + | |
| <code python> | <code python> | ||
| kiste = 100 | kiste = 100 | ||
| + | kiste = 50 | ||
| + | kiste = 50 + kiste | ||
| </ | </ | ||
| + | In diesem kurzen Programm wird der Variable '' | ||
| - | 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. \\ | + | * Zuerst |
| - | :!: <color # | + | * Dann wird kiste auf 50 gesetzt, |
| - | 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//. | + | * Schließlich wird kiste um 50 erhöht, also auf 100 gesetzt (50 + 50). |
| - | \\ | + | |
| - | == Beispiel == | + | |
| + | Auch beim Arbeiten mit dem Micro:bit arbeitet, werden uns Variablen einen guten Dienst leisten. | ||
| + | Im Beispiel unten ist '' | ||
| <code python> | <code python> | ||
| - | kiste = 100 | + | from microbit import * #Import aller Bibliotheken |
| - | kiste = 50 | + | counter |
| - | kiste = 50 + kiste | + | display.scroll(' |
| + | while True: # wird durchgeführt, | ||
| + | if button_a.was_pressed(): | ||
| + | counter | ||
| + | display.scroll(counter) | ||
| </ | </ | ||
| + | |||
| + | Wenn wir ein Beispiel mit der Kiste von weiter oben wieder aufnehmen, dann könnten wir dies auf den Micro:bit wie folgt ausführen lassen: | ||
| - | Im obigen Beispiel eines kurzen Programms, welches von oben links zeilenweise nach unten rechts durchlaufen wird, werden der Variablen kiste verschiedene Werte zugewiesen: | ||
| - | * Zuerst wird der Variablen kiste den Wert 100 zugewiesen, | ||
| - | * Dann wird die Variable kiste auf 50 gesetzt, der Wert 100 wird überschrieben und geht somit verloren. | ||
| - | * Die Variable kiste wird danach um 50 erhöht. Das ist so zu lesen, dass der neue Wert kiste gleich 50 plus dem alten Wert von kiste ist. | ||
| - | |||
| - | 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: | ||
| <code python kiste.py> | <code python kiste.py> | ||
| from microbit import * | from microbit import * | ||
| Zeile 130: | Zeile 151: | ||
| </ | </ | ||
| - | In diesem Beispiel ist die Variable ' | + | In diesem Beispiel ist die Variable |
| <WRAP nicebox green> | <WRAP nicebox green> | ||
| **Aufgabe 3 - Variablen und mehr**\\ | **Aufgabe 3 - Variablen und mehr**\\ | ||
| - | - Studieren Sie das kurze Programm | + | Gegeben ist das folgende |
| - | - Schliessen Sie den Micro:bit an, kopieren Sie das Programm in Ihren [[https:// | + | |
| - | - Identifizieren Sie alle Variablen und Variablenwerte dieses Programms und markieren Sie diese, indem Sie den Code in ein ihr OneNote kopieren und kommentieren. :!: Kommentare können mit einem # direkt im Programm notiert werden. | + | |
| - | - Was geschieht denn, wenn Sie die zweite Zeile (from math import *) aus dem Programm entfernen? Probieren Sie es aus und beschreiben Sie. | + | |
| - | </ | + | |
| <code python Rechner1.py> | <code python Rechner1.py> | ||
| #Rechner 1 | #Rechner 1 | ||
| Zeile 149: | Zeile 165: | ||
| a=3 | a=3 | ||
| b=5 | b=5 | ||
| - | c=pi | + | c=0 |
| # | # | ||
| display.scroll(' | display.scroll(' | ||
| Zeile 160: | Zeile 176: | ||
| display.scroll(c) | display.scroll(c) | ||
| </ | </ | ||
| - | [[gf1:programmieren3|Weiter | + | **Auftrag** |
| + | - Studieren Sie zu zweit das Programm //Rechner 1// und kommentieren Sie jede einzelne Zeile dazu. | ||
| + | - Verändern Sie das Programm, so dass alle vier Grundoperationen (+,-, $\cdot$, :) und das Potenzieren und Wurzelziehen möglich ist. Kontrollieren Sie das Funktionieren des Programms //Rechner 1//, indem Sie die Werte der Variablen verändern. | ||
| + | - Lösen Sie das folgende [[https:// | ||
| + | < | ||
| + | <panel title=" | ||
| + | === Addition: + === | ||
| + | <code python> | ||
| + | result = 5 + 3 # result ist 8 | ||
| + | </ | ||
| + | === Subtraktion: | ||
| + | <code python> | ||
| + | result = 5 - 3 # result ist 2 | ||
| + | </ | ||
| + | === Multiplikation: | ||
| + | <code python> | ||
| + | result = 5 * 3 # result ist 15 | ||
| + | </ | ||
| + | === Division: / === | ||
| + | <code python> | ||
| + | result = 6 / 3 # result ist 2.0 (erzeugt ein Float) | ||
| + | </ | ||
| + | === Potenzieren: | ||
| + | <code python> | ||
| + | result = 2 ** 3 # result ist 8 (2 hoch 3) | ||
| + | </ | ||
| + | === Wurzeln: | ||
| + | <color # | ||
| + | <code python> | ||
| + | import math | ||
| + | result = math.sqrt(9) | ||
| + | Für andere Wurzeln kannst du Potenzen verwenden: | ||
| + | result = 27 ** (1/3) # result ist 3.0 (Kubikwurzel von 27) | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | [[gf1:programmieren4|Weiter]] | ||