Also meine Aufgabe ist es ein Programm in Pythonkara zu schreiben:
Kara merkt sich die Uhrzeit mit einem Pilz, der schrittweise um einen Baum geschoben wird. Kara soll hier den Pilz - egal, wo er sich zunächst befindet - um einen Schritt weiterverschieben.
(a) Entwickle einen Algorithmus in Struktogrammform und übersetze ihn in ein Python-Programm.
(b) (noch schwieriger) Kara soll auch wieder zurück zur Ausgangsposition laufen.
//////////////

Dazu habe ich folgendes geschrieben:
Code: Alles auswählen
def back():
kara.move()
kara.move()
kara.move()
kara.turnLeft()
kara.move()
kara.turnRight()
kara.turnRight()
xBaum=4
yBaum=4
world.setTree(xBaum,yBaum,True)
found=False
while not found:
kara.turnRight()
kara.turnRight()
kara.move()
kara.move()
kara.turnLeft()
kara.move()
kara.turnLeft()
if kara.mushroomFront():
kara.move()
kara.turnLeft()
kara.move()
kara.turnRight()
kara.move()
break
kara.move()
if kara.mushroomFront():
kara.move()
kara.turnLeft()
kara.move()
kara.turnRight()
break
kara.move()
if kara.mushroomFront():
kara.turnLeft()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
break
kara.move()
kara.turnRight()
if kara.mushroomFront():
kara.move()
kara.turnRight()
kara.turnRight()
kara.move()
kara.turnLeft()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
break
kara.move()
if kara.mushroomFront():
kara.turnLeft()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
back()
break
kara.move()
kara.turnRight()
if kara.mushroomFront():
kara.move()
kara.turnRight()
kara.turnRight()
kara.move()
kara.turnLeft()
back()
break
kara.move()
if kara.mushroomFront():
kara.turnLeft()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
kara.move()
kara.turnRight()
kara.move()
kara.move()
kara.turnLeft()
back()
break
kara.move()
kara.turnRight()
if kara.mushroomFront():
kara.move()
kara.turnLeft()
kara.move()
kara.turnRight()
kara.move()
kara.move()
kara.turnRight()
kara.move()
kara.move()
break
Und meine eigentlich Frage ist, ob ihr mit Tipps oder Ideen geben könntet wie ich diesen Code kürzer bekommen kann, weil
er nach meinem Geschmack einfach zu lang ist.(Kara und den Pilz platzieren ich manuell)