Nicht immer soll etwas eine bestimmte Anzahl oft wiederholt werden. Häufig
soll die Wiederholung enden, wenn eine bestimmte Situation oder Bedingung vorliegt.
Ein Mähroboter hat üblicherweise ein bestimmtes Gebiet, das er abfahren soll, das durch so genannte
Begrenzungsdrähte, die im Rasen verlegt sind, begrenzt wird. Sobald er auf eine dieser Begrenzungsdrähte
trifft, dreht er um. Wir setzen dies in unserer Simulation ganz ähnlich um. Wir lassen den Roboter solange
geradeaus fahren, bis er auf eine Begrenzungslinie trifft. Dann soll er sich um einen zufälligen Winkel
zwischen 150° und 210° drehen und seine Fahrt fortsetzen. Die Begrenzung wird durch ein neues Sprite realisiert,
das die Form eines schwarzen Rechtecks und den Namen Begrenzung hat.
Das Vorliegen einer Bedingung wird durch einen Wahrheitswert (wahr oder falsch) als sechseckiger Block dargestellt. In diesem Fall verwenden wir den Block , der je nachdem, ob das schwarze Rechteck vom Mähroboter berührt wird oder nicht, den entsprechenden Wahrheitswert repräsentiert. Als Wiederholung verwenden wir den Block . Die Anweisungen innerhalb dieses Blocks werden solange wiederholt, bis eine bestimmte Bedingung erfüllt ist.
Die Animation zeigt, wie der Mähroboter unabhängig von seiner Position geradeaus bis zur Begrenzung fährt.
Der zweite wichtige Block ist der für die Erzeugung von zufälligen Zahlen. Du findest
ihn in der Kategorie Operatoren. Er kann immer dort in anderen Blöcken eingesetzt
werden, wo eine konkrete Zahl stehen kann.
Jetzt müssen wir nur noch dafür sorgen, dass dieser Programmteil immer wieder ausgeführt wird. Wir verwenden dazu eine Wiederholung mit einer festen Anzahl von 200.
Damit haben wir schon einen ganz gut funktionierenden Mähroboter entworfen, der über längere Zeit den eingezäunten Bereich abmäht. Um zu sehen, wie erfolgreich er nach seiner Arbeit ist, werden wir den Ablauf etwas beschleunigen. Dazu packen wir unseren Algorithmus in den Block . Dieser bewirkt, dass die Anweisungen innerhalb des Blocks mit maximaler Geschwindigkeit ausgeführt werden.
Außerdem wäre es natürlich interessant zu untersuchen, wie sich unser Mähroboter in
anderen Gärten verhält. Mäht er auch entlegene und verwinkelte Bereiche gleichmäßig?
Wir überprüfen, dies indem wir keine rechteckige Begrenzung,
sondern einen beliebigen Linienzug wählen. Dazu musst du zunächst das Objekt Begrenzung auswählen,
anschließend auf die Registerkarte Kostüme klicken und mit Hilfe des Stiftsymbols einen
neuen Begrenzungsdraht zeichnen.
Die folgende Animation zeigt, wie du vorgehen musst.