KWALIFIKACJA INF2 + INF3 - CZERWIEC 2014

PYTANIE NR 16.
Przedstawiony algorytm wyznacza sumę
Ilustracja przedstawia schemat blokowy algorytmu, który oblicza sumę liczb parzystych.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Algorytm startuje z n=2 i w każdej iteracji dodaje n do zmiennej wynik, po czym zwiększa n o 2. Warunek n

Pełne wyjaśnienie:

Schemat blokowy opisuje pętlę iteracyjną sterowaną zmienną n. Po inicjalizacji (n = 2, wynik = 0) algorytm sprawdza warunek: czy n <= 20. Jeśli tak, wykonuje dwie operacje: dodaje bieżące n do sumy (wynik = wynik + n) oraz zwiększa n o 2 (n = n + 2), po czym wraca do sprawdzenia warunku.

Kluczowe jest to, że krok wynosi 2, więc generowane są wyłącznie liczby parzyste, a ponieważ startujemy od 2, otrzymujemy ciąg: 2, 4, 6, 8, 10, 12, 14, 16, 18, 20. Warunek zawiera równość (

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Warunek n <= 20 znaczy, że pętla wykona się także dla n równego 20. To ważne, bo zmienia liczbę iteracji względem warunku n < 20. W praktyce decyduje, czy ostatni składnik (tu: 20) zostanie dodany do sumy.
Najprościej wypisać kolejne wartości iteratora: start (2), potem dodać krok (4, 6, 8…). Kończysz, gdy następna wartość nie spełnia warunku. Alternatywnie liczysz wyrazy ciągu: (ostatni - pierwszy)/krok + 1, jeśli pierwszy i ostatni należą do zakresu.
Bo n zaczyna od 2 (liczba parzysta) i jest zwiększane o 2. Dodawanie 2 zachowuje parzystość: parzysta + 2 = parzysta. Dlatego w kolejnych iteracjach pojawiają się tylko wartości 2, 4, 6, … aż do granicy z warunku.
Przy inicjalizacji n=2, a potem krok n=n+2, wartości to: 2, 4, 6, 8, 10, 12, 14, 16, 18, 20. Następna byłaby 22, ale nie przechodzi warunku n <= 20, więc nie jest już dodawana do sumy.
Nie. Pytanie dotyczy tego, co jest sumowane (jaki zestaw liczb), a nie jaką wartość ma suma. Wystarczy rozpoznać, że iterator generuje kolejne liczby parzyste w określonym zakresie i policzyć liczbę składników.
"10 liczb parzystych" nie mówi, czy są to liczby kolejne (bez przerw) ani z jakiego zakresu. W algorytmie powstaje konkretny ciąg 2,4,6,…,20, więc poprawne ujęcie powinno podkreślać, że to 10 kolejnych liczb parzystych.
Zwróć uwagę na znak równości. <= oznacza, że wartość graniczna (20) jest wliczana, a < — że już nie. To typowe źródło błędu "o 1 iterację". Warto zawsze sprawdzić, czy ostatnia liczba ma zostać dodana.
Najczęstsze to: błąd granicy (nieuwzględnienie <=), pomylenie kroku 2 z "co drugi element" bez sprawdzenia startu, oraz mechaniczne liczenie "od 2 do 20 jest 19 liczb" (to działa tylko dla kroku 1). Pomaga rozpisanie 3–5 pierwszych wartości.
Taki schemat odpowiada zwykle pętli while lub for. Przykładowo: inicjalizacja n=2 i wynik=0, potem dopóki n <= 20 wykonuj: wynik += n; n += 2. Umiejętność "tłumaczenia" schematu na kod jest bardzo przydatna w INF.3.
Gdy agregujesz dane: np. zliczasz lub sumujesz wybrane rekordy, elementy tablicy, ceny w koszyku, wartości z API spełniające warunek. Mechanizm jest ten sam: inicjalizacja akumulatora (wynik), iteracja po zakresie/zbiorze i aktualizacja wyniku w każdej iteracji.
info

To pytanie poprawnie rozwiązuje 56% zdających egzamin. średnie

Eksperci podkreślają: "Algorytm startuje z n=2 i w każdej iteracji dodaje n do zmiennej wynik, po czym zwiększa n o 2."

Źródła:

  • Wikipedia (PL): "Ciąg arytmetyczny" — opis definicji i własności, https://pl.wikipedia.org/wiki/Ci%C4%85g_arytmetyczny (dostęp: 2026-02-24)
  • Wikipedia (PL): "Schemat blokowy" — podstawowe elementy i znaczenie w opisie algorytmów, https://pl.wikipedia.org/wiki/Schemat_blokowy (dostęp: 2026-02-24)
  • Wikipedia (PL): "Pętla while" — ogólna charakterystyka pętli sterowanej warunkiem, https://pl.wikipedia.org/wiki/P%C4%99tla_while (dostęp: 2026-02-24)

Materiały:

  • Materiały o schematach blokowych i ich mapowaniu na konstrukcje języków programowania
  • Ćwiczenia z pętlami (while/for) i analizą liczby iteracji dla różnych warunków
  • Powtórzenie ciągu arytmetycznego: definicja, różnica, liczba wyrazów w przedziale

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego