Was genau sind die Off-by-One-Fehler in der While-Schleife?

8

Was genau sind die Fehler in der while-Schleife, wie finde ich sie heraus und wie behebe ich sie? Danke

    
Dina 30.05.2010, 18:49
quelle

1 Antwort

20

Ein Off-by-One-Fehler ist zum Beispiel beim Schreiben der Absicht, eine Schleife n auszuführen mal und schreibe sowas wie:

%Vor%

oder:

%Vor%

Im ersten Fall wird die Schleife (n - 1) mal und im zweiten Fall (n + 1) mal ausgeführt, wobei der Name off-by-one ausgegeben wird. Andere Variationen sind möglich, aber im Allgemeinen wird die Schleife aufgrund eines Fehlers im Anfangswert der Schleifenvariablen oder in der Endbedingung der Schleife zu oft oder zu oft ausgeführt.

Die Schleife kann korrekt geschrieben werden als:

%Vor%

Eine for-Schleife ist nur ein Spezialfall einer while-Schleife. Die gleiche Art von Fehler kann in while-Schleifen gemacht werden.

    
Mark Byers 30.05.2010, 19:01
quelle

Tags und Links