Programowanie strukturalne opiera się na założeniu, że program powinien być budowany z czytelnych, zagnieżdżalnych bloków sterujących, które pozwalają łatwo prześledzić przebieg wykonania. Klasycznie wyróżnia się trzy podstawowe formy sterowania: sekwencję (wykonywanie instrukcji po kolei), selekcję (wybór gałęzi na podstawie warunku) oraz iterację (powtarzanie fragmentu kodu).
Dlaczego poprawna jest odpowiedź "goto"?
Instrukcja goto realizuje skok do wskazanego miejsca programu (np. etykiety). Taki skok może "przerywać" naturalną strukturę blokową, tworzyć wiele wejść/wyjść z fragmentu kodu i powodować, że kontrola przepływu staje się trudna do przewidzenia. W praktyce prowadzi to do gorszej czytelności, większego ryzyka błędów i trudniejszego debugowania. Z tego powodu w ujęciu strukturalnym jej stosowanie jest co do zasady niezalecane (wyjątki zależą od języka i konwencji, ale nie zmienia to ogólnej zasady egzaminacyjnej).
Dlaczego pozostałe odpowiedzi są niepoprawne?
- repeat until – to pętla (iteracja) o strukturze blokowej. Należy do podstawowych konstrukcji sterujących w podejściu strukturalnym.
- if then else – to instrukcja warunkowa (selekcja), czyli kluczowy element programowania strukturalnego.
- for – to pętla o z góry określonej liczbie iteracji (iteracja), również typowa dla programowania strukturalnego.
Wskazówka egzaminacyjna: jeśli pytanie dotyczy programowania strukturalnego, szukaj odpowiedzi związanej ze "swobodnym skokiem" zaburzającym strukturę bloków. Pętle i warunki to zwykle rozwiązania preferowane, bo porządkują przepływ i ułatwiają weryfikację algorytmu.