At My Fingertips

Documentation

Schleifen: Grafikreihen

Einführung

from pytamaro import (
    Color, Graphic, rotate, beside, empty_graphic, 
    rectangle, rgb_color, show_graphic
)

def karo_reihe(anzahl: int, farbe: Color) -> Graphic:
    karo = rotate(45, rectangle(50, 50, farbe))
    reihe = empty_graphic()

    for _ in range(anzahl): # _ ist eine Variable
        reihe = beside(reihe, karo)
    
    return reihe

BLAU = rgb_color(15, 150, 250)

show_graphic(karo_reihe(8, BLAU))

Lösung

Acht Quadrate auf einer Ecke stehend (Karos), nebeneinander. ♦♦♦♦♦♦♦♦

Überprüfen Sie mit folgender Codezelle:

Loading...

Lösung

  1. reihe ist die Akkumulatorvariable: Sie akkumuliert (sammelt, speichert, zählt zusammen) alle Werte (hier die Grafiken karo) in einer bestimmten Anordnung.
  2. _ ist die Schleifenvariable (Laufvariable, Indexvariable): Sie wird im Schleifenkopf for _ in range(anzahl): initialisiert und nimmt bei jedem Schleifendurchlauf den nächsten Wert ein. Alle Werte der Schleifenvariable werden auch im Schleifenkopf definiert, hier mit dem Befehl range. Wir verwenden den Variablennamen _ in Python, wenn der Wert der Schleifenvariable nicht verwendet wird. _ ist nur ein Platzhalter.

Wertetabellen für Grafiken

Lösung

nbeside(reihe, karo)reihe (neu)
0beside(0x0, 🔷)🔷
1beside(🔷, 🔷)🔷🔷
2beside(🔷🔷, 🔷)🔷🔷🔷
3beside(🔷🔷🔷, 🔷)🔷🔷🔷🔷
.........
7beside(🔷🔷🔷🔷🔷🔷🔷, 🔷)🔷🔷🔷🔷🔷🔷🔷🔷

Zusatzbemerkungen

Bei Grafiken ist der Startwert von Akkumulatoren oft eine Grafik der Grösse 0x0, also das Grafikäquivalent zur Zahl 0. Dies können wir mit der PyTamaro-Funktion empty_graphic darstellen.

Die Ausgabe erfolgt nicht als Seiteneffekt, deshalb wird nur das Endprodukt an den Aufrufer zurückgegeben (return). Dieser gibt den Rückgabewert, hier ♦♦♦♦♦♦♦♦, an die Ausgabefunktion show_graphic weiter.

Vier Grundschritte

Oft ist Grafikcode mit Schleifen in vier Grundschritten aufgebaut. Diese sind als Kommentare im Code markiert:

def karo_reihe(anzahl: int, farbe: Color) -> Graphic:
    # 1. die sich zu wiederholende Grafik erstellen:
    karo = rotate(45, rectangle(50, 50, farbe))
    # 2. den Akkumulator (leer) erstellen
    reihe = empty_graphic()

    # 3. die sich wiederholenden Grafiken in einer
    # Schleife dem wachsenden Akkumulator zuweisen:
    for _ in range(anzahl): 
        reihe = beside(reihe, karo)
    
    # 4. den gefüllten Akkumulator zurückgeben
    return reihe

Anwendungen

Verwenden Sie nun diese vier Schritte, um eigene Grafiken zu erstellen.

turm

Vorgehen

  1. die sich zu wiederholende Grafik erstellen: etage etage

  2. den Akkumulator (leer) erstellen: turmbau

  3. die sich wiederholenden Grafiken in einer Schleife dem wachsenden Akkumulator zufügen

  4. den gefüllten Akkumulator zurückgeben

Loading...
Lösung
from pytamaro import rgb_color, overlay, white, above

def turm(anzahl_etagen: int) -> Graphic:
    GRAU = rgb_color(47, 79, 79)
    seite = 60 
    etage = overlay( # 1
        rectangle(seite / 2, seite / 2, white),
        rectangle(seite, seite, GRAU)
    )
    turmbau = empty_graphic() # 2

    for _ in range(anzahl_etagen): # 3
        turmbau = above(turmbau, etage)
    
    return turmbau # 4

textregen

Gehen Sie die gleichen Schritte durch wie oben:

  1. text benutzen, um die sich zu wiederholende regen_zeile zu zeichnen: regen_zeile
  2. Akkumulator regen (leer) erstellen
  3. for-Schleife benutzen, um mehrere regen_zeilen übereinander zu zeichnen
  4. Akkumulator zurückgeben
Loading...

Was Sie geübt und gelernt haben

Programmierkonzepte

  • Sie können die Konzepte Akkumulator und Schleifenvariable (Laufvariable, Index) in eigenen Worten erklären und verwenden.
  • Sie können Wertetabellen für Schleifen sowohl mit dem Datentyp Integer als auch mit Graphic erstellen.
  • Sie können gut lesbaren, strukturierten und modularisierten Programmiercode schreiben.
  • Sie können bestehende Programme sinnvoll abändern und erweitern.
  • Sie können Befehlssequenzen manuell (Schritt-für-Schritt) durchführen und das Ergebnis bestimmen.
  • Sie können Probleme lösen, indem Sie diese in Teilprobleme zerlegen.

Python

  • Sie können den Variablennamen _ verwenden, wenn der Wert der Schleifenvariable nicht verwendet wird.

PyTamaro

  • Sie können Schleifen verwenden, um Grafiken zu erstellen.
  • Sie können die vier Grundschritte, um eine Grafik mit Schleife zu bauen, in eigenen Worten erklären und verwenden.

This activity has been created by Gall and is licensed under CC BY-SA 4.0.

Schleifen: Grafikreihen

Logo of PyTamaro

PyTamaro is a project created by the Lugano Computing Education Research Lab at the Software Institute of USI

Privacy PolicyPlatform Version e277099 (Tue, 01 Apr 2025 19:34:18 GMT)