KWALIFIKACJA INF3 - CZERWIEC 2018

PYTANIE NR 30.
Dla każdej iteracji pętli wartość bieżącego elementu tablicy jest przypisywana do zmiennej, a wskaźnik tablicy jest przesuwany o jeden, aż do ostatniego elementu tablicy. Zdanie to jest prawdziwe dla instrukcji
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Instrukcja "foreach" służy do iteracji po elementach tablicy/kolekcji: w każdej iteracji bieżący element jest przypisywany do zmiennej iteracyjnej i wykonywany jest blok pętli aż do przejścia przez wszystkie elementy. "switch" i "if" nie iterują, a "next" nie jest typową instrukcją pętli.

Pełne wyjaśnienie:

Opis w pytaniu dotyczy mechanizmu iteracji po tablicy: kolejne elementy są "pobierane" i podstawiane do zmiennej, a wykonanie powtarza się aż do końca tablicy. Konstrukcją, której podstawowym celem jest właśnie taki przebieg, jest foreach. W praktyce programista używa jej do przejścia po wszystkich elementach tablicy (np. aby wygenerować listę HTML, przefiltrować dane wejściowe lub policzyć agregaty).

Dlaczego poprawna jest odpowiedź "foreach"?

  • "foreach" to pętla wyspecjalizowana do przechodzenia po tablicach/kolekcjach.
  • W każdej iteracji przypisuje bieżący element (wartość, a często także klucz) do wskazanej zmiennej.
  • Iteracja kończy się po przetworzeniu ostatniego elementu.

Dlaczego pozostałe odpowiedzi są błędne?

  • "next" kojarzy się z przejściem do następnego elementu, ale nie jest to typowa instrukcja pętli sterująca wielokrotnym wykonaniem bloku kodu. Sama w sobie nie realizuje pełnej iteracji "od początku do końca" z przypisaniem elementu w każdej iteracji.
  • "switch" jest instrukcją wyboru: wybiera jedną z gałęzi wykonania na podstawie wartości wyrażenia. Nie powtarza automatycznie wykonania dla kolejnych elementów tablicy.
  • "if" jest instrukcją warunkową: wykonuje (lub nie) blok kodu w zależności od spełnienia warunku. Nie jest mechanizmem iteracji po tablicy.

Wskazówka egzaminacyjna: gdy w treści pojawia się przechodzenie po elementach tablicy "po kolei" i podstawianie ich do zmiennej w kolejnych przebiegach, najczęściej testowana jest pętla iteracyjna (np. "foreach"), a nie warunek ("if") ani wybór ("switch").

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Pętla foreach służy do przechodzenia po elementach tablicy lub kolekcji. W każdym przebiegu pobiera kolejny element i przypisuje go do zmiennej iteracyjnej, a następnie wykonuje blok kodu. Kończy działanie po przetworzeniu wszystkich elementów.
W foreach wskazujesz zmienną, do której ma trafić bieżąca wartość (a czasem także klucz). Interpreter w każdej iteracji podstawia kolejny element do tej zmiennej, dzięki czemu w bloku pętli możesz go odczytać, przekształcić lub wykorzystać do generowania wyniku.
if tylko sprawdza warunek i decyduje, czy wykonać dany fragment kodu. Nie powtarza automatycznie wykonania dla kolejnych elementów tablicy. Do iteracji potrzebujesz pętli (np. foreach, for, while), która ma wbudowany mechanizm powtarzania.
switch wybiera jedną z gałęzi wykonania na podstawie wartości wyrażenia. To instrukcja wyboru, a nie pętla. Nie przechodzi sama z siebie po elementach tablicy i nie wykonuje bloku wielokrotnie dla kolejnych wartości.
Nie. next (w kontekście popularnych języków skryptowych) kojarzy się z przejściem do następnego elementu, ale nie jest pełną konstrukcją pętli wykonującą blok kodu wielokrotnie. foreach obejmuje całą iterację: pobranie elementu, wykonanie bloku i przejście do kolejnego.
Najczęściej: generowanie list i tabel HTML z danych, przetwarzanie wyników zapytań, walidacja danych z formularzy, mapowanie i filtrowanie tablic oraz budowanie struktur JSON do API. foreach jest wygodne, bo czytelnie pokazuje zamiar "przejdź po elementach".
Szukaj słów sugerujących powtarzanie: "dla każdej iteracji", "kolejno", "aż do ostatniego elementu", "dla wszystkich elementów". To sygnały pętli. Instrukcja warunkowa opisuje decyzję "jeżeli… to…", bez automatycznego przechodzenia przez wiele elementów.
W zależności od języka spotkasz for (iteracja po indeksach) oraz while (powtarzanie dopóki warunek jest spełniony). W praktyce for/while często wymagają ręcznego zarządzania indeksem lub warunkiem zakończenia, a foreach jest zwykle najprostsze dla tablic.
for bywa lepsze, gdy potrzebujesz jawnie operować na indeksie (np. co drugi element, zakres od i do, modyfikacja wielu tablic równolegle po tym samym indeksie). Gdy celem jest po prostu przejście po wszystkich elementach, foreach zwykle daje czytelniejszy kod.
Najczęstsze pomyłki to wybieranie "if" lub "switch", bo też "sterują przebiegiem programu", oraz sugerowanie się słowem "następny" i zaznaczanie "next". Warto rozdzielić w głowie: pętla = powtarzanie, warunek = decyzja, switch = wybór jednej z gałęzi.
info

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

Eksperci podkreślają: ""switch" i "if" nie iterują, a "next" nie jest typową instrukcją pętli."

Źródła:

  • PHP Manual: foreach — https://www.php.net/manual/en/control-structures.foreach.php (dostęp: 2026-02-28)
  • PHP Manual: next — https://www.php.net/manual/en/function.next.php (dostęp: 2026-02-28)
  • PHP Manual: switch — https://www.php.net/manual/en/control-structures.switch.php (dostęp: 2026-02-28)

Materiały:

  • Dokumentacja języka używanego na zajęciach (sekcja: pętle i tablice)
  • Repetytorium do kwalifikacji INF.3 z działu: struktury sterujące
  • Zadania praktyczne: generowanie list HTML z tablicy i porównanie pętli for/while/foreach

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego