Zurück Vor +Ebene Home Inhalt Index Hilfe

Schleifen FOR, WHILE und REPEAT

Schleifenbefehle, bewirken, daß eine oder mehrere Anweisungen mehrmals hintereinander ausgeführt werden.

Bei der Zä„hlschleife  muß vor Schleifenbeginn die Anzahl der Schleifendurchläufe bekannt sein. Eine Zählvariable wird zu Anfang auf einen Startwert gesetzt und nach jedem Schleifendurchlauf um 1 erhöht. Der letzte Schleifendurchlauf erfolgt mit dem angegebenen Endwert. 

FOR Variable:= Startwert TO Endwert DO Anweisung

Die Zählvariable wird rückwärts durchgezählt, wenn TO durch DOWNTO ersetzt wird:

FOR Variable:= Startwert DOWNTO Endwert DO Anweisung
 
Die Zählvariable kann nur in Einerschritten inkrementiert  (aufwärts gezählt) oder dekrementiert  (abwärts gezählt) werden. Andere Schrittweiten sind in PASCAL nicht möglich.
 
Die Zählvariable muß einen abzählbaren Typ besitzen; im Normalfall der Typ
integer . Reellwertige Typen sind nicht erlaubt!
 
Der Schleifenkörper enthält nur eine Anweisung. Bei Bedarf können mit BEGIN und END mehrere Anweisungen zusammengefaßt werden.
 
Reellwertige Zählvariablen mit beliebigen Schrittweiten können folgendermaßen realisiert werden:

    FOR i:=0 TO 9 DO BEGIN
       x:=start+schrittweite*i;  
       writeln(x:5:2,sqrt(x):10:5) 
    END

 
Wenn die Anzahl der Schleifendurchläufe im voraus nicht bekannt ist, muß die WHILE - oder die REPEAT -Schleife benutzt werden. Dabei entscheidet eine Bedingung darüber, ob ein weiterer Schleifendurchlauf erfolgt oder nicht.

Die WHILE -Schleife   testet vor jedem Schleifendurchlauf, ob eine Bedingung erfüllt ist. Wenn ja, wird der Schleifenkörper durchlaufen, wenn nein, wird die Schleife beendet.

WHILE Bedingung DO Anweisung
 
Der Schleifenkörper enthält nur eine Anweisung. Bei Bedarf können mit BEGIN und END mehrere Anweisungen zusammengefaßt werden.
 
Ist die Bedingung bereits zu Beginn nicht erfüllt, so wird der Schleifenkörper überhaupt nicht durchlaufen.
 
Die REPEAT -Schleife testet nach jedem Schleifendurchlauf, ob eine Bedingung erfüllt ist. Wenn ja, wird die Schleife beendet, wenn nein, wird der Schleifenkörper ein weiteres Mal durchlaufen.


 
Da die Bedingung nach dem Schleifenkörper getestet wird, wird die REPEAT -Schleife immer mindestens einmal durchlaufen.
 
Hier dürfen zwischen REPEAT und UNTIL beliebig viele Anweisungen stehen. Es ist also nicht nötig, mehrere Anweisungen mit BEGIN und END einzuklammern. Vor UNTIL ist ebenso wie vor END ein Semikolon nicht nötig, aber auch nicht verboten.

Zurück Vor +Ebene Home Inhalt Index Hilfe

Copyright Verlag Harri Deutsch AG  Stöcker DeskTop Mathematik