===== Ozobots grafisch programmieren =====
Wir nähern uns der Programmierung mit einem Robotersystem an, dass auf sehr unterschiedliche Art und Weise programmiert werden kann - dem OzoBot EVO. Der OzoBot wird im einfachsten Fall mit Hilfe gemalter Farbcodes programmiert. Damit du weißt, was möglich ist, schaue dir {{ :informatik:algorithmisch:ozobot:7a4d3f8f-ozobot-color-codes-guide-2023.pdf |dieses Material}} an.
**Hinweis**:\\
Es kommt spätestens hier der Punkt, an dem einige schneller als andere sind, die vielleicht gar nicht alle Aufgaben schaffen. Das ist Ordnung! Wenn für dich etwas zu einfach ist - springe gerne zur nächsten Aufgabe. Bewahre bitte auch vermeintliche Fehlversuche auf - schmeißt euren Papierstapel nicht weg - das sind wertvolle Beiträge, an denen man Debugging üben kann.
Du kannst diese Grundelemente an Farbcodes beliebig kombinieren. Ich mute euch die englische Fassung zu - das ist später beim Programmieren eh guter Stil z.B. beim Kommentieren.
**Aufgabe 1 - experimentieren und entdecken (Partnerarbeit)**\\
Probiere zunächst mit den verschiedenen möglichen Farbcodes etwas herum. Du brauchst ein Gefühl dafür, wie die zeichnen muss, damit der Ozobot sich so verhält, wie du es geplant hast. \\
Tipps:
* Das Umgebungslicht, bzw. die Umgebungshelligkeit kann eine Rolle spielen.
* Experimentiere vor allem mit Strichdicken und Linienabständen etwas herum
**Aufgabe 2 - Lösungen für Vorgaben erarbeiten (Partnerarbeit)**\\
Du siehst in {{ :informatik:algorithmisch:ozobot:schreibschriftbuchstaben.pdf |diesem Material}} die Kleinbuchstaben a-h in Schreibschrift. Zeichne die Buchstaben a-h so in Schreibschrift, dass der Ozobot die Buchstaben korrekt und in voller Länge abfährt.
**Aufgabe 3 - Lösungen für Vorgaben erarbeiten (Partnerarbeit)**\\
Hier wird es deutlich komplexer, weil du ggf. Bedingungen und Zähler einbauen musst. Du findest die Aufgaben {{ :informatik:algorithmisch:ozobot:cft_ozobot_arbeitsblatt_labyrinthe_1.pdf |hier}}. Du darfst dir die Grundstrukturen auch drucken (UTAX als Drucker im PC-Raum wählen).
Erinnere dich noch einmal an die Merkmale eines Algorithmus:
=== Lernen: Merkmale eines Algorithmus wissen, erklären und anwenden können ===
Ein Algorithmus ist eine Vorschrift zur Lösung eines Problems. Er hat folgende Eigenschaften:
- Das Verfahren muss in einem endlichen Text eindeutig beschreibbar sein (**Finitheit**).
- Jeder Schritt des Verfahrens muss tatsächlich ausführbar sein (**Ausführbarkeit**).
- Das Verfahren darf nur endlich viele Schritte benötigen (**Terminierung**).
- Der Algorithmus muss bei denselben Voraussetzungen das gleiche Ergebnis liefern (**Determiniertheit**).
- Die nächste anzuwendende Regel im Verfahren ist zu jedem Zeitpunkt eindeutig definiert (**Determinismus**).
**Aufgabe 4 - Algorithmusbegriff anwenden (alleine)**\\
Inwiefern erfüllt dein Blatt Papier mit Anweisungen (Farbcodes) die Bedingungen eines Algorithmus? Antworte in vollständigen Sätzen in Textform.