KWALIFIKACJA INF2 + INF3 - STYCZEŃ 2015

PYTANIE NR 15.
Po wykonaniu instrukcji zmienna suma będzie równa
Ilustracja przedstawia fragment kodu w języku C, który jest częścią pytania egzaminacyjnego dla technika programisty.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Wartość "13" uzyskuje się po ręcznym prześledzeniu działania instrukcji z zadania, krok po kroku, aktualizując zmienną suma po każdej operacji. Wyniki 10–12 to typowe skutki pominięcia jednego kroku, błędnej kolejności działań albo nieprawidłowego odczytu wartości po modyfikacji.

Pełne wyjaśnienie:

Aby wyznaczyć wartość zmiennej suma "po wykonaniu instrukcji", należy zastosować tzw. trace, czyli śledzenie wykonania programu krok po kroku. W praktyce polega to na tym, że po każdej instrukcji (przypisaniu, dodaniu, inkrementacji itp.) zapisujesz aktualną wartość zmiennych i przechodzisz do następnej linii.

Poprawny wynik to 13, ponieważ przy poprawnym wykonaniu wszystkich kroków instrukcji wartości dodawane do suma sumują się właśnie do tej liczby. W takich zadaniach kluczowe jest, aby nie "zgadywać" na podstawie intuicji, tylko konsekwentnie aktualizować stan zmiennych po każdym kroku.

Dlaczego pozostałe odpowiedzi bywają wybierane błędnie?

  • "12" często wynika z pominięcia jednego dodawania lub nieuwzględnienia pojedynczej modyfikacji zmiennej (np. krok został przeoczony).
  • "11" zwykle pojawia się, gdy wykonuje się poprawnie większość instrukcji, ale błędnie interpretuje jedną z nich (np. mylenie aktualizacji zmiennej z użyciem jej starej wartości).
  • "10" to typowy skutek "ucięcia" fragmentu obliczeń (np. nieuwzględnienie części sekwencji albo założenie, że zmienna nie zmienia się w pewnym miejscu).

Wskazówka egzaminacyjna: zrób małą tabelę z kolumnami "krok" i "suma" (oraz innymi zmiennymi, jeśli występują). Taka metoda minimalizuje ryzyko błędu nieuwagi i pozwala szybko sprawdzić, na którym etapie wynik zaczyna się różnić.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Wykonaj trace: przejdź linia po linii i po każdej instrukcji zapisz aktualne wartości zmiennych. Najlepiej zrób tabelę "krok → suma". To eliminuje zgadywanie i pozwala zauważyć, gdzie zmienna zmieniła się inaczej niż oczekujesz.
Bo uczniowie często mylą moment, w którym zmienna jest zwiększana, albo pomijają jedną iterację/polecenie. To klasyczny błąd nieuwagi w sekwencji kroków. Pomaga zapisywanie stanu po każdym kroku zamiast liczenia "w pamięci".
Trace to ręczne lub narzędziowe przechodzenie przez kod krok po kroku i obserwowanie, jak zmieniają się wartości zmiennych. Na egzaminie robi się to ręcznie: po każdej linii kodu aktualizujesz wartości w notatkach.
Najczęstsze to: pominięcie jednej instrukcji, błędna kolejność działań, mylenie przypisania z porównaniem oraz zła interpretacja modyfikacji zmiennej (np. inkrementacji). Ratunkiem jest konsekwentne zapisywanie wartości po każdym kroku.
Tak. Zadania tego typu są projektowane do rozwiązania "na sucho". Wystarczy poprawnie rozumieć przypisania i operacje oraz wykonać trace. Uruchomienie programu nie jest konieczne, jeśli umiesz poprawnie aktualizować stan zmiennych.
Policz liczbę instrukcji/kroków i upewnij się, że dla każdego kroku masz zapisany stan zmiennych. Jeśli występuje pętla, rozpisz osobno każdą iterację. Dobrą praktyką jest podkreślanie linii już "wykonanych" w analizie.
Najczęściej wtedy, gdy w kodzie jest pojedyncza modyfikacja wartości (np. zwiększenie/zmniejszenie), którą łatwo przeoczyć, albo gdy ta modyfikacja zachodzi więcej niż raz (np. w pętli). Różnica 1–2 to sygnał: sprawdź modyfikacje zmiennych.
Wpływają wszystkie miejsca, gdzie suma jest modyfikowana: dodawanie/odejmowanie, przypisanie nowej wartości oraz działania wykonywane w pętli lub w gałęziach warunku. W trace zaznacz te linie, bo to one zmieniają wynik końcowy.
Ćwicz krótkie fragmenty kodu/pseudokodu: przypisania, proste pętle i warunki. Zawsze rozwiązuj je metodą tabeli stanów. Po kilku zadaniach zauważysz typowe pułapki (pomijanie iteracji, zła kolejność), które na egzaminie kosztują punkty.
Bo są "blisko" poprawnego wyniku i pasują do intuicyjnego liczenia w głowie. To efekt heurystyki podobieństwa: wybiera się liczbę wyglądającą wiarygodnie, zamiast wykonać pełny trace. Na egzaminie zawsze weryfikuj wynik, rozpisując kroki.
info

Statystycznie 60% uczniów zna prawidłową odpowiedź. średnie

Specjaliści zwracają uwagę: "Wartość "13" uzyskuje się po ręcznym prześledzeniu działania instrukcji z zadania, krok po kroku, aktualizując zmienną suma po każdej operacji."

Źródła:

  • MDN Web Docs: Assignment (=) operator (JavaScript) – https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Assignment (dostęp: 2026-02-27)
  • MDN Web Docs: Addition (+) operator (JavaScript) – https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Addition (dostęp: 2026-02-27)
  • MDN Web Docs: Increment (++) operator (JavaScript) – https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Increment (dostęp: 2026-02-27)

Materiały:

  • Dokumentacja języka używanego na zajęciach (sekcja: przypisanie, operatory, instrukcje sterujące)
  • Materiały o debugowaniu i "tracingu" (śledzeniu wykonania krok po kroku)
  • Zadania typu "wyznacz wartość zmiennej po wykonaniu kodu" z arkuszy egzaminacyjnych INF.3

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego