Materialien zum Unterricht

for()-Schleife vs. while()-Schleife

Hinweis: Nutze Kommentare, um deinen Programmcode Verständlich zu gestalten.

For()-Schleife

  1. Es ist eine gestrichelte Linie zu zeichnen.
    Programmcode
  2. Die Striche sollen nun immer größer werden.
    Programmcode
  3. Zeichne per Schleife eine Treppe mit 5 Stufen.
    Verwende Variablen.
    Programmcode
  4. Zeichne ein gleichseitiges Dreieck, ein Quadrat und ein Rechteck mittels einer Schleife
    Verwende Variablen.
  5. Zeichne ein beliebiges n-Eck. Als Variablen werden die Eckenzahl und die laenge festgelegt und übergeben.
    Programmcode
  6. Versuche durch Verschachtelung mehrerer Schleifen ein Blatt mit Kästchenmuster zu erzeugen.
    Programmcode

while()-Schleife oder for-Schleife?

Je nachdem, welche Funktionen eine Schleife erfüllen soll und welche Schrittweite gewünscht ist, bietet sich eine for()- oder eine while()-Schleife an.
Die for-Schleife ist gut zum schrittweisen Durchlaufen von sequentiellen Datentypen.
Eine while-Schleife mit der Schrittweite 1, beginnend bei i=0 bis n (beliebigeZahl), lässt sich auch durch eine for-Schleife simulieren.

Zum besseren Vergleich werden die Merkmale in der untenstehenden Tabelle aufgeführt.

while-Schleife for-Schleife
Beschreibung Wiederholung einer Aktion, solange eine Bedingung erfüllt ist. Iteration über eine Sequenz wie Listen, Tupel, Strings oder andere iterierbare Objekte.
Aufbau
while i operator integervariable:
do...
i += 1
for i in listenname:
do...
Laufvariable erstellen muss vor dem Schleifenaufruf erstellt werden muss nicht extra erstellt werden
Laufvariable ändern muss innerhalb der Schleife
hoch- oder runtergezählt werden
wird am Ende der Schleife
automatisch hoch- oder runtergezählt
Schrittweite kann innerhalb der Schleife beliebig angepasst werden kann nur einmalig vor Beginn der Schleife festgelegt werden
Bedingungs-Test Die Bedingung wird nach jedem Schleifendurchlauf überprüft Die Elemente oder Länge des sequentiellen Datentyps werden nur beim erstmaligen aufrufen der Schleife abgefragt.
Beispiel
Anwendung
  • Verarbeitung von Benutzereingaben, wenn die Anzahl der Durchläufe oder die Bedingungen für den Schleifenabbruch vorher nicht bekannt sind.
  • Implementierung von Endlosschleifen.
  • Warten auf eine bestimmte Bedingung oder Ereignis.
  • Verarbeitung von Datenströmen, bis ein bestimmtes Kriterium erfüllt ist.
  • Durchlaufen von Elementen in einer Sammlung oder einer Datenstruktur.
  • Ausführen einer bestimmten Anzahl von Iterationen mit einer definierten Schrittweite.
  • Vereinfachte Schleifen für Lesbarkeit und Kürze des Codes.

While()-Schleife

Löse die Aufgaben der for()-Schleife nun mit einer while()-Schleife.

Hinweis:
Achte drauf, dass keine Unendlichschleifen enststehen!
Um dies zu verhindern, muss man immer einen Zähler anlegen, der innerhalb der Schleife hoch- oder runter gezählt wird.

Schaue dir auch dieses Beispiel an.

  1. Strichellinie
    Programmcode
  2. Strichellinie größer werdend
    Programmcode
  3. Treppenstufen
    Programmcode
  4. Verändere das Programm zu einem Rechteck und Dreieck
    Programmcode
  5. n-Eck
    Programmcode
  6. Kästchenmuster
    Programmcode