# Turtle-Lesson: Lösungen ## Level 1 ```python # quadrat t.forward(100) t.left(90) t.forward(100) t.left(90) t.forward(100) t.left(90) t.forward(100) ``` ## Level 2 ```python # quadrat mit loop for i in range(4): t.forward(100) t.left(90) ``` ## Level 3 ```python # variablen für n-eck groesse = 100 seiten = 4 # quadrat mit loop for i in range(seiten): t.forward(groesse) t.left(360/seiten) ``` ## Level 4 ```python # prozedur für n-eck def eck(seiten,seitenlaenge): for i in range(seiten): t.forward(seitenlaenge) t.left(360/seiten) # quadrat eck(4,100) ``` ## Level 5 ```python # prozedur für n-eck def eck(seiten,seitenlaenge): for i in range(seiten): t.forward(seitenlaenge) t.left(360/seiten) # mehrere n-ecks for i in range (3,7): eck(i,100) ``` ## Bonuslevel ```python t.setheading(90) # turtle schaut nach oben def tree(length): if length > 4: # Rekursions-Bedingung (immer notwendig) t.forward(length) # zweig t.left(45) # ast links tree(length * 0.6) # rekursion t.right(90) # drehen tree(length * 0.6) # rekursion t.left(45) # ast rechts t.backward(length) tree(100) ``` # Beispiele aus dem Kurs ## Turtle von der Teilnehmerin Ulrike Förstel ```python import turtle t = turtle.Turtle() t.speed(5) # 1:slowest, 3:slow, 5:normal, 10:fast, 0:fastest def eck(ecke,laenge,farbe): t.color(farbe) for i in range(ecke): t.forward(laenge) t.right(360/ecke) t.color("black") t.forward(50) t.left(15) t.forward(50) t.left(15) t.forward(50) eck(8,20,"red") t.left(30) t.forward(50) t.left(30) t.forward(50) eck(8,20,"red") t.left(15) t.forward(50) t.left(15) t.forward(50) eck(8,20,"red") t.left(30) t.forward(50) t.left(30) t.forward(50) t.left(15) t.forward(50) t.left(15) t.forward(50) eck(8,20,"red") t.left(30) t.forward(50) t.left(30) t.forward(50) eck(8,20,"red") t.left(15) t.forward(50) t.left(15) t.forward(50) eck(8,20,"red") t.left(30) t.forward(50) t.left(30) t.forward(50) t.color("blue") for i in range(6): t.forward(40) t.right(360/6) t.color("black") ```