Unterrichtsmaterialien für den Informatikunterricht

Kontrollstrukturen 3: Schleifen mit while/do...while

Folien

Falls keine PDF-Präsentation zu sehen ist: Direktdownload der PDF-Präsentation

while-Schleife in php

Die while-Schleife führt einen Befehl so lange aus, wie die Bedingung wahr ist. Die Schleife kann auch null Mal ausgeführt werden.

Syntax:

while (Bedingung)
{
  Anweisung;
}
// fortfahren, sobald Bedingung falsch ist

Beispiel: Einen Satz x Mal ausgeben

<form action = "<?php echo $_SERVER['PHP_SELF'] ?>" method = "get" />
Satz wie oft ausgeben? <input type = "text" name = "anzahl" />
<input type = "submit" name = "absenden" />
</form>
<?php
$anzahl = $_GET['anzahl'];
$absenden = $_GET['absenden'];
$zaehler = 1;
if (isset($absenden))
{
  while ($zaehler <= $anzahl)
  {  
  	$zaehler++;
  	echo "ich bin der Satz<br />\n";
  }
 echo "<br />Das war's.";
 }
 ?>

do … while-Schleife

Gleich wie while-Schleife, allerdings wird sie immer mindestens einmal ausgeführt, da sich die Bedingung im Fuß der Schleife befindet

Syntax:

do
{
  Anweisung
}
while (Bedingung);
// fortfahren, sobald Bedingung falsch ist

obiges Beispiel umgebaut:

  do
  {  
  	$zaehler++;
  	echo "ich bin der Satz<br />\n";
  }
 while ($zaehler <= $anzahl);
 echo "Das war's";

Übungen

Zusätzliche Dateien (Bilder, Klassendiagramme, HTML-Vorlagen) finden Sie in der Materialsammlung. Diese Übungen können Sie als txt-Datei herunterladen.


Übungen: PHP - while-do


php_17-1: Hochzählen mit WHILE

Lassen Sie sich die Zahlen von 0 bis 55 untereinander ausgeben. Danach kommt die Nachricht “Fertig!”. Achten Sie darauf, dass auch im Quelltext Zeilenumbrüche vorhanden sind!



php_17-2: Namen ausgeben, Maximalbegrenzung mit IF

Erstellen Sie ein Formular, wo der User seinen Namen eingeben kann und die Häufigkeit, wie oft der Name ausgegeben wird. Wenn die Zahl kleiner oder gleich 500 ist, wird die Anweisung ausgeführt (nämlich der Name entsprechend oft ausgegeben), andernfalls erhält der User eine Meldung, dass nur maximal 500 Namen ausgegeben werden können.



php_17-3: Array und WHILE

Gegeben sei folgendes Array:

$weisheit("Morgenstund hat Gold im Mund.", "Man soll den Tag nicht vor dem Abend loben.", "Wer zuletzt lacht, lacht am besten.");

1. Geben Sie die Anzahl der Elemente im Array aus.
2. Durchlaufen Sie mit einer WHILE-Schleife das Array, so dass alle Weisheiten untereinander ausgegeben werden.
3. Danach folgt mit zwei Zeilen Abstand die Nachricht “Ich bin fertig und habe insgesamt [ANZAHL] Weisheiten ausgegeben.”