Jahrgangsstufe 8 - Informatik - Donnerstag, der 18. Februar 2021


Mein Name:
Jahrgang/Klasse:
Meine E-Mail-Adresse:

Erklärungen und Klarstellungen (Teil 3):

Es gibt diverse Missverständnisse bezüglich des Aufbaus von Kara-Programmen. Das folgende Beispielprogramm zeigt deshalb die gewünschte Struktur noch einmal.
Im ersten Teil des Programmes sind alle Methoden aufgeführt, durch die Kara etwas lernt. Hier sind das turnAround(), gehe(), lege() und dreieck(). Kara lernt jede Methode nur einmal, also muss man sie nicht immer wieder neu hinschreiben.
Im zweiten Teil des Programmes passiert dann endlich etwas. Die gelernten Methoden werden aufgerufen und Kara führt sie jetzt auch tatsächlich aus.

# --------------------------------------------------------
# ----- 1. Teil des Programmes: --------------------------
# ----------- Kara lernt und tut noch nichts.-------------
# --------------------------------------------------------
def turnAround():
    kara.turnLeft()
    kara.turnLeft()

def gehe(schritte):
    for i in range(schritte):
        kara.move()

def lege(schritte):
    for i in range(schritte):
        kara.putLeaf()
        kara.move()

def dreieck(hoehe):
  zeile = 1
  while zeile <= hoehe:
       lege(zeile)
       turnAround()
       gehe(zeile)
       kara.turnLeft()
       kara.move()
       kara.turnLeft()
       zeile = zeile + 1
# --------------------------------------------------------
# ----- 2. Teil des Programmes:---- Das Hauptprogramm ----
# ------------------ Kara tut etwas! ---------------------
# --------------------------------------------------------
dreieck(9)        # Kara zeichnet Dreieck mit Hoehe 9

kara.turnRight()  # Kara dreht sich nach rechts,
gehe(2)           # geht zwei Schritte nach unten und
kara.turnLeft()   # dreht sich wieder nach links.

dreieck(11)       # Kara zeichnet Dreieck mit Hoehe 11.

Das dargestellte Programm ergibt das folgende Bild:

Auftrag:

Kara soll mit einer Schleife 5 Dreiecke nebeneinander zeichnen, zurücklaufen und darunter mit einer zweiten Schleife 5 Quadrate bzw. Rechteckrahmen zeichnen. So soll es dann aussehen:

Achtung: Beim Zeichnen eines Dreiecks startet Kara links oben in der Ecke und endet links unten.
Beim Zeichnen eines Rechteckrahmens startet Kara in der linken oberen Ecke und endet auch an dieser Ecke.
Schreibe das Programm so wie im Beispiel oben angegeben, teste es aus mit PythonKara und kopiere dann nur das Hauptprogramm hier in das Formular.



Wie immer stehe ich bei Fragen zur Verfügung, per Formular auf den Seiten, per E-Mail (gi@gymbala.de) oder per TEAMS-Chat, das ist egal.