Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 czerwca 2026 10:31
  • Data zakończenia: 8 czerwca 2026 10:51

Egzamin zdany!

Wynik: 31/40 punktów (77,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

W CSS wartości: underline, overline, line-through oraz blink odnoszą się do właściwości

A. text-decoration
B. text-align
C. font-decoration
D. font-style
Właściwość font-style służy do definiowania stylu czcionki, takiego jak normal, italic lub oblique, ale nie odnosi się do dekoracji tekstu. Styl czcionki nie zmienia sposobu, w jaki tekst jest podkreślany, nadkreślany czy przekreślany. Z kolei text-align to właściwość CSS odpowiedzialna za wyrównanie tekstu w elemencie. Możliwe wartości tej właściwości to left, right, center oraz justify, a jej zadaniem jest kontrolowanie, w jaki sposób tekst jest rozmieszczony w obrębie swojego kontenera, ale nie ma wpływu na stylizację samego tekstu, taką jak podkreślenie czy przekreślenie. Ostatecznie, font-decoration nie jest rzeczywistą właściwością w standardzie CSS. Programiści mogą mylić terminy, jednak właściwa terminologia to text-decoration. Font-decoration nie jest uznawane przez przeglądarki, co czyni je niewłaściwym dla stylizacji tekstu. Zrozumienie tych różnic jest kluczowe dla efektywnego wykorzystania CSS w projektach webowych, ponieważ każda z tych właściwości ma swoje specyficzne zastosowania, które są fundamentalne dla tworzenia responsywnych i estetycznych stron internetowych.

Pytanie 2

Jakie prawa będzie miał użytkownik jan po wykonaniu poniższych poleceń na bazie danych?

GRANT ALL PRIVILEGES ON klienci TO jan;
REVOKE SELECT, INSERT, UPDATE, DELETE ON klienci FROM jan;
A. Będzie mógł przeszukiwać dane w tabeli klienci
B. Będzie mógł zmieniać strukturę tabeli klienci
C. Będzie mógł usuwać rekordy z tabeli klienci
D. Będzie mógł dodawać rekordy do tabeli klienci
Polecenie GRANT ALL PRIVILEGES ON klienci TO jan pozwala użytkownikowi jan na wykonywanie wszystkich operacji na tabeli klienci. Obejmuje to działania takie jak SELECT INSERT UPDATE DELETE oraz inne operacje strukturalne jak ALTER czy DROP. Następnie polecenie REVOKE SELECT INSERT UPDATE DELETE ON klienci FROM jan usuwa część tych uprawnień. Po wykonaniu tych poleceń jan zachowuje uprawnienia do zmiany struktury tabeli klienci czyli może wykonywać operacje takie jak ALTER. ALTER TABLE jest kluczowe w zarządzaniu bazą danych pozwalając na dodawanie lub usuwanie kolumn oraz modyfikację typów danych. W praktyce oznacza to że jan może np. dostosować strukturę danych do nowych wymagań biznesowych co jest ważnym aspektem elastycznego zarządzania bazą danych. Umiejętność zarządzania strukturą tabel jest ważną częścią administracji baz danych i powinna być wykonywana zgodnie z najlepszymi praktykami aby zapewnić integralność danych i wydajność systemu. Użytkownik powinien regularnie przeglądać i aktualizować dokumentację techniczną aby śledzić wszelkie zmiany w strukturze bazy danych

Pytanie 3

Kod PHP z fragmentem

if(empty($_POST["name"])){ $nameErr = "Name is required"; }
służy do obsługi
A. bazy danych
B. formularza
C. sesji
D. ciasteczek
Przedstawiony fragment kodu PHP sprawdza, czy w przesłanym formularzu (metodą POST) zawartość pola 'name' jest pusta. Jeśli tak, ustawia zmienną $nameErr z komunikatem "Name is required", co oznacza, że pole imienia jest wymagane. Tego typu walidacja jest kluczowym elementem przy pracy z formularzami, ponieważ pozwala na zapewnienie, że użytkownik dostarcza wszystkie niezbędne dane przed ich przetworzeniem. W praktyce, walidacja po stronie serwera jest niezbędna dla bezpieczeństwa aplikacji oraz poprawności danych, które są później przetwarzane i przechowywane w bazie danych. Standardy branżowe sugerują, aby każdy formularz miał walidację zarówno po stronie klienta (JavaScript), jak i serwera (PHP), aby minimalizować ryzyko nieprawidłowych danych i ataków, takich jak SQL Injection. Przykładowo, w formularzach rejestracyjnych i logowania, walidacja pól takich jak imię, email czy hasło jest powszechną praktyką, aby poprawić doświadczenie użytkownika oraz bezpieczeństwo aplikacji.

Pytanie 4

Przedstawiony serwis internetowy służy do walidacji

Ilustracja do pytania
A. arkuszy stylów.
B. dokumentów HTML.
C. skryptów JavaScript.
D. bazy danych SQL.
Twoja odpowiedź jest prawidłowa. Strona internetowa 'CSS Validation Service' jest narzędziem stworzonym przez konsorcjum W3C do walidacji arkuszy stylów CSS. W3C, czyli World Wide Web Consortium, to międzynarodowa społeczność, która rozwija otwarte standardy mające na celu długoterminowe wzrost i rozwój sieci WWW. Narzędzie do walidacji CSS zapewnia mechanizm sprawdzania kodu CSS pod kątem zgodności ze standardami W3C. Dzięki temu deweloperzy mogą upewnić się, że ich arkusze stylów są poprawne, co jest kluczowe dla zapewnienia prawidłowego wyglądu i działania stron internetowych na różnych platformach i przeglądarkach. Walidator CSS pomaga także naprawić ewentualne błędy w kodzie. To jest praktyczne zastosowanie tej usługi - utrzymanie jednolitych standardów kodowania, co prowadzi do większej interoperacyjności pomiędzy różnymi technologiami i narzędziami.

Pytanie 5

Która instrukcja służy do iteracji (powtarzania)?

A.
for
B.
switch
C.
else
D.
throw
Instrukcja for to pętla - powtarza blok kodu określoną liczbę razy, ze zmienną licznikową, warunkiem i krokiem. Dlatego do iteracji służy for.

Pytanie 6

Zastosowanie poniższej kwerendy SQL spowoduje usunięcie

DELETE FROM mieszkania WHERE status=1;
A. tabel, w których pole status ma wartość 1, z bazy danych mieszkania
B. rekordów, dla których pole status ma wartość 1, z tabeli mieszkania
C. tabeli mieszkania z systemu baz danych
D. pola o nazwie status w tabeli mieszkania
Odpowiedź, którą zaznaczyłeś, jest jak najbardziej trafna i dotyczy działania kwerendy SQL, szczególnie polecenia DELETE. W tym przypadku, to DELETE FROM mieszkania WHERE status=1 oznacza, że zamierzamy usunąć wszystkie rekordy z tabeli mieszkania, gdzie status jest równy 1. To jest ważne, bo w zarządzaniu bazami danych kluczowe jest precyzyjne ustalenie, które dane chcemy usunąć. Z mojej perspektywy, przed wykonaniem takiej operacji warto najpierw wykonać zapytanie SELECT z tymi samymi warunkami, żeby zobaczyć, co dokładnie usuniemy. Przykład? Możesz chcieć usunąć mieszkania, które są zarezerwowane lub niedostępne, co może być oznaczone statusem 1. To naprawdę dobra praktyka, bo pozwala na lepsze zarządzanie danymi i na utrzymanie porządku w bazie. A wiesz, co jeszcze? Zawsze warto zrobić kopię zapasową danych przed masowym usuwaniem, żeby nie stracić czegoś ważnego.

Pytanie 7

Która instrukcja PHP wysyła tekst do przeglądarki (wyświetla go)?

A.
echo
B.
type
C.
exit
D.
break
Instrukcja echo w PHP wysyła tekst (lub wartość zmiennej) na wyjście, czyli do przeglądarki - np. echo "Witaj";. Dlatego tekst wyświetla echo.

Pytanie 8

Na podstawie przypisania wartości do zmiennych zapisanych w języku PHP można stwierdzić, że

$zmienna1 = 15;
$zmienna2 = "15";
$zmienna3 = (string) $zmienna1;
A. Wszystkie zmienne są tego samego typu.
B. zmienna2 i zmienna3 są tego samego typu.
C. zmienna1 i zmienna3 są tego samego typu.
D. zmienna1 i zmienna2 są tego samego typu.
Gratulacje! Wybrałeś poprawną odpowiedź, czyli zmienna2 i zmienna3 są tych samych typów. W kodzie PHP wartość zmiennej1 była liczbą całkowitą (int), natomiast wartość zmiennej2 była ciągiem znaków (string). Zmienna3 natomiast była wynikiem rzutowania zmiennej1 na typ string. Stąd wynika, że zmienna2 i zmienna3 są obie typu string. Rzutowanie to operacja konwersji jednego typu danych na inny, co jest powszechną praktyką w programowaniu. Używane jest, na przykład, kiedy chcemy porównać dwa różne typy danych lub chcemy je połączyć. Pamiętaj jednak, że PHP jest językiem o dynamicznych typach, co oznacza, że typ zmiennej może ulec zmianie w trakcie wykonania skryptu. Dlatego zawsze warto mieć na uwadze typy zmiennych, z którymi pracujesz.

Pytanie 9

W języku JavaScript poniższy fragment funkcji ma na celu

wynik = 0;
for (i = 0; i < tab.length; i++) {
  wynik += tab[i];
}
A. wyświetlić wszystkie elementy tablicy
B. wprowadzić do każdego elementu tablicy bieżącą wartość zmiennej i
C. obliczyć sumę wszystkich elementów tablicy
D. dodać do każdego elementu tablicy ustaloną wartość
Wybór odpowiedzi dotyczącej wprowadzenia aktualnej wartości zmiennej i do każdego elementu tablicy jest mylny, ponieważ kod nie wykonuje takiej operacji. W rzeczywistości, zmienna 'i' jest jedynie wskaźnikiem iteracji w pętli i nie jest modyfikowana w żaden sposób w kontekście wartości elementów tablicy. Kolejna odpowiedź sugerująca wyświetlenie wszystkich elementów tablicy jest również błędna, ponieważ w kodzie nie pojawia się żadna operacja wyświetlająca. W języku JavaScript, aby wyświetlić elementy tablicy, używalibyśmy np. funkcji console.log() lub innej metody interakcji z użytkownikiem. Odpowiedź mówiąca o dodawaniu stałej wartości do każdego elementu tablicy odnosi się do innej operacji matematycznej, która nie znajduje odzwierciedlenia w podanym kodzie. W rzeczywistości, dodawanie stałej wartości wymagałoby zdefiniowania tej wartości oraz zmodyfikowania sposobu, w jaki elementy tablicy są przetwarzane. Typowe błędy myślowe przy analizie kodu mogą wynikać z nieprecyzyjnego zrozumienia, co każda linia kodu rzeczywiście wykonuje, a także z braku znajomości podstawowych operacji na tablicach, co prowadzi do błędnych wniosków. Zrozumienie, co dokładnie robi dany fragment kodu, jest kluczowe dla efektywnego programowania i unikania takich nieporozumień.

Pytanie 10

Aby dodać nowy rekord do tabeli Pracownicy, konieczne jest zastosowanie polecenia SQL

A. INSERT VALUES (Jan, Kowalski) INTO Pracownicy
B. INSERT (Jan, Kowalski) INTO Pracownicy
C. INSERT INTO Pracownicy VALUES ('Jan',' Kowalski')
D. INSERT VALUES Pracownicy INTO (Jan, Kowalski)
Aby dodać nowy rekord do tabeli Pracownicy w bazie danych, należy skorzystać z polecenia SQL INSERT INTO, które jest standardowym sposobem na wprowadzenie nowych danych do tabeli. Poprawna składnia polecenia to 'INSERT INTO <nazwa_tabeli> VALUES (<wartości>)'. W przypadku podanego przykładu, używamy 'INSERT INTO Pracownicy VALUES ('Jan', 'Kowalski');', co jest zgodne z wymaganiami SQL. Polecenie to wprowadza dwa nowe atrybuty: imię 'Jan' oraz nazwisko 'Kowalski' do tabeli Pracownicy. Ważne jest, aby wartości były poprawnie otoczone apostrofami w przypadku typów danych tekstowych. Zgodnie z normami SQL, zapis ten pozwala na dodanie rekordu, pod warunkiem, że kolumny tabeli są zgodne z wprowadzanymi danymi, a tabela Pracownicy została wcześniej zdefiniowana w bazie danych. Przykładem może być sytuacja, w której tabela Pracownicy ma kolumny 'Imie' i 'Nazwisko', a wprowadzenie wartości bezpośrednio do tych kolumn jest zgodne z ich definicją.

Pytanie 11

Która metoda wyświetli w JavaScript komunikat w konsoli przeglądarki?

A.
console.echo("test");
B.
console.write("test");
C.
console.log("test");
D.
console.print("test");
Metoda console.log() wypisuje przekazany komunikat (tekst, liczbę, obiekt) w konsoli narzędzi deweloperskich przeglądarki. To podstawowe narzędzie do podglądu wartości i debugowania kodu JavaScript - pozwala sprawdzić, co dzieje się w trakcie działania skryptu. Obiekt console ma też metody takie jak console.error() czy console.warn() dla komunikatów o błędach i ostrzeżeń. Dlatego do wypisania komunikatu w konsoli służy console.log().

Pytanie 12

Ile maksymalnie znaczników <td> może być zastosowanych w tabeli, która ma trzy kolumny oraz trzy wiersze, nie zawierając przy tym złączeń komórek i wiersza nagłówkowego?

A. 6
B. 3
C. 9
D. 12
Odpowiedź 9 jest prawidłowa, ponieważ w tabeli o trzech kolumnach i trzech wierszach, gdzie nie ma złączeń komórek ani wiersza nagłówkowego, maksymalna liczba znaczników <td> wynosi 9. Każda kolumna w każdym wierszu może być wypełniona osobnym znacznikiem <td>. Tabela składająca się z 3 wierszy i 3 kolumn daje w sumie 3 x 3 = 9 komórek, które są reprezentowane przez znaczniki <td>. Przykładową strukturę HTML takiej tabeli można przedstawić następująco: <table><tr><td>1</td><td>2</td><td>3</td></tr><tr><td>4</td><td>5</td><td>6</td></tr><tr><td>7</td><td>8</td><td>9</td></tr></table>. Warto również zauważyć, że zgodnie z zaleceniami W3C, użycie odpowiednich znaczników w tabelach jest kluczowe dla zapewnienia właściwej dostępności i semantyki dokumentu HTML, co jest zgodne z dobrymi praktykami tworzenia stron internetowych.

Pytanie 13

W systemie MySQL trzeba użyć polecenia REVOKE, aby użytkownikowi anna cofnąć możliwość wprowadzania zmian jedynie w definicji struktury bazy danych. Odpowiednia komenda do odebrania tych uprawnień ma postać

A. REVOKE CREATE ALTER DROP ON tabela1 FROM 'anna'@'localhost'
B. REVOKE CREATE UPDATE DROP ON tabela1 FROM 'anna'@'localhost'
C. REVOKE CREATE INSERT DELETE ON tabela1 FROM 'anna'@'localhost'
D. REVOKE ALL ON tabela1 FROM 'anna'@'locaihost'
Polecenie REVOKE w MySQL jest używane do odbierania przydzielonych wcześniej uprawnień użytkownikom. W kontekście pytania, właściwa odpowiedź to 'REVOKE CREATE ALTER DROP ON tabela1 FROM 'anna'@'localhost''. To polecenie wskazuje na odebranie użytkownikowi 'anna' możliwości tworzenia nowych obiektów w bazie danych (CREATE), zmiany struktury istniejących obiektów (ALTER) oraz usuwania obiektów (DROP) w tabeli 'tabela1'. Odbieranie tych praw jest kluczowe w zarządzaniu bezpieczeństwem bazy danych, ponieważ pozwala na precyzyjne kontrolowanie, kto ma dostęp do modyfikacji struktury bazy danych. W praktyce, administratorzy baz danych często muszą ograniczać uprawnienia użytkowników, aby zapobiec nieautoryzowanym zmianom, które mogą wpłynąć na integralność danych. Dobrą praktyką jest regularne przeglądanie i aktualizowanie uprawnień użytkowników, aby dostosować je do zmieniających się potrzeb organizacji oraz zwiększyć poziom bezpieczeństwa systemu.

Pytanie 14

Na podstawie filmu wskaż, która cecha dodana do stylu CSS zamieni miejscami bloki aside i nav, pozostawiając w środku blok section?

A. aside {float: left; }
B. nav { float: right; }
C. nav { float: left; } aside { float: left; }
D. nav { float: right; } section { float: right; }
Prawidłowa odpowiedź opiera się na tym, jak działają własności float w CSS i w jakiej kolejności przeglądarka renderuje elementy blokowe. Jeśli w dokumencie HTML kolejność znaczników to np. &lt;aside&gt;, potem &lt;section&gt;, a na końcu &lt;nav&gt;, to bez dodatkowego stylowania wszystkie trzy ustawią się pionowo, jeden pod drugim, w tej właśnie kolejności. Dodanie float zmienia sposób, w jaki elementy „odpływają” od normalnego przepływu dokumentu i jak układają się obok siebie.

W stylu nav { float: right; } section { float: right; } sprawiamy, że zarówno nav, jak i section są przesuwane do prawej krawędzi kontenera, natomiast aside (bez float) pozostaje w normalnym przepływie, czyli z lewej strony. Ponieważ przeglądarka układa elementy w kolejności występowania w kodzie, najpierw wyrenderuje aside po lewej, potem section „odpłynie” w prawo, a na końcu nav też „odpłynie” w prawo, ustawiając się po prawej stronie, ale dalej od góry niż section. Efekt wizualny jest taki, że po lewej mamy aside, po prawej nav, a section ląduje między nimi, dokładnie tak jak było pokazane na filmie.

Moim zdaniem to zadanie dobrze pokazuje, że przy floatach zawsze trzeba myśleć o trzech rzeczach naraz: kolejności elementów w HTML, kierunku „pływania” (left/right) oraz o tym, które elementy pozostawiamy w normalnym przepływie. W praktyce w nowoczesnych projektach częściej używa się flexboxa albo CSS Grid do takich układów, bo są czytelniejsze i mniej problematyczne. Przykładowo, zamiast kombinować z float, można by użyć display: flex; na kontenerze i ustawić order dla aside i nav. Float nadal jednak pojawia się w starszych layoutach i w zadaniach egzaminacyjnych, więc warto dobrze rozumieć jego zachowanie, choćby po to, żeby poprawnie modyfikować istniejące style lub naprawiać „rozjechane” układy w starszych projektach.

Pytanie 15

Kwalifikatory dostępu private, protected i public definiują mechanizm:

A. hermetyzacji (enkapsulacji)
B. polimorfizmu
C. przeładowania (overloadingu)
D. rekurencji
Kwalifikatory private, protected i public sterują widocznością pól i metod klasy, czyli realizują HERMETYZACJĘ (enkapsulację) - ukrywanie wewnętrznych szczegółów i udostępnianie tylko wybranego interfejsu. Dlatego definiują mechanizm hermetyzacji.

Pytanie 16

Jeden klient może mieć wiele zamówień, a każde zamówienie należy do jednego klienta. Jaka to relacja?

A.
1 .. 1
B.
n .. n
C.
1 .. n
D.
n .. 1
Pozostałe oznaczenia nie pasują. 1..1 znaczyłoby, że klient ma tylko jedno zamówienie. n..1 to ta sama relacja zapisana odwrotnie (z punktu widzenia zamówień), ale w opisie punktem wyjścia jest klient, więc naturalnie 1..n. n..n pozwalałoby, by zamówienie należało do wielu klientów. Opisany przypadek to 1..n.

Pytanie 17

Fragment kodu w języku PHP przedstawia się następująco (patrz ramka): W wyniku wykonania pętli zostaną wyświetlone liczby

Ilustracja do pytania
A. 0, 4, 8, 12, 16, 20
B. 0, 4, 8, 12, 16
C. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
D. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
Pętla for w PHP to naprawdę podstawowe narzędzie, które pozwala nam w łatwy sposób powtarzać różne operacje na danych. W tej pętli zaczynamy od $i równego 0, a kończymy, kiedy $i osiągnie 20. W każdej iteracji dodajemy 4 do $i, więc wypisujemy liczby od 0 do 20, co 4 jednostki. Super sprawa, jeśli chcemy równomiernie przetwarzać dane. Przykładowo, gdy mamy jakieś tabele z danymi albo potrzebujemy wygenerować wykresy w regularnych odstępach, to taka pętla się przydaje. Stosowanie pętli to też dobra praktyka programistyczna, bo automatyzuje nam powtarzalne zadania, co czyni kod bardziej przejrzystym. Jak zrozumiesz, jak działa ta pętla, to dużo łatwiej będzie ci tworzyć różne algorytmy, co jest super ważne w informatyce.

Pytanie 18

W języku PHP przeprowadzono operację przedstawioną w ramce. Jak można postąpić, aby wyświetlić wszystkie wyniki tego zapytania?

$tab = mysqli_query($db, "SELECT imie FROM Osoby WHERE wiek < 18");
A. zaindeksować zmienną tab, tab[0] to pierwsze imię
B. pokazać zmienną $db
C. użyć polecenia mysql_fetch
D. zastosować pętlę z poleceniem mysqli_fetch_row
Prawidłowa odpowiedź dotyczy zastosowania pętli z poleceniem mysqli_fetch_row. W języku PHP przy pracy z bazą danych MySQL wykorzystujemy bibliotekę mysqli, która oferuje funkcje pozwalające na manipulację danymi. Funkcja mysqli_query wykonuje zapytanie SQL na połączeniu z bazą danych, zwracając wynik w postaci obiektu typu mysqli_result. Aby pobrać wszystkie wiersze wyników, konieczne jest zastosowanie pętli, która iteruje przez każdy wiersz zwracany przez zapytanie. Funkcja mysqli_fetch_row jest używana do pobrania kolejnego wiersza z wyniku jako tablicy numerycznej. Przykładowy kod mógłby wyglądać następująco while ($row = mysqli_fetch_row($tab)) { echo $row[0]; } co pozwala na wyświetlenie imion wszystkich osób poniżej 18 roku życia. Praktyczne podejście polega na iteracyjnej obsłudze wyników zapytań, co jest zgodne z branżowymi standardami. Takie rozwiązanie umożliwia dynamiczne przetwarzanie danych w czasie rzeczywistym zwiększając elastyczność aplikacji. Dodatkowo warto pamiętać o odpowiednim zarządzaniu zasobami, takim jak zamknięcie połączenia z bazą danych po zakończeniu operacji. To podejście podkreśla znaczenie efektywnego zarządzania danymi w aplikacjach webowych.

Pytanie 19

Dostępna jest tabela z danymi o mieszkaniach, zawierająca kolumny: adres, metraż, liczba_pokoi, standard, status, cena. Wykonanie poniższej kwerendy SQL SELECT spowoduje wyświetlenie

SELECT metraz, cena FROM mieszkania WHERE ile_pokoi > 3;
A. Metraż oraz koszt tych mieszkań, które mają przynajmniej 3 pokoje
B. Wszystkie informacje o tych mieszkaniach, które mają minimum 3 pokoje
C. Metraż oraz koszt tych mieszkań, które mają więcej niż 3 pokoje
D. Wszystkie informacje poza adresem tych mieszkań, które mają więcej niż 3 pokoje
W tym zapytaniu SQL chodzi o to, żeby ściągnąć konkretne dane z tabeli mieszkania. Używamy klauzuli SELECT, dlatego wybieramy tylko te kolumny, które nas interesują, czyli metraż i cena. I to wszystko bierzemy z tabeli mieszkania, co mamy w klauzuli FROM. Jeszcze dodajemy filtr WHERE, który mówi, że bierzemy tylko te mieszkania, które mają więcej niż trzy pokoje. To naprawdę dobra strategia, bo dzięki temu dokładnie widzimy, co nas interesuje. Takie zapytanie przydaje się w analizach rynku nieruchomości, bo można porównywać ceny mieszkań z większą ilością pokoi. Ogólnie mówiąc, SQL jest super narzędziem do pracy z danymi, bo pozwala nam szybko i efektywnie wyciągać to, co jest dla nas ważne. Wiedza na temat takich zapytań to podstawa, zwłaszcza w pracy z dużymi bazami danych i generowaniu różnych raportów.

Pytanie 20

Który typ przypisać kolumnie z kodami pocztowymi, by przechowywała tekst o STAŁEJ długości?

A.
DECIMAL
B.
TEXT
C.
CHAR
D.
BLOB
Pozostałe typy się nie nadają. TEXT przechowuje długie teksty o ZMIENNEJ długości, BLOB służy do danych binarnych (np. plików), a DECIMAL to typ liczbowy - zgubiłby myślnik i zero wiodące. Tekst stałej długości daje CHAR.

Pytanie 21

Zawarta baza danych składa się z trzech tabel oraz dwóch relacji. Aby uzyskać informacje o wszystkich lekarzach przypisanych do wybranego pacjenta, konieczne jest porównanie kluczy

Ilustracja do pytania
A. Lekarze.id = Pacjenci.Lekarze_id
B. Lekarze.id = Recepty.id
C. Lekarze.id = Pacjenci.id
D. Lekarze.id = Pacjenci.Recepty_id
Odpowiedź Lekarze.id = Pacjenci.Lekarze_id jest poprawna, ponieważ w bazach danych relacyjne połączenie między tabelami jest realizowane przez klucze obce. Tabela Pacjenci zawiera kolumnę Lekarze_id, która jest kluczem obcym odnoszącym się do kolumny id w tabeli Lekarze. Dzięki temu połączeniu możemy określić, który lekarz jest przypisany do danego pacjenta. W praktyce oznacza to, że możemy wykonywać zapytania SQL, które łączą te tabele i wyświetlają dane wszystkich lekarzy przypisanych do konkretnego pacjenta. Przykładowe zapytanie SELECT może wyglądać tak SELECT Lekarze.imie Lekarze.nazwisko FROM Pacjenci INNER JOIN Lekarze ON Pacjenci.Lekarze_id = Lekarze.id WHERE Pacjenci.id = [id_pacjenta]. Takie podejście jest zgodne z dobrymi praktykami projektowania baz danych zgodnie z zasadami normalizacji co zwiększa spójność i integralność danych. Poprawne użycie kluczy obcych jest fundamentalne w kontekście zarządzania relacjami między danymi oraz umożliwia przeprowadzanie bardziej złożonych analiz danych z różnych tabel w sposób wydajny i bezpieczny.

Pytanie 22

Wskaż zapytanie, w którym dane są uporządkowane.

A. SELECT DISTINCT produkt, cena FROM artykuly;
B. SELECT nazwisko FROM firma WHERE pensja > 2000 LIMIT 10;
C. SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;
D. SELECT AVG(ocena) FROM uczniowie WHERE klasa = 2;
Odpowiedź wskazująca na zapytanie "SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;" jest prawidłowa, ponieważ zawiera klauzulę ORDER BY, która służy do sortowania rekordów w wynikach zapytania. W tym przypadku dane są sortowane według kolumny 'wiek', co pozwala na uzyskanie uporządkowanej listy mieszkańców, którzy mają więcej niż 18 lat. Sortowanie danych jest kluczowym aspektem w zarządzaniu bazami danych, umożliwiającym łatwiejsze wyszukiwanie oraz analizę informacji. Przykładem zastosowania może być generowanie raportów, gdzie istotne jest uporządkowanie danych, na przykład według wieku, aby zobaczyć, jak rozkłada się wiek mieszkańców w danej grupie. Dodatkowo, stosowanie sortowania zgodnie z przyjętymi standardami SQL zwiększa czytelność oraz efektywność zapytań, a także ułatwia rozwiązywanie problemów związanych z przetwarzaniem danych.

Pytanie 23

W CSS, aby zmienić kolor tekstu dowolnego elementu HTML po najechaniu na niego myszą, należy wykorzystać pseudoklasę

A. :active
B. :hover
C. :coursor
D. :visited
:hover jest pseudoklasą wykorzystywaną w CSS do stylizacji elementów w momencie, gdy użytkownik na nie najedzie kursorem. To bardzo przydatne narzędzie, pozwalające na interaktywne zmiany wyglądu strony internetowej, co znacznie poprawia doświadczenia użytkownika. Przykładem zastosowania może być zmiana koloru tekstu linków. Można to osiągnąć, definiując odpowiednie reguły CSS, takie jak: `a:hover { color: red; }`, co spowoduje, że linki zmienią kolor na czerwony, gdy na nie najedziemy. Pseudoklasa :hover jest zgodna z W3C CSS, a jej zastosowanie w projektowaniu stron zapewnia lepszą dostępność i intuitwność interfejsu. Warto pamiętać, że efekty hover powinny być subtelne i dobrze przemyślane, aby nie odwracać uwagi od głównych treści strony, ale jednocześnie umożliwić użytkownikom szybkie zauważenie działań, które mogą podjąć.

Pytanie 24

Na czym polega zasada działania algorytmów zachłannych?

A. na przeszukiwaniu danych aż do znalezienia rozwiązania
B. na dzieleniu problemu na mniejsze podproblemy
C. na wybieraniu rozwiązania najkorzystniejszego na danym etapie
D. na odwoływaniu się funkcji do samej siebie
Pozostałe odpowiedzi opisują inne podejścia. Przeszukiwanie danych aż do znalezienia rozwiązania to strategia przeglądania (np. siłowego), a nie zachłanna. Dzielenie problemu na mniejsze podproblemy to technika „dziel i zwyciężaj”, w której wyniki podproblemów się scala. Odwoływanie się funkcji do samej siebie to rekurencja - sposób implementacji, a nie strategia wyboru. Algorytm zachłanny w każdym kroku wybiera lokalnie najlepszą opcję, dlatego ta odpowiedź jest poprawna.

Pytanie 25

Gdzie należy umieścić znacznik meta w języku HTML?

A. między znacznikami paragrafu
B. między znacznikami body
C. w sekcji nagłówkowej strony internetowej
D. w stopce strony internetowej
Znacznik meta w języku HTML jest kluczowym elementem, który powinien być umieszczony w części nagłówkowej (head) dokumentu. Znaczniki meta służą do definiowania różnych informacji o stronie, takich jak zestaw znaków, opis, słowa kluczowe, autor oraz inne istotne dane, które nie są bezpośrednio wyświetlane na stronie. Przykładowo, znacznik meta z atrybutem 'charset' informuje przeglądarki, w jaki sposób interpretować znaki na stronie, co jest szczególnie ważne dla prawidłowego wyświetlania treści w różnych językach. Standardy HTML5 zalecają umieszczanie znaczników meta w nagłówku, aby umożliwić optymalizację SEO, co zwiększa widoczność strony w wynikach wyszukiwania. Dobrą praktyką jest również dodanie opisu strony przy pomocy znacznika meta 'description', co pozwala wyszukiwarkom na lepsze zrozumienie tematyki strony oraz zwiększa klikalność w wynikach wyszukiwania.

Pytanie 26

Aby wprowadzić rekord do tabeli Pracownicy, jakie polecenie SQL należy zastosować?

A. INSERT (Jan, Kowalski) INTO Pracownicy;
B. INSERT VALUES Pracownicy INTO (Jan, Kowalski);
C. INSERT VALUES (Jan, Kowalski) INTO Pracownicy;
D. INSERT INTO Pracownicy (imie, nazwisko) VALUES (Jan, Kowalski);
Odpowiedź 'INSERT INTO Pracownicy (imie, nazwisko) VALUES (Jan, Kowalski);' jest poprawna, ponieważ jest zgodna z ogólną składnią polecenia SQL do dodawania danych do tabeli. W składni tej najpierw wskazujemy, do której tabeli chcemy wprowadzić dane, używając frazy 'INSERT INTO', a następnie w nawiasach podajemy nazwy kolumn, do których mają być wprowadzone wartości. Wartości te umieszczamy po słowie kluczowym 'VALUES', również w nawiasach. Takie podejście jest zgodne z normami SQL i zapewnia, że dane będą poprawnie wstawione. Przykładem praktycznym może być dodanie nowego pracownika do bazy danych firmy, co jest kluczowym elementem zarządzania informacjami o pracownikach. Prawidłowa składnia pozwala również na łatwe wprowadzenie wielu rekordów jednocześnie, co jest efektywne w dużych systemach baz danych. Ponadto, użycie poprawnej składni ułatwia przyszłe modyfikacje oraz optymalizację zapytań, co jest istotne w kontekście dobrą praktyką w programowaniu baz danych.

Pytanie 27

Który zapis definiuje w języku C++ komentarz jednoliniowy?

A.
#
B.
//
C.
<
D.
/*
/* otwiera komentarz BLOKOWY (zamykany */). # rozpoczyna dyrektywę preprocesora (np. #include), nie komentarz. < to operator porównania. Komentarz do końca linii daje //.

