W pokazanym fragmencie kodu zastosowano klasyczną instrukcję warunkową, która steruje przepływem wykonania programu. Konstrukcja działa tak, że najpierw sprawdzany jest warunek w nawiasie po słowie if. Jeśli warunek jest spełniony, wykonywany jest pierwszy blok w nawiasach klamrowych, a jeśli nie jest spełniony, wykonywany jest blok po else.
Dlatego odpowiedź "if, else" jest poprawna: to są słowa kluczowe, które decydują, która część kodu zostanie wykonana.
Dlaczego pozostałe propozycje nie pasują:
- "positionError, threshold" to identyfikatory (np. zmienne/parametry). Opisują dane używane w warunku, ale nie sterują wyborem gałęzi programu.
- "motorSpeed, maxSpeed, minSpeed" również są identyfikatorami. Występują w przypisaniach, czyli służą do ustawiania wartości, a nie do wyboru ścieżki wykonania.
- ">, =" to operatory: porównania i przypisania. Są ważne składniowo, ale same w sobie nie tworzą konstrukcji sterującej (bez if/else nie decydują o wyborze bloku).
W praktyce taka logika odpowiada prostemu sterowaniu: jeśli błąd położenia przekroczy próg, ustaw wyższą prędkość, w przeciwnym razie ustaw niższą. Na egzaminie warto odróżniać: (1) słowa kluczowe sterujące, (2) dane (zmienne/stałe) oraz (3) operatory (porównania i przypisania).