At My Fingertips

Documentation

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

Angenommen, du möchtest ein Muster aus Smileys erstellen, könntest du das mit verschachtelten for-Schleifen wie folgt 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.

Zusatzinfo Der end-Parameter von print steuert, was am Ende der print-Ausgabe hinzugefügt wird. Standardmässig ist end auf '\n' (einen Zeilenumbruch) eingestellt. D.h., wenn du den end-Parameter weglässt, was wohl meistens der Fall ist, folgt nach der print-Ausgabe ein Zeilenumbruch.

Geht das auch mit PyTamaro-Grafiken? Ja!

Nehmen wir an, du möchtest gerne eine Funktion, die beliebige Punkte-Raster erstellen kann, konkret z.B. ein 7 x 5 Raster aus blauen Punkten, so wie im Bild unten gezeigt.

Blaues 7 x 5 Punkteraster

Das geht mit folgendem Code:

Loading...

Was "passiert" hier genau?

  • Die Funktion erstellt zuerst eine leere Grafik namens resultat.
  • Dann verwendet sie zwei verschachtelte for-Schleifen, um das Raster zu erstellen.
    • Die äussere Schleife läuft über die Zeilen des Rasters (anzahl_zeilen).
    • Die innere Schleife läuft über die Spalten des Rasters (anzahl_spalten).
  • In jeder Iteration der inneren Schleife wird ein Punkt mit dem angegebenen Durchmesser und der angegebenen Farbe erstellt und zu einer Zeile hinzugefügt.
  • Diese Zeile wird schliesslich zu der Gesamtgrafik resultat hinzugefügt.
  • Am Ende wird die vollständige Rastergrafik zurückgegeben, die aus einem Gitter von Punkten in den gewünschten Zeilen und Spalten besteht.

Kopiere den obigen Code in die folgende Codezelle. Ändere ihn dann so ab, dass ein 4 x 2 Raster aus roten, gleichwinkligen Dreiecken resultiert. Passe entsprechend auch den Namen der Funktion zu dreieck_raster an.

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 Aktivität PyTamaro iconGänseblümchen 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

Du hast gelernt, wie verschachtelte for-Schleifen in der Programmierung eingesetzt werden, um wiederholte Abläufe auf mehreren Ebenen zu steuern.

Du hast gesehen, wie die äussere Schleife die Steuerung der inneren Schleifen beeinflusst und wie dies zur Erstellung komplexer Grafiken oder Muster führt. Diese Fähigkeit eröffnet dir vielfältige Möglichkeiten in der Programmierung, um auf mehreren Ebenen komplexe Aufgaben zu lösen und ansprechende Grafikkompositionen zu erstellen.


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 1cd5229 (Tue, 05 Nov 2024 16:55:57 GMT)