Pytanie 28

Podczas walidacji strony napotkano błąd. Co to oznacza?

Ilustracja do pytania
A. znacznik meta nie zawiera atrybutu charset
B. w atrybucie charset dopuszczalna jest wyłącznie wartość "utf-8"
C. określenie kodowania znaków musi być zapisane bez użycia myślników
D. oznaczenie ISO-8859-2 jest nieprawidłowe
Podczas walidacji strony często spotykany błąd może dotyczyć niepoprawnego kodowania znaków co jest kluczowe dla poprawnego wyświetlania treści w różnych językach. Oznaczenie ISO-8859-2 choć istnieje i jest stosowane dla niektórych kodowań środkowoeuropejskich nie jest zalecane w nowoczesnych standardach webowych. Właściwym podejściem jest stosowanie UTF-8 które jest bardziej uniwersalne i wspierane przez współczesne przeglądarki. Twierdzenie że w znaczniku meta nie występuje atrybut charset jest błędne ponieważ jest to jeden z podstawowych elementów definiujących jak przeglądarka powinna interpretować znaki na stronie internetowej. Użycie tego atrybutu jest kluczowe dla uniknięcia problemów z wyświetlaniem znaków specjalnych. Kolejna koncepcja że w atrybucie charset jest dozwolona wyłącznie wartość utf-8 jest prawidłowa ale wymaga zrozumienia że jest to jedynie zalecenie zgodne z HTML5 które zapewnia największą kompatybilność i elastyczność. Natomiast oznaczenie kodowania znaków bez myślników nie jest standardem przyjętym w żadnej popularnej specyfikacji co oznacza że takie podejście jest błędne. W praktyce zawsze warto sięgać po zalecane rozwiązania zapewniające poprawność i kompatybilność treści webowych. Użycie niepoprawnego kodowania może prowadzić do błędów w interpretacji i wyświetlaniu stron co jest szczególnie istotne w kontekście międzynarodowych aplikacji i stron internetowych. Współczesne standardy bezpieczeństwa i dostępności stron internetowych jednoznacznie wskazują że stosowanie UTF-8 jest najlepszą praktyką pozwalającą unikać wielu problematycznych sytuacji w międzynarodowym środowisku internetowym. Dążenie do zgodności z tym standardem jest nie tylko rekomendowane ale wręcz wymagane w kontekście tworzenia profesjonalnych i dostępnych stron internetowych. To podejście gwarantuje że treści będą prawidłowo odczytywane przez przeglądarki na całym świecie.

