<    >

Turtle Programmierung in Python

Turtle-Programmierung ist eine sehr anschauliche Möglichkeit programmieren zu lernen. Die Turtle (Schildkröte) wird mit Befehlen über die Zeichenfläche geschickt und sie verfügt über einen Stift, der auf ihrem Weg eine Spur hinterlässt. Auf diese Art kann man bei der Ausführung von Programmen zusehen.
forward(), back(), fd(), bk():
schickt die Turtle vor oder zurück. Die Distanz wird beim Aufruf übergeben.
left(), right(), lt(), rt():
dreht die Turtle nach links oder nach recht. Der Winkel wird beim Aufruf übergeben.
Die am häufigsten verwendeten Befehle haben eine Kurzform: fd(), bk(), lt(), rt().
pensize():
ändert die Stiftdicke. Die Dicke wird als Übergabeparameter übergeben.
color():
Ändert die Farbe des gezogenen Strichs. Die Farbe kann zum Beispiel mit ihre Namen angegeben werden: "red", "green", "dark blue", ...
Das Beispielprogramm verdeutlicht das gesagte. Du kannst das Programm auch bearbeiten und beobachten wie sich das Ergebnis dadurch ändert.
Jedes Python-Turtle Programm importiert zu Beginn die notwendige Bibliothek, was in diesem Fall mit "from turtle import *" geschieht.
penup(), pendown() (pu(), pd()):
Damit kannst du den Stift der Turtle anheben und absenken. Zwischen den beiden Aufrufen wird nichts gezeichnet.
Das ist praktisch, wenn du die Maus bewegen willst ohne zu zeichnen.






Übungen

1)
Zeichne ein grünes Dreieck (der Drehwinkel der Turtle beträgt 120 statt 90 Grad): Dicke 3, Seitenlänge 40
und daneben ein lila-farbenes (purple) Sechseck (Drehwinkel 60 statt 90 Grad): Dicke 3, Seitenlänge 60
Zwischen den beiden Figuren verwende pu() und pd().

2)
Zeichne eine strichlierte Linie.

3)
Zeichne eine strichlierte Linie.
Jedes Segment soll eine andere Farbe haben.

4)
Zeichne einen roten sechstrahligen Stern. Die Strahlen haben die Länge 50 und Dicke 5 (pensize()).
Jeder zweite Strahl soll Dicke 10 haben.







Lösungen

Mittels Kopieren (Str + c) und Einfügen (Str + v) kannst du Programme von hier nach oben in die Programmbox bringen und ausführen.

#-------------------------------
# 1)
# Zeichne ein grünes Dreieck (120 statt 90): Dicke 3, Länge 40
# und daneben ein lila-farbenes (purple) Sechseck (60 statt 90): Dicke 3, Länge 60
# Zwischen den beiden Figuren verwende pu() und pd().

from turtle import *

color("green")
pensize(3)
fd(40)
lt(120)
fd(40)
lt(120)
fd(40)
lt(120)
pu()
fd(50)
pd()
color("purple")
fd(60)
lt(60)
fd(60)
lt(60)
fd(60)
lt(60)
fd(60)
lt(60)
fd(60)
lt(60)
fd(60)
lt(60)

# -- mit Schleife:

from turtle import *

color("green")
pensize(3)
for i in range (3):
    fd(40)
    lt(120)
pu()
fd(50)
pd()
color("purple")
for i in range (6):
    fd(60)
    lt(60)

#-------------------------------
# 2)
# Zeichne eine strichlierte Linie.

from turtle import *

fd(20)
pu()
fd(20)
pd()
fd(20)
pu()
fd(20)
pd()
fd(20)
pu()
fd(20)
pd()
fd(20)
pu()
fd(20)
pd()

# -- mit Schleife:

from turtle import *

for i in range(20):
    fd(4)
    pu()
    fd(4)
    pd()

#-------------------------------
# 3)
# Zeichne eine strichlierte Linie.
Jedes Segment soll eine andere Farbe haben.

from turtle import *

color("blue")
fd(20)
pu()
fd(20)
pd()
color("green")
fd(20)
pu()
fd(20)
pd()
color("red")
fd(20)
pu()
fd(20)
pd()
color("orange")
fd(20)
pu()
fd(20)
pd()

# -- mit Schleife:

from turtle import *
from random import *

for i in range(20):
    color(choice(["red", "green", "blue", "orange"]))
    fd(4)
    pu()
    fd(4)
    pd()

#-------------------------------
# 4)
# Zeichne einen roten sechstrahligen Stern.
# Die Strahlen haben die Länge 50 und Dicke 5 (pensize()).
# Jeder zweite Strahl soll Dicke 10 haben.

from turtle import *

color("red")
#---
pensize(5)
fd(50)
bk(50)
rt(60)
pensize(10)
fd(50)
bk(50)
rt(60)
#---
pensize(5)
fd(50)
bk(50)
rt(60)
pensize(10)
fd(50)
bk(50)
rt(60)
#---
pensize(5)
fd(50)
bk(50)
rt(60)
pensize(10)
fd(50)
bk(50)
rt(60)
#---

#---- oder mit Schleife

from turtle import *

color("red")
for i in range(3):
  pensize(5)
  fd(50)
  bk(50)
  rt(60)
  pensize(10)
  fd(50)
  bk(50)
  rt(60)
<    >