Meister Pyoogway

Aufgabe

In dieser Aufgabe geht es darum, eine erste spaßige Erfahrung mit Python-Modulen zu machen. Vor allem geht es darum, zu üben, wie man sich in Dokumentationen einarbeitet. Dazu schauen wir uns das Modul turtle an, mit dem man relativ einfach Muster zeichnen kann. Um auf der VM turtle zu nutzen, müsst ihr zusätzlich das Packet python3-tk installieren (mit sudo apt install python3-tk). Danach könnt ihr turtle in Python ganz einfach mit import turtle in euer Projekt importieren.

Story: Meister Pyoogway hat eine Weisheit erlangt. Anstatt wie jedes andere Tier mit Pinsel und Papier zu zeichnen (langweilig), befestigt man eine Hacke am Hinterteil und läuft dann auf einem großen Feld hin und her (viel cooler). Damit dabei sinnvolle Zeichnungen entstehen, befolgt man spezielle Laufalgorithmen. Hilf Meister Pyoogway, den Leuten im Tal des Pythons von dieser Technik zu überzeugen, indem du ihm passende Algorithmen schreibst!

1.

Zunächst müssen Sie sich in turtle einarbeiten. Die offizielle Dokumentation finden Sie hier. Beantworten Sie folgende Fragen:

  • Nach welchem Prinzip zeichnet man in turtle?
  • Was tun die folgenden Methoden und welche Parameter benötigen diese dazu?
    1. forward
    2. backward
    3. right
    4. left
    5. circle
    6. up
    7. down
  • Was tun diese Funktionsaufrufe?
    1. color("green")
    2. shape("turtle")
  • Wie kann man verhindern, dass das Fenster sofort nach Programmende geschlossen wird?
2.

Entwickeln Sie nun Methoden, um die unten gelisteten Muster zu zeichnen. Die Größe der Muster soll mit passenden Parametern einstellbar sein:

  1. Ein Quadrat 🟦
  2. Ein gleichseitiges Dreieck 🔺
  3. Ein Würfel 🧊
  4. Ein überraschter Smiley 😮
  5. Ein Herz ❤️
Bonus (leicht):

Füllen Sie die Muster mit Farbe! Dazu benötigen Sie weitere Methoden - schauen Sie in die Dokumentation!

Bonus 2 (mittel bis extrem schwer):

Zeichnen Sie zusätzlich folgende Muster:

  • (Revolutionärer großer) Würfel mit einem Herzen auf der Vorderseite (mittel schwer)

Diese folgenden Muster sind extrem schwer und wurden nur inkludiert um zu zeigen, was man so abgespactes zeichnen kann mit (rekursiven) Algorithmen.

  • Koch-Kurve1
  • Pythagoras-Baum2
3.

Schreiben Sie ein Programm, mit dem man die Schildkröte zur Laufzeit steuern kann.

Tipp für 2.

Achtung Spoiler!

Tipp für 3.

Achtung Spoiler!