Pytanie 29

Którą właściwością CSS ustawia się kolor tła elementu (np. strony)?

A.
background-color
B.
bgcolor
C.
text-background
D.
color
Pozostałe odpowiedzi nie ustawią tła w CSS. color to prawdziwa właściwość, ale odpowiada za kolor tekstu, a nie tła. text-background w ogóle nie istnieje - przeglądarka taką deklarację zignoruje. bgcolor to przestarzały atrybut HTML (np. <body bgcolor="...">), wycofany na rzecz stylów - nie jest właściwością CSS. Kolor tła elementu ustawia background-color, dlatego to ona jest poprawna.

Pytanie 30

Która z definicji funkcji w języku C++ przyjmuje parametr typu zmiennoprzecinkowego i zwraca wartość typu całkowitego?

A. float fun1(int a)
B. int fun1(float a)
C. float fun1(void a)
D. void fun1(int a)
Odpowiedź 'int fun1(float a);' jest poprawna, ponieważ funkcja ma parametr wejściowy typu 'float', co oznacza, że przyjmuje dane rzeczywiste. Zwracany typ 'int' wskazuje, że funkcja będzie generować wynik w formacie całkowitym. W praktyce, taka funkcjonalność może być użyteczna, gdy chcemy przetworzyć dane zmiennoprzecinkowe i uzyskać wynik jako liczbę całkowitą, na przykład w obliczeniach, gdzie zaokrąglamy wartości do najbliższej liczby całkowitej. W kontekście programowania w języku C++, standardowe praktyki zalecają, aby zwracać typ, który jest odpowiedni do kontekstu użycia funkcji. Często stosuje się konwersje typów, co w tym przypadku może być zastosowane do przekształcenia wartości zmiennoprzecinkowej na całkowitą. Dobrą praktyką jest również odpowiednie dokumentowanie funkcji, aby jasno określić, jakie typy danych są oczekiwane i jakie będą wyniki ich przetworzenia. Dzięki temu, kod staje się bardziej czytelny i łatwy do utrzymania.

