Zadanie polega na prześledzeniu schematu blokowego krok po kroku, aż do momentu spełnienia warunku w rombie n>a. Dopiero wtedy algorytm przechodzi do bloku wyjścia "pisz a, b" i wypisuje aktualne wartości zmiennych.
Dane początkowe (z pierwszego bloku operacyjnego):
a=10, b=5, n=4.
Krok wykonywany w pętli (drugi blok operacyjny):
Iteracja 1:
Po aktualizacji: a=10−5=5, b=5+2=7, n=4+1=5.
Sprawdzenie warunku: n>a → 5>5 jest fałszem, więc wybieramy gałąź "NIE" i wracamy do bloku operacyjnego (pętla trwa).
Iteracja 2:
Po aktualizacji: a=5−5=0, b=7+2=9, n=5+1=6.
Sprawdzenie warunku: n>a → 6>0 jest prawdą, więc wybieramy gałąź "TAK" i przechodzimy do wypisania.
Wynik wypisania: a=0, b=9.
Dlaczego pozostałe odpowiedzi są niepoprawne?
- "a=0, b=7" odpowiada sytuacji, w której zaktualizowano tylko a, a b pozostawiono po 1. iteracji lub pomylono liczbę iteracji dla b.
- "a=5, b=7" to wartości po pierwszej iteracji, ale wtedy warunek n>a nie jest spełniony (5>5 jest fałszem), więc algorytm jeszcze nie wypisuje danych.
- "a=-5, b=9" sugeruje wykonanie dodatkowej iteracji dla a przy jednoczesnym zatrzymaniu na wartościach b z iteracji 2; to typowy efekt zgubienia synchronizacji aktualizacji zmiennych.
Wskazówka egzaminacyjna: przy takich zadaniach najlepiej rozpisać małą tabelę iteracji (a, b, n) i po każdej aktualizacji osobno sprawdzić warunek z rombu. To minimalizuje błędy kolejności i rachunkowe.