W zadaniach typu "co zostanie wypisane na standardowym wyjściu" kluczowe jest rozumienie, że w C++ wynik nie zależy wyłącznie od arytmetyki, ale także od kolejności ewaluacji wyrażeń oraz skutków ubocznych (np. inkrementacji/dekrementacji). Aby poprawnie odpowiedzieć, należy krok po kroku przeanalizować, jakie wartości są używane w danym momencie oraz kiedy zmienna jest modyfikowana.
Poprawna odpowiedź to 3, ponieważ po wykonaniu operacji w przedstawionym fragmencie programu taka właśnie wartość zostaje przekazana do standardowego wyjścia (np. przez wypisanie wartości wyrażenia lub zmiennej po modyfikacjach).
Dlaczego pozostałe odpowiedzi są błędne?
- 2 – typowy błąd wynika z traktowania inkrementacji/dekrementacji jak "natychmiastowej zmiany" bez rozróżnienia formy pre/post albo z pominięcia jednego z kroków ewaluacji.
- 32 – taka odpowiedź często bierze się z mylnej interpretacji jako konkatenacji/łączenia wartości lub z błędnego odczytania tego, co jest wypisywane (np. przyjęcia, że wypisywane są dwie liczby bez separatora).
- 4 (gdyby się pojawiło jako dystraktor) – bywa skutkiem założenia, że inkrementacja "dodaje 1" w innym miejscu niż rzeczywiście wynika to z semantyki wyrażenia.
W praktyce egzaminacyjnej warto pamiętać o dwóch zasadach: (1) unikaj zgadywania – zapisuj stany zmiennych po każdym kroku, (2) zwracaj uwagę na standard i reguły ewaluacji, bo niektóre złożone konstrukcje mogą zachowywać się różnie lub być niejednoznaczne między wersjami języka.