Pytanie 31

W języku HTML zdefiniowano znacznik

<a href="http://website.com" rel="nofollow">link</a>
Wartość nofollow atrybutu rel
A. jest informacją dla robota wyszukiwarki Google, aby nie podążał za tym linkiem.
B. oznacza, że kliknięcie na link otworzy go w osobnej karcie przeglądarki.
C. oznacza, że kliknięcie na link nie przeniesie do strony website.com.
D. jest informacją dla przeglądarki internetowej, aby nie formatowała słowa "link" jako odnośnika.
Niestety, to nie tak. Atrybut rel='nofollow' w tagu <a> nie mówi przeglądarkom, żeby otworzyły link w nowej karcie ani nie mówi użytkownikowi, że kliknięcie na link nie przeniesie go do strony website.com. Ten atrybut jest dla robotów wyszukiwarek. Możliwe, że wybrałeś tę odpowiedź, bo nie do końca rozumiesz, jak działają atrybuty w HTML. W HTML atrybuty to dodatkowe informacje o elemencie, które są w tagu otwierającym. W przypadku 'rel', chodzi o wskazówki dla robotów wyszukiwarek, jak powinny traktować dany link. Z mojego doświadczenia, zrozumienie roli różnych atrybutów w HTML jest kluczowe, jeśli chcesz robić dobre strony internetowe.

Pytanie 32

Który zapis deklaracji zmiennej w JavaScript jest POPRAWNY?

A.
const var-name = 10;
B.
var 2nameVar = 10;
C.
let variableName = 10;
D.
var $name@ = 10;
Nazwa zmiennej w JavaScripcie może zawierać litery, cyfry, _ i $, ale NIE może zaczynać się od cyfry ani zawierać myślnika czy znaków specjalnych. Dlatego poprawny jest let variableName = 10; - nazwa zaczyna się literą i jest zapisana w stylu camelCase. Zapamiętaj: zaczynaj od litery (lub _/$), bez - i bez znaków specjalnych.

Pytanie 33

Zidentyfikuj poprawnie zbudowany warunek w języku PHP, który sprawdza brak połączenia z bazą MySQL.

A. if (mysql_connect_error())()
B. if {mysql_connect_errno()}{}
C. if {mysqli_connect_error()}{}
D. if (mysqli_connect_errno()){}
Odpowiedź, którą zaznaczyłeś, to 'if (mysqli_connect_errno()){}'. Funkcja 'mysqli_connect_errno()' mówi nam, jaki błąd wystąpił, jeśli nie udało się połączyć z bazą danych MySQL. Jeśli zwraca coś innego niż zero, to znaczy, że coś poszło nie tak. Używamy warunku 'if' w PHP, żeby sprawdzić, czy coś jest prawdą, a w tym wypadku badamy, czy wystąpił błąd podczas łączenia się. Kiedy już wiemy, że są problemy, warto dodać logikę do obsługi błędów, na przykład powiedzieć użytkownikowi, co się wydarzyło lub zapisywać szczegóły w logach. Pamiętaj, żeby korzystać z 'mysqli', bo 'mysql' to już staroć i nie jest rozwijana. ‘Mysqli’ to lepszy wybór, bo daje nam więcej możliwości oraz lepsze bezpieczeństwo i wydajność w aplikacjach webowych.

Pytanie 34

Która reguła dotycząca sekcji <head> w HTML jest poprawna?

A. w <head> definiuje się szablon strony znacznikami <div>
B. w <head> mogą wystąpić <meta>, <title>, <link>
C. w <head> nie można umieszczać CSS, tylko odwołanie do pliku
D. w <head> zawiera się sekcję <body>
Sekcja <head> nie zawiera widocznej treści strony, lecz informacje O niej - metadane i powiązania z zasobami. Poprawnie mogą się w niej znaleźć <meta> (np. kodowanie znaków, opis dla wyszukiwarek), <title> (tytuł widoczny na karcie przeglądarki) oraz <link> (np. dołączenie zewnętrznego arkusza CSS). Dlatego poprawne jest stwierdzenie o <meta>, <title> i <link>.

Pytanie 35

Które polecenie nadaje użytkownikowi uczen najniższe uprawnienia (najmniejszą możliwość modyfikacji danych i struktury)?

A.
GRANT DROP ON szkola.przedmioty TO uczen;
B.
GRANT ALTER, SELECT ON szkola.przedmioty TO uczen;
C.
GRANT SELECT ON szkola.przedmioty TO uczen;
D.
GRANT INSERT, DROP ON szkola.przedmioty TO uczen;
Najmniej ingerujące prawo to samo CZYTANIE danych - GRANT SELECT ON szkola.przedmioty TO uczen; pozwala tylko odczytywać tabelę, bez modyfikacji danych i struktury. Dlatego najniższe uprawnienia daje GRANT SELECT.

Pytanie 36

Jaką wartość zwróci zapytanie z ramki wykonane na pokazanej tabeli?

SELECT COUNT(DISTINCT wykonawca) FROM muzyka;
Ilustracja do pytania
A. 1
B. 4
C. 3
D. 0
Zapytanie SQL SELECT COUNTDISTINCT wykonawca) FROM muzyka; ma na celu zliczenie unikalnych wartości w kolumnie wykonawca tabeli muzyka. W tym przypadku w tabeli są trzy różne wartości w tej kolumnie: Czesław Niemen Stan Borys i Mikołaj Czechowski. Funkcja COUNTDISTINCT zwraca liczbę niepowtarzających się wykonawców co w tym zestawie danych daje wynik 3. Zrozumienie użycia funkcji COUNTDISTINCT jest kluczowe w analizie danych szczególnie gdy chcemy określić liczebność unikalnych elementów w dużych zbiorach danych. To podejście jest szeroko stosowane w raportowaniu i analizach biznesowych gdzie istotne jest zidentyfikowanie niepowtarzalnych wpisów na przykład liczby unikalnych klientów czy produktów w sklepie. Dobre praktyki w SQL obejmują używanie aliasów w celu zwiększenia czytelności zapytań oraz optymalizację wydajności przez właściwe indeksowanie kolumn które są często wykorzystywane w funkcjach zliczających.

