HTML, CSS und JavaScript

Schleifen

 aufwärts

Eine Schleife dient dazu, ein Programmstück mehrfach zu wiederholen. Schleifen kommen in Computerprogrammen sehr häufig vor, denn der Computer kann dies am besten: immer dasselbe tun, ohne müde zu werden. Bei einem Sortierverfahren beispielsweise werden in einer Schleife solange bestimmte Datenelemente vertauscht, bis alle in der richtigen Reihenfolge stehen.

 

While-Schleife

Bei einer While-Schleife wird ein bestimmtes Programmstück, der Schleifen­körper, solange wiederholt, wie eine bestimmte Bedingung, die Schleifen­bedingung, erfüllt ist.

Die While-Schleife hat die allgemeine Form

while (bedingung)
{
      anweisung1;
            drei Punkte übereinander
      anweisungn;
}

Hier ist bedingung die Schleifen­bedingung. Es muss sich um einen Ausdruck handeln, der einen Wahrheitswert, also true oder false ergibt. Die Schleifen­bedingung steht in runden Klammern hinter dem Wort while (engl.: while = solange). Danach folgt in geschweiften Klammern der Schleifen­körper, also das Programmstück, das wiederholt werden soll, hier dargestellt durch die Anweisungen anweisung1, ..., anweisungn. Jede Anweisung wird mit einem Semikolon abgeschlossen.

Bei Ausführung der While-Schleife wird zunächst geprüft, ob die Schleifen­bedingung erfüllt ist, d.h. ob sie den Wert true ergibt. Ist dies der Fall, so werden die Anweisungen des Schleifen­körpers ausgeführt. Wenn der Schleifen­körper fertig ausgeführt ist, springt das Programm wieder an den Anfang der While-Schleife und prüft erneut die Schleifen­bedingung. Ist diese immer noch erfüllt, wird der Schleifen­körper erneut ausgeführt usw. – solange, bis die Schleifen­bedingung irgendwann einmal nicht mehr erfüllt ist. Dann wird der Schleifen­körper nicht mehr ausgeführt, sondern es wird mit den hinter dem Schleifen­körper folgenden Anweisungen fortgefahren.

Beispiel:  Die folgende While-Schleife gibt die Zahlen von 1 bis 10 auf dem Bildschirm aus.

var i=1;

while (i<=10)
{
    document.write(i+"<br>");
    i=i+1;
}

Hier ist die Schleifen­bedingung der Ausdruck i<=10, und der Schleifen­körper besteht aus den zwei Anweisungen document.write(i+"<br>") und i=i+1, jeweils abgeschlossen durch ein Semikolon.

Damit die Schleifen­bedingung ausgewertet werden kann, wird vor Beginn der While-Schleife die Variable i mit einem Wert belegt.

In diesem Beispiel ist die Schleifen­bedingung zu Anfang erfüllt, denn i hat den Wert 1, und es gilt 1kleiner gleich10. Somit wird mit document.write(i+"<br>") der Wert von i, also die 1, auf dem Bildschirm ausgegeben, gefolgt von einem Zeilenvorschub. Mit der Anweisung i=i+1 wird anschließend der Wert von i um 1 erhöht, also auf 2 gesetzt.

Damit ist der Schleifen­körper fertig ausgeführt. Das Programm springt wieder an den Anfang der While-Schleife und prüft erneut die Schleifen­bedingung. Diese ist immer noch erfüllt, denn es ist 2kleiner gleich10, also wird der Schleifen­körper erneut ausgeführt usw. – solange bis i den Wert 11 erreicht hat, dann wird der Schleifen­körper nicht mehr ausgeführt.

Der Programmablauf einer While-Schleife lässt sich wiederum mit Hilfe eines Flussdiagramms ver­anschaulichen. Das Flussdiagramm für das obige Beispiel­programm ist in Bild 1 dargestellt.

Flussdiagramm einer While-Schleife
Bild 1:  Flussdiagramm des Beispiel­programms (While-Schleife)

 

For-Schleife

Häufig dienen Schleifen dazu, Anweisungen eine bestimmte Anzahl von Malen zu wiederholen. Im vorigen Beispiel etwa wird zehnmal etwas ausgegeben. Wie wir gesehen haben, lässt sich dies mit einer While-Schleife realisieren. Ein kompakterer Programmcode ergibt sich jedoch bei Benutzung der For-Schleife:

int i;

for (i=1; i<=10; i=i+1)
{
    document.write(i+"<br>");
}

Bei der For-Schleife werden die Initialisierung der Variablen (i=1), die Schleifen­bedingung (i<=10), sowie die Aktion, die am Ende des Schleifen­körpers stattfinden soll (i=i+1), zusammen­gefasst.

Die For-Schleife hat die allgemeine Form

for (initialisierung; bedingung; aktion)
{
      anweisung1;
            drei Punkte übereinander
      anweisungn;
}

Welche Initialisierung vorgenommen wird, wie die Bedingung aussieht, und welche Art von Aktion stattfindet, ist hierbei dem Programmierer überlassen – alle drei Teile können sogar leer sein. Es ist jedoch guter Programmier­stil, die For-Schleife tatsächlich nur so wie in obigem Beispiel zu benutzen, nämlich als Zählschleife. Bei einer Zählschleife erhält eine Laufvariable einen Anfangswert und "läuft" dann bis zu einem Endwert. In Beispiel etwa läuft die Laufvariable i von 1 bis 10.

Für Schleifen, die keine Zählschleifen sind, sollte die For-Schleife nicht verwendet werden.

 

 

Weiter mit:   [Funktionen]   oder   up

 

homeH.W. Lang   FH Flensburg   lang@fh-flensburg.de   Impressum   ©  
Valid HTML 4.01 Transitional