M1 L23 PĘTLE CD

Pętle są bardzo użytecznym narzędziem, które może jednak spowodować problemy w działaniu naszego programu. Dotychczas, jeśli w programie występował błąd, otrzymywaliśmy stosowny komunikat na konsoli i przerywał on swoje działanie. W przypadku pętli, sytuacja może być bardziej złożona.

Zmodyfikujmy nieznacznie kod poprzedniego programu. Załóżmy, że nasz warunek logiczny wygląda teraz następująco:

Otrzymamy listę stale rosnących liczb, która wydaje się nie mieć końca i uniemożliwia zatrzymanie pracy programu. Musimy dokonać tego ręcznie, korzystając z kombinacji klawiszy CTRL+C.

Otrzymaliśmy tzw. nieskończoną pętle – konstrukcję, która będzie wykonywała się bez końca, gdyż warunek logiczne zawsze będzie prawdziwy. W ekstremalnych przypadkach może to nawet spowodować zupełne zawieszenie komputera, zajmując wszystkie wolne zasoby na potrzebę wykonania jednego programu

Należy przy tym zwrócić uwagę, że taki program działa „prawidłowo” i wykonuje dokładnie to co mu zleciliśmy. Środowisko programistyczne nie uzna takiej sytuacji za „błąd” i nie ostrzeże nas o potencjalnym problemie. Z tego też powodu nieskończone pętle są stosunkowo częstym błędem, nawet wśród doświadczonych programistów. Wystarczy jeden błędnie postawiony znak nierówności lub pominięty licznik, co może łatwo pozostać niezauważone, gdy mamy do czynienia z setkami linii kodu.