Pytanie 37

Po zrealizowaniu przedstawionego fragmentu kodu w języku C/C++ do zmiennej o nazwie zmienna2 przypisany zostanie

int zmienna1 = 158; int *zmienna2 = &zmienna1;
A. przypisana zamieniona na łańcuch wartość, która jest przechowywana w zmienna1
B. przypisany adres zmiennej o nazwie zmienna1
C. przypisana liczba w kodzie binarnym odpowiadająca wartości, która jest przechowywana w zmienna1
D. przypisana ta sama wartość, która jest przechowywana w zmienna1
W odpowiedzi 1 stwierdzono, że zmiennej zmienna2 zostanie przypisany adres zmiennej zmienna1. To stwierdzenie jest poprawne, ponieważ w kodzie C/C++ operator '&' jest używany do uzyskania adresu zmiennej. W prezentowanym fragmencie kodu zmienna2 jest wskaźnikiem, który przechowuje adres zmiennej zmienna1, co oznacza, że zmienna2 wskazuje na lokalizację w pamięci, w której przechowywana jest wartość zmiennej zmienna1. Takie podejście jest kluczowe w programowaniu niskopoziomowym, gdzie manipulacja adresami pamięci jest często wykorzystywana do efektywnego zarządzania zasobami. Przykład praktyczny to dynamiczna alokacja pamięci, gdzie programista może przydzielać i zwalniać pamięć w trakcie działania programu, co jest możliwe dzięki wskaźnikom. Zrozumienie wskaźników i adresów jest fundamentalne w C/C++, a ich właściwe użycie przyczynia się do optymalizacji kodu oraz umożliwia tworzenie bardziej złożonych struktur danych, takich jak listy, stosy czy kolejki.

Pytanie 38

Aby utworzyć relację wiele do wielu między tabelami A i B, wystarczy, że

A. połączenie tabeli A z tabelą B nastąpi poprzez określenie kluczy obcych
B. zostanie zdefiniowana trzecia tabela z kluczami obcymi do tabel A i B
C. wiele wpisów z tabeli A powtórzy się w tabeli B
D. tabela A będzie miała identyczne pola jak tabela B
Odpowiedź, że należy zdefiniować trzecią tabelę z kluczami obcymi do tabel A i B, jest poprawna, ponieważ relacja wiele do wielu wymaga pośrednictwa trzeciej tabeli, często nazywanej tabelą asocjacyjną lub łączącą. W praktyce oznacza to, że każdy rekord w tabeli A może być powiązany z wieloma rekordami w tabeli B i vice versa. Tabela asocjacyjna zawiera co najmniej dwa pola kluczy obcych: jedno wskazujące na odpowiedni rekord w tabeli A i drugie na odpowiadający mu rekord w tabeli B. Na przykład, w systemie zarządzania kursami, tabela 'Studenci' i tabela 'Kursy' mogą być połączone poprzez tabelę 'Rejestracje', która przechowuje identyfikatory studentów i kursów, umożliwiając przypisanie wielu studentów do wielu kursów. To podejście jest zgodne z zasadami normalizacji baz danych, które mają na celu minimalizację redundancji i zapewnienie spójności danych. Dobrą praktyką jest również zapewnienie, że klucze obce w tabeli asocjacyjnej są odpowiednio indeksowane, co poprawia wydajność zapytań oraz umożliwia łatwe zarządzanie relacjami.

Pytanie 39

Z przedstawionych tabel Artykuly i Autorzy należy wybrać jedynie nazwiska autorów i tytuły ich artykułów, które zostały ocenione na 5. Kwerenda wybierająca te dane ma postać

Ilustracja do pytania
A. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = artykuly.id;
B. SELECT nazwisko, tytul FROM autorzy, artykuly WHERE ocena == 5;
C. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5;
D. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id;
Gratulacje! Wybrałeś poprawne zapytanie SQL, które dokładnie odpowiada na postawione pytanie. Zapytanie 'SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5;' jest prawidłowe, bo łączy dwie tabele 'autorzy' i 'artykuly' za pomocą klucza obcego 'autorzy_id' w tabeli 'artykuly'. Dzięki temu uzyskujemy dostęp do nazwisk autorów i tytułów artykułów. Dodatkowo, część 'WHERE ocena = 5' filtruje wyniki tak, aby wyświetlane były tylko te rekordy, gdzie ocena wynosi 5. To jest kluczowy element, który pozwala nam skupić się tylko na tych danych, które są istotne dla pytania. W praktyce, tego typu zapytania pomagają nam w analizie wydajności autorów i jakości artykułów, co jest niezwykle ważne w branży wydawniczej.

Pytanie 40

Wynikiem działania poniższej pętli for w przedstawionym kodzie PHP jest wyświetlenie liczb:

<?php
   for($i=5;$i>1;$i-=2)
       echo ($i%2)." ";
?>
A. 1 0 1
B. 1 0 1 0
C. 1 1
D. 1 0
Poprawna odpowiedź to 1 1, ponieważ analizując przedstawioną pętlę for, zaczynamy od zmiennej $i, która ma wartość 5. Pętla będzie działać tak długo, jak wartość $i jest większa od 1. W każdym kroku $i jest zmniejszane o 2, co oznacza, że w kolejnych iteracjach przyjmuje wartości 5, 3, a następnie 1. Wartości te są poddawane operacji modulo 2. Operacja modulo zwraca resztę z dzielenia, która dla liczb nieparzystych (5 i 3) wynosi 1 oraz dla liczby parzystej (0) wynosi 0. Zatem, w pierwszej iteracji, $i = 5, 5 % 2 = 1, a w drugiej iteracji, $i = 3, 3 % 2 = 1. Ostatecznie, pętla nie wykonuje się, gdy $i = 1, ponieważ warunek $i > 1 nie jest już spełniony. W rezultacie, poprawnym wynikiem działania tego fragmentu kodu jest wyświetlenie dwóch wartości 1. Przykład zastosowania takiej konstrukcji można znaleźć w sytuacjach, w których chcemy przetworzyć kolekcję liczb i wyodrębnić ich parzystość lub nieparzystość, co jest powszechną operacją w programowaniu.