At My Fingertips

Verschachtelte for-Schleifen

Oft treten Wiederholungen in Wiederholungen auf, was man verschachtelte Schleifen nennt.

Angenommen, du möchtest ein Muster aus Smileys erstellen. Dann könntest du das mit verschachtelten for-Schleifen tun:

Loading...

In diesem Beispiel geht die äussere Schleife durch die Zeilen, während die innere Schleife die Anzahl der Smileys in jeder Zeile steuert. Das Ergebnis ist ein Muster aus Smileys, bei dem jede Zeile einen zusätzlichen Smiley hat.

Übrigens, der end-Parameter von print steuert, was am Ende der print-Ausgabe hinzugefügt wird. Standardmässig ist end auf '\n' (einen Zeilenumbruch) eingestellt.

Geht das auch mit PyTamaro-Grafiken? Ja!

Nehmen wir nun an, du möchtest gerne ein Raster aus 7 x 5 blauen Punkten erstellen, so wie im Bild unten gezeigt.

Blaues 7 x 5 Punkteraster

Das geht mit folgendem Code:

Loading...

Diese Funktion punkte_rasterverwendet verschachtelte for-Schleifen, um das Raster zu erstellen. Hier ist die Erläuterung zur Arbeitsweise des Codes:

  1. Die äussere Schleife for _ in range(anzahl_zeilen) durchläuft die Anzahl der Zeilen im Raster (in diesem Fall 5 Mal).

    • In jedem Schleifendurchlauf erstellt sie eine leere Grafik zeile, die für die aktuelle Zeile des Rasters verwendet wird.
    • Das Zeichen "_" wird in for-Schleifen oft verwendet, um anzuzeigen, dass die Schleifenvariable nicht benötigt wird und nur dazu dient, die Anzahl der Schleifendurchläufe zu steuern.
  2. Innerhalb der äusseren Schleife haben wir eine weitere Schleife for _ in range(anzahl_spalten), die die Anzahl der Spalten im Raster (in diesem Fall 7 Mal) durchläuft.

    • In jedem Schleifendurchlauf erstellt sie einen Punkt mit der angegebenen Farbe und fügt ihn zur zeile-Grafik hinzu. Dies erzeugt eine Zeile mit Punkten.
  3. Nachdem die innere Schleife alle Punkte für die aktuelle Zeile erstellt hat, wird die zeile-Grafik zur resultat-Grafik hinzugefügt. Dies entspricht der schrittweisen Bildung der gesamten Grafik, die alle Zeilen enthält.

  4. Dieser Prozess wird für jede Zeile wiederholt, bis alle Zeilen im Raster erstellt und zur resultat-Grafik hinzugefügt wurden.

  5. Schliesslich wird die fertige resultat-Grafik, die das gesamte Raster aus Punkten enthält, zurückgegeben.

Kopiere den obigen Code in die folgende Codezelle. Ändere ihn dann so ab, dass ein 4 x 2 Raster aus roten, gleichwinkligen Dreiecken resultiert.

Loading...

Blumenwiesen

Erstelle nun nach dem gleichen Prinzip drei verschiedene Blumenwiesen aus je 4 x 2 Blumen. Jede Blume soll aus 8 elliptischen Blütenblättern bestehen. Ein Blick zurück in die "Gänseblümchen-Aufgabe" aus der Aktivität PyTamaro iconfor-Schleife ist natürlich gestattet.

a) Wiese mit gelben Blumen

Wiese mit lauter gelben Blumen

Loading...

b) Wiese mit mehrfarbigen Blumen

Wiese mit mehrfarbigen Blumen

Loading...

c) Wiese mit verschiedenfarbigen Blumen

Wiese mit verschiedenfarbigen Blumen

Loading...

Was du gelernt hast

Truchet-Kacheln und Bienenwabe evtl. als entweder/oder-Auswahl ?

Truchet-Kacheln -> als Wettbewerb

versch. biol. Systeme (Waldwege, Wasserwege, Maulwurfhöhlensystem)

fortgeschritten: mit Wahrscheinlichkeiten (siehe https://www.youtube.com/watch?v=99Hr8lpWWSg)

Bienenwabe -> Eigene Aktivität?!

--> mithilfe des Koordinatensystems von Lerbermatt

Dohnenstammbaum


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

It is derived from this activity.

Verschachtelte for-Schleifen

Logo of PyTamaro

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

Privacy PolicyPlatform Version b744b47 (Tue, 08 Oct 2024 16:30:14 GMT)