Beispiel (5)


Korrigiertes Programm:

INTEGER q, z, a
READ z
LOOP a <= 1 TO 100
   q <= a^2
   IF (a+1)^2 > z THEN LEAVELOOP
ENDLOOP
WRITE q

Test des Programms mit z = 0:

1. Durchlauf: a = 1
             Zuweisung: q = 1
             Abfrage: 4 > 0 ?
             Antwort: Ja

Ergebnis: q = 1

Falsch!! Lösung ist: q = 0

Korrektur des Programms:
Die Schleife muß schon von a = 0 an laufen.


Ingolf Giese