KWALIFIKACJA INF2 + INF3 - CZERWIEC 2011

PYTANIE NR 25.
Przedstawiony algorytm posortuje liczby
Ilustracja przedstawia algorytm sortujący liczby na parzyste i nieparzyste, co jest związane z kwalifikacją zawodową TECHNIK
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Podział "na parzyste i nieparzyste" wynika z algorytmu, który sprawdza cechę parzystości (typowo przez resztę z dzielenia przez 2) i na tej podstawie przypisuje liczbę do jednej z dwóch grup.
Opcje "rosnąco/malejąco" dotyczą porządkowania, a nie klasyfikacji; "dodatnie/ujemne" to inne kryterium.

Pełne wyjaśnienie:

W zadaniach z INF.4 słowo "sortuje" bywa używane potocznie w znaczeniu rozdziela/klasyfikuje dane według pewnej cechy, a nie tylko "ustawia w kolejności". Odpowiedź "na parzyste i nieparzyste" jest poprawna wtedy, gdy przedstawiony algorytm wykonuje test parzystości każdej liczby i na tej podstawie kieruje ją do jednej z dwóch grup.

Najczęstszy mechanizm takiego algorytmu to sprawdzenie reszty z dzielenia przez 2 (operator modulo):

  • jeśli liczba daje resztę 0 przy dzieleniu przez 2, to jest parzysta,
  • w przeciwnym razie jest nieparzysta.

Dlaczego pozostałe odpowiedzi są błędne w tym kontekście?

  • "na dodatnie i ujemne" opisuje klasyfikację według znaku liczby (np. warunek x >= 0). To inne kryterium niż parzystość i wymagałoby w algorytmie porównania z zerem, a nie testu podzielności przez 2.
  • "malejąco" oraz "rosnąco" dotyczą porządkowania elementów względem siebie (relacji < lub >), czyli typowych algorytmów sortowania (np. bąbelkowe, przez wstawianie). Takie algorytmy muszą wykonywać porównania elementów i zamiany miejsc. Sam test parzystości nie tworzy porządku liczbowego.

Wskazówka egzaminacyjna: aby odróżnić "porządkowanie" od "podziału na grupy", szukaj w algorytmie porównań między elementami (np. a[i] > a[j]) i operacji zamiany. Jeżeli widzisz tylko warunek oparty o jedną wartość (np. modulo 2) i kierowanie do dwóch zbiorów, to jest to klasyfikacja.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
To klasyfikacja danych na dwie grupy według cechy parzystości. Liczba parzysta dzieli się przez 2 bez reszty, a nieparzysta daje resztę 1. Taki algorytm zwykle nie porządkuje elementów, tylko przypisuje je do dwóch zbiorów/list.
Najczęściej używa się operatora reszty z dzielenia: jeśli n % 2 == 0, to liczba jest parzysta, w przeciwnym razie nieparzysta. W niektórych językach spotyka się też test bitowy (np. n & 1), ale na egzaminie zwykle wystarcza modulo.
"Rosnąco/malejąco" oznacza ustawienie elementów w kolejności, co wymaga porównań między elementami i często zamian miejsc. Algorytm parzystości zwykle robi tylko test jednej wartości (np. % 2) i rozdziela elementy do dwóch grup, bez tworzenia pełnego porządku liczbowego.
Sortowanie tworzy kolejność (np. 1,2,3,4) według relacji </>. Klasyfikacja przypisuje elementy do kategorii (np. parzyste/nieparzyste) według warunku. W klasyfikacji nie musisz porównywać elementów między sobą, tylko sprawdzasz cechę każdego elementu.
Szukaj decyzji/warunku związanego z dzieleniem przez 2, np. sprawdzania reszty z dzielenia (modulo) albo warunku "czy liczba jest podzielna przez 2". Jeśli gałęzie prowadzą do dwóch wyjść opisanych jako dwie grupy, to typowo jest to podział na parzyste i nieparzyste.
Teoretycznie tak, ale musiałby zawierać dwa etapy: najpierw podział na grupy, a potem sortowanie w każdej grupie (lub całości). W pytaniach egzaminacyjnych zwykle sprawdza się jedną funkcję algorytmu, więc jeśli widać tylko test parzystości i rozdzielanie, to nie jest to sortowanie rosnące/malejące.
Najczęściej mylą słowo "sortuje" z "układa rosnąco/malejąco" i wybierają odpowiedź nawykowo. Drugi typowy błąd to zamiana kryterium: zamiast parzystości wybierają "dodatnie/ujemne", bo też brzmi jak podział na dwie grupy. Pomaga sprawdzenie, jaki warunek jest w algorytmie.
Np. przy filtrowaniu identyfikatorów, podziale zadań na dwa wątki, przygotowaniu danych do reguł biznesowych (inne zasady dla parzystych i nieparzystych), albo w zadaniach algorytmicznych. Taki podział bywa wstępem do dalszych operacji, a nie celem samym w sobie.
Potrzebujesz pętli po elementach i warunku. Dla każdej liczby sprawdź, czy daje resztę 0 przy dzieleniu przez 2, a potem dodaj ją do odpowiedniej listy/zbioru. Na egzaminie ważne jest rozumienie logiki (warunek), a nie konkretny język programowania.
Dla liczb dodatnich zachowanie jest zwykle intuicyjne: reszta z dzielenia przez 2 pozwala sprawdzić parzystość. Różnice mogą dotyczyć liczb ujemnych (znak reszty), ale w typowych zadaniach szkolnych parzystość rozpoznaje się stabilnie przez warunek "n % 2 == 0".
info

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

Źródła:

  • Wikipedia (PL), "Parzystość", https://pl.wikipedia.org/wiki/Parzysto%C5%9B%C4%87 (dostęp: 2026-03-01)
  • MDN Web Docs, "Remainder (%)", https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Remainder (dostęp: 2026-03-01)
  • Wikipedia (PL), "Sortowanie", https://pl.wikipedia.org/wiki/Sortowanie (dostęp: 2026-03-01)

Materiały:

  • Dokumentacja języka programowania: operatory arytmetyczne i instrukcje warunkowe (np. modulo, if/else)
  • Materiały szkolne o schematach blokowych i pseudokodzie (podstawowe konstrukcje sterujące)
  • Podręcznik/rozdział o podstawach algorytmiki: klasyfikacja danych, warunki, pętle

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego