# Programmieren 1
## Mit Kara aus dem Labyrinth
Willkommen in der Welt von Kara 🐞, einem Marienkäfer, den wir durch seine kleine Welt steuern.
Falls du bereits etwas Python programmieren kannst oder sogar bereits Kara kennst, darfst du direkt zum Kapitel [[.:labyrinthe]] springen.
### Kara mit einem Programm bewegen
Kara lässt sich nur durch ein Computerprogramm bewegen. Kara kennt die untenstehenden Befehle. Wie oft in der Computerwelt sind die Befehle auf Englisch.
* `kara.move()` bewegt Kara ein Feld nach vorne.
* `kara.turnLeft()` dreht Kara um 90° nach links.
* `kara.turnRight()` dreht Kara um 90° nach rechts.
Jeder Befehl steht auf einer eigenen Zeile.
#### Aufgabe A1 - Sequenz
Drücke auf Play (▶) oder drücke im Editor C+Enter, um das Programm auszuführen!
Ergänze den obenstehenden Code, so dass Kara zum Pilz gelangt!
Verwende dazu die folgenden Tastaturkürzel, um bestehende Zeilen zu duplizieren und zu verschieben:
^ Tastaturkürzel ^ Effekt ^
| Alt+Up | Verschiebt die Zeile(n) nach oben. |
| Alt+Down | Verschiebt die Zeile(n) nach unten. |
| A+⇧+Up | Dupliziert die Zeile(n) nach oben. |
| A+⇧+Down | Dupliziert die Zeile(n) nach unten. |
TTTTTTTTT
T T T
T T T
T > T T
TTT T T
T M
TTT TTT T
T T
TTTTTTTTT
kara.move()
kara.move()
kara.turnRight()
kara.move()
kara.move()
kara.move()
kara.turnRight()
kara.move()
kara.move()
kara.turnLeft()
kara.move()
kara.move()
kara.move()
assert kara.x == 7 and kara.y == 5, f"Kara sollte an Position 7/5 sein, war aber an {kara.x}/{kara.y}"
### Unterrichtsnotizen
Achtung: Wenn du die Wiki-Seite neu lädst, kann dein Code verloren gehen.
Du bist selbst dafür verantwortlich, dass du **deine Codes speicherst** und mit deinen Notizen ergänzt, damit du diese später (z.B. für die Prüfungsvorbereitung) noch hast! Gehe deshalb wie folgt vor:
- Plattform für Notizen wählen, z.B.:
* OneNote: erstelle ein neues Notizbuch auf (im Web: [[https://onenote.cloud.microsoft/|OneNote]]).
* Word: lege ein Word-Dokument an (im Web: [[https://word.new|word.new]]) und speichere es auf [[user:hof:onedrive#aufgabe_b_-_ordnerstruktur_erstellen|OneDrive]].
- Erstelle eine **Überschrift** passend zur Aufgabe, z.B. "Aufgabe A1".
- **Code speichern** - zwei Optionen:
* [[user:hof:copypaste#copy-paste|Copy-Paste]] des Codes ins Dokument
* [[user:hof:sharing#teilen_von_code_via_permalink|Kopiere einen Permalink]] und füge ihn ins Dokument ein.
### Weiter
Toll, du hast eine _Sequenz_ von mehreren Anweisungen geschrieben!
Wäre es denn möglich, Kara ein Programm vorzugeben, das mit weniger Befehlen auskommt? Oder sogar eines, das aus verschiedenen Labyrinthen immer den Ausgang findet?
Weiter gehts mit [[.:loops]]!