KWALIFIKACJA INF2 + INF3 - STYCZEŃ 2015

PYTANIE NR 12.
Wynikiem działania algorytmu będzie wypisanie liczb
Ilustracja przedstawia schemat blokowy algorytmu.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
W schemacie startujemy z a=10, b=5, n=4. W pętli wykonujemy kolejno: a=a−5, b=b+2, n=n+1, a potem sprawdzamy warunek n>a. Po 1. iteracji: a=5, b=7, n=5 i 5>5 jest fałszem, więc pętla trwa. Po 2. iteracji: a=0, b=9, n=6 i 6>0 jest prawdą, więc wypisywane jest a=0, b=9.

Pełne wyjaśnienie:

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):

  • a=a−5
  • b=b+2
  • n=n+1

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.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Czytaj zgodnie ze strzałkami od Start do Stop. W blokach operacyjnych wykonuj działania na zmiennych, a w rombie zawsze sprawdzaj warunek po wykonaniu poprzedniego bloku. Zapisuj wartości pośrednie, bo pętla może wykonać się wielokrotnie.
W tym schemacie romb decyzyjny jest umieszczony po bloku operacyjnym, więc warunek dotyczy już zaktualizowanych wartości. To odpowiada sytuacji "wykonaj krok, potem sprawdź, czy kończyć", co często myli się z pętlą typu while sprawdzaną na wejściu.
To blok wejścia/wyjścia, który oznacza wypisanie (wyświetlenie) aktualnych wartości zmiennych. W tym zadaniu wynik to nie wartości początkowe, tylko wartości w momencie przejścia z warunku "TAK" do bloku "pisz a, b".
Zrób kolumny: iteracja, a, b, n, czy n>a?. Wpisz wartości startowe, potem po każdej iteracji oblicz nowe a, b, n i dopiero wtedy zaznacz wynik porównania. Zakończ wiersz, w którym warunek jest prawdziwy.
Algorytm wypisze wynik dopiero wtedy, gdy w rombie spełni się warunek n>a i zostanie wybrana gałąź "TAK". Jeśli warunek jest fałszywy, wybierana jest gałąź "NIE" i następuje powrót do bloku operacyjnego (kolejna iteracja).
Najczęstsze pomyłki to: odwrócenie znaku nierówności (traktowanie jak a>n), zamiana ">" na ">=", oraz sprawdzanie warunku na starych wartościach sprzed aktualizacji. Każdy z tych błędów zmienia liczbę iteracji i końcowe a oraz b.
Nie. Schemat blokowy jest niezależny od języka: testuje rozumienie instrukcji przypisania, prostych działań arytmetycznych i logiki warunku/pętli. Znajomość języka (np. C++/Python) może pomóc, ale kluczowe jest poprawne czytanie diagramu i kolejności bloków.
Najpierw przepisz inicjalizację (a=10, b=5, n=4). Potem zapisz pętlę: wykonuj aktualizacje a, b, n i sprawdzaj warunek zakończenia. W pseudokodzie będzie to zwykle pętla z instrukcją warunkową, a wypisanie nastąpi po spełnieniu warunku.
a=5 i b=7 to wartości po pierwszej iteracji, ale wtedy warunek zakończenia nie jest spełniony (n i a są równe). Schemat każe wrócić do pętli i wykonać kolejną aktualizację, więc wypisanie następuje dopiero dla następnych wartości.
Obserwuj, jak zmieniają się wielkości w nierówności: tu a maleje o 5, a n rośnie o 1 w każdej iteracji, więc różnica n−a szybko rośnie. Zwykle wystarczy 1–3 iteracje; i tak najlepiej potwierdzić to krótką tabelą.
info

Statystycznie 42% uczniów zna prawidłową odpowiedź. trudne

Eksperci podkreślają: "W schemacie startujemy z a=10, b=5, n=4."

Źródła:

  • https://pl.wikipedia.org/wiki/Schemat_blokowy - dostęp 2026-04-01
  • https://pl.wikipedia.org/wiki/Algorytm - dostęp 2026-04-01
  • https://pl.wikipedia.org/wiki/P%C4%99tla_(programowanie) - dostęp 2026-04-01

Materiały:

  • Materiały dydaktyczne o schematach blokowych i strukturach sterujących (pętla, warunek) dla technika informatyka
  • Karty pracy: ręczne śledzenie zmiennych w pętli (tabela: iteracja, a, b, n, wynik warunku)
  • Ćwiczenia z zamianą schematu blokowego na pseudokod i odwrotnie

Aktualizacja pytania: 03.04.2026



Aktualizacja pytania: 03.04.2026
📡 Brak połączenia internetowego