Lösungsvorschlag Einseitige bedingte Anweisung
Aus ComeniusWiki
Version vom 30. März 2014, 09:48 Uhr von B.Schiller (Diskussion | Beiträge)
//Eine Anweisung um den Code zu verkürzen. Anweisung Umdrehen LinksDrehen LinksDrehen *Anweisung //Um das Problem von einem beliebigen Startpunkt aus lösen zu können, muss sich //Karol erst einmal auf eine Startposition in der Ecke bringen. Anweisung PositionEinnehmen wiederhole 2 mal wiederhole solange NichtIstWand Schritt *wiederhole LinksDrehen *wiederhole *Anweisung //Die Anweisung Test überprüft, ob eine Marke vorhanden ist. //Wenn Karol dabei nicht vor der Wand steht, geht er einen Schritt weiter, //dreht sich um, legt einen Ziegel, dreht sich wieder um und macht weiter. //Steht er vor der Wand, macht er einen Schritt zurück, legt den Ziegel, //stellt sich auf den Ziegel und macht dann weiter. Anweisung Test wenn IstMarke dann wenn NichtIstWand dann Schritt Umdrehen Hinlegen Umdrehen sonst Umdrehen Schritt Umdrehen Hinlegen Schritt *wenn *wenn *Anweisung Anweisung Bahn Wiederhole solange NichtIstWand Test Schritt Test //Lässt man hier den 2.Test aus, werden Marken vor der Wand ignoriert. *wiederhole *Anweisung Programm PositionEinnehmen Wiederhole 4 mal Bahn LinksDrehen Schritt LinksDrehen Bahn RechtsDrehen Schritt RechtsDrehen *wiederhole Bahn //Karol läuft vier mal auf und ab und dann noch eine Bahn bis ans Ziel. *Programm