#11 Buchstabensalat

In der vorletzten Aufgabe verbindest du Konzepte, die du in den vorherigen Übungen bereits gemeistert hast: Schleifen, Bewegung, LEDs und den Einsatz des Bildschirmes. Gleichzeitig lernst du einen neuen Operator zum Verbinden von Werten kennen:

Sieh dir zuerst die möglichen Buchstaben an und suche dir einen aus:

Versuche jeden Schritt der Aufgabe – Buchstaben nachfahren, LEDs einschalten, Ausgabe des Buchstabens am Bildschirm und rückwärts fahren – Stück für Stück zu erledigen und teste zwischendurch, ob dein mBot auch das tut was er soll.

Die Lösung findest du wie immer weiter unten.

In dieser Musterlösung werden wir den Buchstaben C nachfahren. Dazu verwenden wir einen Ausdruck im A4 Format und werden die Maße verwenden. Das musst du aber nicht machen!

Der einfachste Weg wäre natürlich jede Bewegung vollständig als Codeblock einzufügen:

Es gibt aber einen Trick: Anstatt die Bewegungen in VORWÄRTS und RÜCKWÄRTS aufzuteilen, können wir die Rückwärtsfahrt auch mit einer Vorzeichenänderung über Operatoren durchführen – bei einer positiven Zahl (z.B. +23) fährt der mBot 23 cm vorwärts, bei einer negativen Zahl (z.B. -23) fährt der mBot 23 cm rückwärts. Das funktioniert auch mit unseren Winkeln!

Auf diesem Weg kann der Code mit einer Schleife verkürzt werden. Wir müssen dazu nicht mehr machen, als nach der ersten Schleife die Werte auf negative Zahlen zu ändern. Dazu verwenden wir eine VARIABLE “vorzeichen” und den OPERATOR VERBINDE … MIT … :

Was passiert in diesem Code?

Für die Vorwärtsfahrt setzen wir das Vorzeichen zuerst auf ‘+’. In der Schleife wird es durch den Operator mit der Entfernung oder dem Winkel verbunden. Nachdem die Schleife einmal durchgeführt und der Buchstabe nachgefahren wurde, setzen wir das Vorzeichen am Ende nur auf ‘-‘ und beim nächsten Durchgang fährt der mBot so die selbe Strecke, nur rückwärts.

Bei anderen Buchstaben kannst du zusätzliche Schleifen verwenden – wie beim E, in dem sich ein Muster erkennen lässt – um den Code übersichtlicher und kürzer zu halten.