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: 9 lipca 2026 13:46
  • Data zakończenia: 9 lipca 2026 14:04

Egzamin zdany!

Wynik: 24/40 punktów (60,0%)

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 języku JavaScript wartość typu boolean może być przedstawiana przez

A. true
B. –20
C. 45.3
D. null
Typ boolean w języku JavaScript jest jednym z podstawowych typów danych, reprezentującym jedynie dwie możliwe wartości: true (prawda) oraz false (fałsz). Typ ten jest kluczowy w programowaniu, umożliwiając tworzenie warunków oraz podejmowanie decyzji w kodzie. W praktyce, boolean jest wykorzystywany w instrukcjach warunkowych, takich jak if, gdzie wyrażenia zwracające wartość logiczną decydują o dalszym przebiegu programu. Na przykład, wyrażenie 'if (x > 10)' zwraca true, jeśli x jest większe od 10, i false w przeciwnym razie. JavaScript, zgodnie ze specyfikacją ECMA-262, nie tylko definiuje typ boolean, ale również określa sposób konwersji innych typów danych na boolean. Funkcje takie jak Boolean() oraz operatory logiczne (&&, ||, !) są używane do uzyskania wartości boolean z innych typów. Warto również zauważyć, że JavaScript stosuje tzw. "truthy" i "falsy" wartości, co oznacza, że niemal każdy typ danych może być interpretowany jako boolean w kontekście warunków, jednak tylko true i false są typowymi wartościami tego typu. Zrozumienie działania typu boolean jest fundamentalne dla programistów, umożliwiając skuteczne kontrolowanie przepływu programu oraz implementację logiki decyzyjnej."

Pytanie 2

W języku SQL przedstawiony warunek jest równoważny warunkowi

liczba >= 10 AND liczba <= 100
A. liczba IN (10, 100)
B. liczba LIKE '10%'
C. NOT (liczba < 10 AND liczba > 100)
D. liczba BETWEEN 10 AND 100
Dobra robota! Twoja odpowiedź jest na pewno poprawna. Warunek 'liczba >= 10 AND liczba <= 100' w SQL oznacza, że musimy znaleźć liczbę, która jest większa lub równa 10 i mniejsza lub równa 100. Można to również zapisać jako 'liczba BETWEEN 10 AND 100', co po prostu definiuje zakres wartości od 10 do 100, łącznie z tymi granicami. Używanie operatorów takich jak BETWEEN jest naprawdę przydatne w SQL, bo ułatwia nam życie przy pisaniu zapytań i sprawia, że łatwiej jest zrozumieć, co ten kod właściwie robi. Fajnie umieć takie rzeczy, bo to naprawdę klucz do efektywnej pracy z bazami danych.

Pytanie 3

Wynikiem realizacji kwerendy

SELECT sezon, SUM(liczba_dn) FROM rezerwacje GROUP BY sezon;
na podstawie poniższej tabeli rezerwacje jest:
A. lato 10, 5, 5; zima 4, 6, 9, 8
B. lato 20, zima 27
C. lato 3, zima 4
D. lato 10, zima 4, lato 5, zima 6, lato 5, zima 9, zima 8
Wykonana kwerenda SQL agreguje dane z tabeli rezerwacje, grupując je według sezonu i sumując liczbę dni (liczba_dn) dla każdego sezonu. W tabeli znajdują się rekordy związane z sezonami letnim i zimowym. Analizując dane, dla sezonu letniego mamy trzy wpisy: 10 dni, 5 dni oraz 5 dni, co łącznie daje 20 dni. Dla sezonu zimowego mamy cztery wpisy: 4 dni, 6 dni, 9 dni oraz 8 dni, co po zsumowaniu daje 27 dni. Odpowiedź numer 2 jest zatem poprawna, ponieważ przedstawia poprawne sumy dla sezonów. Praktyczne zastosowanie takiej kwerendy może obejmować analizowanie sezonowości rezerwacji w hotelach, co wspiera procesy decyzyjne w zakresie zarządzania zasobami i planowania promocji. Zgodność z dobrymi praktykami w SQL wymaga znajomości funkcji agregujących, takich jak SUM, oraz umiejętności grupowania danych, co jest kluczowe w analizie danych w różnych dziedzinach biznesowych.

Pytanie 4

Ile razy powtórzy się pętla w JavaScript?

var x=1, i=0;
do{
    x*=3;
    i++;
}
while(x!=27);
A. 26 razy
B. 27 razy
C. 3 razy
D. 2 razy
W przedstawionym kodzie JavaScript, pętla do-while wykonuje się do momentu, gdy zmienna x nie jest równa 27. Zaczynając od wartości x równej 1, przy każdym przejściu przez pętlę zmienna x jest mnożona przez 3. Kolejno, x przyjmuje wartości: 3, 9, 27. Zatem pętla wykonuje się trzy razy, ponieważ dopiero po trzecim cyklu x osiąga wartość 27, co powoduje zakończenie pętli. Do-while zawsze wykonuje przynajmniej jedno przejście, niezależnie od warunku końcowego, dzięki czemu jest przydatna w sytuacjach, gdy operacja musi być przeprowadzona co najmniej raz. Dobrym przykładem wykorzystania tego mechanizmu jest oczekiwanie na spełnienie określonego warunku, np. uzyskanie poprawnej odpowiedzi od użytkownika. Warto zwrócić uwagę, że w przypadku operacji matematycznych wymagających określonej liczby iteracji, pętla do-while zapewnia prostotę i przejrzystość implementacji, zgodnie z dobrymi praktykami zapewniającymi łatwość w czytaniu i utrzymaniu kodu.

Pytanie 5

Który ze skrótów oznacza sieć bezprzewodową?

A. MAN
B. WAN
C. WLAN
D. LAN
Pozostałe skróty określają zasięg sieci, a nie jej bezprzewodowość. LAN (Local Area Network) to sieć lokalna, obejmująca np. jeden budynek - zwykle przewodowa. MAN (Metropolitan Area Network) ma zasięg miasta lub aglomeracji. WAN (Wide Area Network) to sieć rozległa, łącząca odległe lokalizacje - jej przykładem jest internet. Żaden z nich nie wskazuje transmisji radiowej. Bezprzewodową sieć lokalną oznacza WLAN, dlatego ta odpowiedź jest poprawna.

Pytanie 6

Poniższy fragment kodu w PHP wyświetli

$n = '[email protected]';
$dl = strlen($n);
$i = 0;
while($i < $dl && $n[$i] != '@')
{
    echo $n[$i];
    $i++;
}
A. cały adres e-mail, czyli "[email protected]"
B. tylko nazwę konta, czyli "adres"
C. samą nazwę domeny, czyli "host.pl"
D. nazwa konta z symbolem @, czyli "adres@"
Analizując poszczególne odpowiedzi, można zrozumieć, gdzie mogą tkwić typowe błędy myślowe. Pierwsza odpowiedź zakłada, że kod wypisze nazwę konta ze znakiem '@'. Jednak kod zatrzymuje się przed '@', więc ten znak nie jest wypisywany. Jest to typowy błąd wynikający z niezrozumienia warunku pętli, która przerywa iterację, gdy napotka '@'. Druga odpowiedź poprawnie wskazuje, co kod faktycznie robi, czyli wypisuje nazwę konta. Trzecia odpowiedź myli się, oczekując, że cały adres e-mail zostanie wypisany. W rzeczywistości kod nigdy nie przejdzie przez '@', więc ani domena, ani '@' nie zostaną uwzględnione w wyniku. Jest to błąd wynikający z założenia, że pętla obsłuży cały ciąg bez przerwania. Brak zrozumienia logiki warunku pętli while może prowadzić do takiego błędnego wniosku. Czwarta odpowiedź sugeruje, że kod wypisze nazwę domeny, co jest błędne, ponieważ iteracja kończy się przed '@', nie osiągając części domenowej. Takie błędy mogą wynikać z mylnego zrozumienia przepływu sterowania w kodzie lub założenia, że kod wykonuje parsowanie zupełne, co w tym przypadku jest nieprawidłowe. W praktykach programistycznych ważne jest zrozumienie iteracji i warunków, co pozwala uniknąć takich nieporozumień w analizie kodu. Podstawowe zrozumienie logicznych warunków i iteracji w językach programowania jest kluczowe do prawidłowej analizy kodu i jego przewidywanego działania.

Pytanie 7

Co zazwyczaj wchodzi w skład frameworka?

A. zarządzanie komunikacją z bazą oraz mechanizm uruchamiania i przetwarzania akcji
B. wbudowany serwer i obsługa formularzy
C. certyfikat HTTP oraz mechanizm przetwarzania akcji
D. obsługa błędów i domena
Framework dostarcza gotowy szkielet aplikacji, a w jego skład wchodzą m.in. mechanizmy zarządzania komunikacją z bazą danych oraz uruchamiania i przetwarzania akcji (żądań) - czyli „rusztowanie”, na którym programista buduje logikę. Dzięki temu nie pisze się tych elementów od zera. Dlatego framework zawiera obsługę bazy oraz przetwarzanie akcji.

Pytanie 8

Utworzono bazę danych z tabelą mieszkańcy, która zawiera pola: nazwisko, imię oraz miasto. Następnie przygotowano poniższe zapytanie do bazy:
SELECT nazwisko, imie FROM mieszkańcy WHERE miasto='Poznań' UNION ALL SELECT nazwisko, imie FROM mieszkańcy WHERE miasto='Kraków';
Wskaż zapytanie, które zwróci takie same dane.

A. SELECT nazwisko, imie FROM mieszkańcy WHERE miasto HAVING 'Poznań' OR 'Kraków';
B. SELECT nazwisko, imie FROM mieszkańcy WHERE miasto BETWEEN 'Poznań' OR 'Kraków';
C. SELECT nazwisko, imie FROM mieszkańcy AS 'Poznań' OR 'Kraków';
D. SELECT nazwisko, imie FROM mieszkańcy WHERE miasto='Poznań' OR miasto='Kraków';
Wybór błędnych odpowiedzi wynika z nieprawidłowego zrozumienia podstawowych zasad użycia operatorów w SQL oraz sposobu, w jaki warunki filtracji danych powinny być konstruowane. Zapytanie, które wykorzystuje BETWEEN, jest stosowane do porównywania wartości w określonym zakresie, ale w tym przypadku nie jest możliwe wskazanie dwóch różnych wartości, jak w przypadku miast. Operator OR w kontekście BETWEEN nie ma zastosowania, co sprawia, że ta koncepcja jest fundamentalnie błędna. Z drugiej strony, użycie HAVING jest niewłaściwe, ponieważ służy do filtrowania wyników po agregacji danych, a nie do bezpośredniej filtracji na podstawie wartości. Dodatkowo, konstrukcja SELECT z aliasem 'Poznań' OR 'Kraków' jest syntaktycznie niepoprawna, ponieważ operator OR nie może być użyty w tym kontekście. Typowym błędem w myśleniu jest mylenie operatorów logicznych i ich zastosowania w różnych kontekstach zapytań SQL. Zrozumienie, kiedy używać WHERE, HAVING oraz jak działa składnia zapytań, jest kluczowe dla poprawnego pisania i optymalizacji zapytań baz danych.

Pytanie 9

Najłatwiejszym i najmniej czasochłonnym sposobem na przetestowanie funkcjonowania strony internetowej w różnych przeglądarkach oraz ich wersjach jest

A. zainstalowanie na kilku maszynach różnych przeglądarek i przeprowadzenie testu witryny
B. testowanie strony w programie Internet Explorer, zakładając, że inne przeglądarki będą kompatybilne
C. skorzystanie z narzędzia do walidacji kodu HTML
D. użycie emulatora przeglądarek internetowych, np. Browser Sandbox
Korzystanie z emulatora przeglądarek internetowych, takiego jak Browser Sandbox, to jedna z najskuteczniejszych metod na testowanie działania witryny w różnych przeglądarkach i ich wersjach. Emulatory umożliwiają symulację różnych środowisk przeglądarkowych bez potrzeby fizycznego instalowania wielu aplikacji na różnych urządzeniach. To znacząco przyspiesza proces testowania i pozwala na łatwe przełączanie się między wersjami przeglądarek. Przykładowo, za pomocą emulatora można szybko sprawdzić, jak strona zachowuje się w Chrome, Firefox czy Safari, co jest kluczowe dla zapewnienia spójnego doświadczenia użytkownika. Ponadto, korzystanie z takich narzędzi pozwala na testowanie z różnych systemów operacyjnych, co jest istotne w kontekście różnorodności urządzeń używanych przez użytkowników. Dobrze skonfigurowany emulator nie tylko pozwala na testowanie responsywności witryny, ale także na analizowanie błędów związanych z CSS czy JavaScript, co przekłada się na wyższą jakość końcowego produktu. Zastosowanie emulatorów jest zgodne z najlepszymi praktykami w zakresie tworzenia aplikacji webowych, które powinny być dostępne i funkcjonalne w różnych przeglądarkach.

Pytanie 10

Który ze znaczników HTML NIE służy do formatowania tekstu?

A. <sub>
B. <div>
C. <strong>
D. <em>
Znacznik <div> to uniwersalny pojemnik blokowy - grupuje elementy w sekcję, którą można wspólnie ostylować czy spozycjonować, ale sam w żaden sposób nie zmienia wyglądu tekstu. Pozostałe znaczniki dotyczą właśnie formatowania treści: <em> i <strong> nadają tekstowi znaczenie (i domyślnie kursywę oraz pogrubienie), a <sub> tworzy indeks dolny. Dlatego do formatowania tekstu NIE służy <div>.

Pytanie 11

Zamieszczony kod HTML formularza zostanie wyświetlony przez przeglądarkę w sposób:

<form>
stanowisko: <input type="text"><br>
obowiązki: <br>
<input type="checkbox" name="obowiazek1" value="1" disabled checked>sporządzanie dokumentacji<br>
<input type="checkbox" name="obowiazek2" value="2" checked>pisanie kodu<br>
<input type="checkbox" name="obowiazek3" value="3">testy oprogramowania<br>
</form>

A.

stanowisko: obowiązki: sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

B.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

C.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

D.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania
A. D.
B. B.
C. C.
D. A.
Dokładnie tak powinien wyglądać ten formularz! Zwróć uwagę, jak HTML interpretuje znaczniki <br> – one wymuszają przejście do nowej linii, więc w kodzie wyjściowym każda sekcja obowiązków pojawi się osobno, pod sobą. To, że jeden z checkboxów ma atrybuty disabled oraz checked, powoduje, że jest domyślnie zaznaczony, ale nie można go odznaczyć ani zaznaczyć ponownie – to ważny niuans, bo czasem zapomina się, że disabled nie oznacza tylko „wyszarzony”, ale też „nie bierz udziału w wysyłaniu formularza”. Takie wykorzystanie checkboxów jest powszechne, szczególnie jeśli chcesz pokazać użytkownikowi pewne stałe informacje (np. obowiązek, którego nie można uniknąć). Z mojego doświadczenia, bardzo często w praktycznych projektach „disabled” stosuje się np. przy wymaganych oświadczeniach, gdzie użytkownik ma tylko do wglądu informację, że coś już jest włączone i nie może tego zmienić. No i jeszcze – checked przy pisaniu kodu powoduje, że checkbox jest domyślnie zaznaczony, co jest zgodne z kodem źródłowym. Same nazwy pól (czyli atrybuty name i value) zostaną wysłane do serwera tylko dla tych pól, które nie są disabled i użytkownik je zaznaczył. To też jest bardzo praktyczna rzecz, bo pozwala precyzyjnie sterować tym, co trafia do backendu. Moim zdaniem taka forma zapisu formularza to dobry punkt wyjścia do dalszej rozbudowy – łatwo dodać tutaj walidację, obsługę JavaScript czy zastosować style CSS. Trzymanie się tej składni ułatwia też potem pracę zespołową, bo jest czytelna i zgodna z oczekiwaniami innych programistów. Podsumowując, wybrałeś opcję najbliższą temu, co wyświetli przeglądarka na bazie danego kodu HTML – i to jest podejście zgodne ze standardami, doceniane w branży.

Pytanie 12

Wynikiem działania algorytmu dla c = 3 jest liczba

Ilustracja do pytania
A. 12
B. 6
C. 24
D. 60
Żeby dobrze zrozumieć, dlaczego wyniki 6, 12 czy 60 nie są poprawne, trzeba spokojnie przeanalizować logikę całego schematu blokowego, a nie zatrzymywać się na pierwszym wrażeniu. Algorytm nie wykonuje pojedynczego mnożenia, tylko korzysta z pętli sterowanej zmienną b oraz warunkiem b <= c + 1. Takie konstrukcje są typowym źródłem pomyłek typu „o jeden za mało” lub „o jeden za dużo”, bo łatwo przeoczyć, że granica to właśnie c+1, a nie samo c.
Częsta błędna intuicja jest taka: skoro c = 3, to b zaczyna od 2, więc mnożymy 1 * 2 * 3 i dostajemy 6. To wygląda logicznie, ale pomija fakt, że warunek dopuszcza jeszcze b = 4, bo sprawdzamy b <= 4, a nie b < 4. W efekcie pętla wykonuje się trzy razy: dla b = 2, 3 i 4. Stąd wynik 6 odpowiada jedynie sytuacji, gdyby warunek był zapisany jako b <= c (lub gdyby ktoś „w głowie” zakończył działanie pętli o jedną iterację za wcześnie). To klasyczny błąd przy ręcznej symulacji pętli.
Podobnie wynik 12 zwykle bierze się z pomieszania kolejności operacji: ktoś policzy 2 * 3 = 6, potem doda 4 zamiast znowu pomnożyć, albo przerwie analizę po dwóch krokach. To pokazuje, jak ważne jest trzymanie się dosłownie instrukcji: a = a * b oznacza zawsze mnożenie, bez żadnych wyjątków. Z kolei 60 może być efektem całkowicie oderwanego od schematu zgadywania, albo próby „dopisywania” dodatkowych kroków, jakby pętla wykonywała się jeszcze dla kolejnych wartości, których warunek już nie dopuszcza.
Z mojego doświadczenia warto przy takich zadaniach zawsze wypisać kolejne stany zmiennych a i b w tabelce: po inicjalizacji, po każdej iteracji i po wyjściu z pętli. To jest bardzo dobra praktyka, zgodna z profesjonalnym podejściem do analizy algorytmów, bo pozwala wyłapać wszystkie nieporozumienia związane z warunkiem końca pętli. Takie umiejętności przydają się potem w realnym kodzie, niezależnie czy piszesz w JavaScript, PHP, czy w innym języku – unikniesz wtedy typowych bugów związanych ze złym zakresem pętli i błędami obliczeń.

Pytanie 13

Który obiekt bazy danych służy głównie do drukowania lub wyświetlania zestawień danych?

A. raport
B. moduł
C. formularz
D. makro
Pozostałe obiekty służą do czego innego. Formularz to interfejs do WPROWADZANIA danych. Makro automatyzuje czynności (np. otwarcie formularza). Moduł zawiera kod (np. w VBA). Do drukowania i wyświetlania zestawień przeznaczony jest raport.

Pytanie 14

Plik cookie utworzony przedstawionym poleceniem PHP:

setcookie("osoba", "Anna Kowalska", time() + (3600 * 24));
A. wygaśnie po jednej dobie od jego utworzenia.
B. wygaśnie po jednej godzinie od jego utworzenia.
C. będzie przechowywany na serwerze przez jedną godzinę.
D. będzie przechowywany na serwerze przez jedną dobę.
Kod z funkcją setcookie() w PHP bardzo często myli się z mechanizmami przechowywania danych po stronie serwera, dlatego łatwo tu o błędne skojarzenia. W tym przykładzie kluczowe są dwie rzeczy: po pierwsze, gdzie fizycznie przechowywane jest cookie, a po drugie, w jakiej jednostce podajemy czas. Ciasteczka HTTP są zawsze przechowywane po stronie klienta, czyli w przeglądarce użytkownika, w jej lokalnym magazynie. Serwer jedynie informuje przeglądarkę, jaki ma być czas życia takiego wpisu, wysyłając odpowiedni nagłówek Set-Cookie z datą wygaśnięcia. Stąd pomysł, że cookie „będzie przechowywane na serwerze” jest po prostu nietrafiony – serwer nie ma osobnego magazynu na ciasteczka użytkowników, on tylko je odczytuje z nagłówków przychodzących żądań i ewentualnie ustawia nowe. Druga częsta pomyłka dotyczy samego czasu. Funkcja time() zwraca aktualny timestamp w sekundach od 1.01.1970, a w wyrażeniu 3600 * 24 wyliczana jest liczba sekund w jednej dobie. Jeśli ktoś pobieżnie spojrzy na zapis, może skojarzyć 3600 z godziną i założyć, że cookie jest ważne tylko godzinę, ignorując mnożenie przez 24. To typowy błąd „czytania po łebkach” kodu. Tymczasem przeglądarka dostaje konkretny moment w przyszłości, przesunięty o 86400 sekund, i do tej chwili będzie wysyłać cookie przy każdym żądaniu do odpowiedniej domeny i ścieżki. Warto też pamiętać, że samo istnienie cookie nie oznacza trwałego przechowywania danych po stronie serwera. Dane z ciasteczka trafiają na serwer dopiero, gdy przeglądarka wyśle je w nagłówku HTTP. Dlatego planując logikę aplikacji, trzeba jasno rozróżniać dane sesyjne na serwerze (np. w $_SESSION) od danych w cookie, które użytkownik może modyfikować po swojej stronie i które wygasają dokładnie według tego timestampu, jaki podamy w setcookie().

Pytanie 15

Którą funkcję z menu Kolory programu GIMP użyto, w celu uzyskania efektu przedstawionego w filmie?

A. Barwienie.
B. Progowanie.
C. Inwersja.
D. Krzywe.
Prawidłowo wskazana funkcja to „Progowanie”, bo dokładnie ona zamienia obraz kolorowy lub w odcieniach szarości na obraz dwuwartościowy: piksel jest albo czarny, albo biały, w zależności od tego, czy jego jasność przekracza ustawiony próg. W GIMP-ie znajdziesz ją w menu Kolory → Progowanie. Suwakami ustalasz zakres poziomów jasności, które mają zostać potraktowane jako „białe”, a wszystko poza tym zakresem staje się „czarne”. Efekt, który się wtedy uzyskuje, jest bardzo charakterystyczny: mocno kontrastowy, bez półtonów, coś w stylu skanu czarno-białego lub grafiki do druku na ploterze tnącym. Z mojego doświadczenia progowanie świetnie nadaje się do przygotowania logotypów, szkiców technicznych, schematów, a także do wyciągania konturów z lekko rozmytych zdjęć. Często używa się go też przed wektoryzacją, żeby program śledzący krawędzie miał wyraźne granice między czernią a bielą. W pracy z grafiką na potrzeby stron WWW próg bywa stosowany np. przy tworzeniu prostych ikon, piktogramów albo masek (maski przezroczystości można przygotować właśnie na bazie obrazu progowanego). Dobrą praktyką jest najpierw sprowadzenie obrazu do odcieni szarości i dopiero potem użycie progowania, bo wtedy masz większą kontrolę nad tym, jak rozkłada się jasność i gdzie wypadnie granica progu. Warto też pamiętać, że progowanie jest operacją destrukcyjną – traci się informacje o półtonach – więc najlepiej pracować na kopii warstwy, żeby w razie czego móc wrócić do oryginału i poprawić ustawienia progu.

Pytanie 16

W języku JavaScript trzeba sformułować warunek, który będzie spełniony, gdy zmienna a będzie dowolną liczbą naturalną dodatnią (więcej niż 0) lub gdy zmienna b będzie dowolną liczbą z przedziału domkniętego od 10 do 100. Wyrażenie logiczne w tym warunku powinno mieć postać

A. (a > 0) || ((b >= 10) && (b <= 100))
B. (a > 0) && ((b >= 10) && (b <= 100))
C. (a > 0) || ((b >= 10) || (b <= 100))
D. (a > 0) && ((b >= 10) || (b <= 100))
Pierwsza odpowiedź (a > 0) && ((b >= 10) && (b <= 100)) opiera się na błędnym założeniu, że oba warunki muszą być spełnione jednocześnie, co jest sprzeczne z wymaganiami. W kontekście tego pytania, aby warunek był prawdziwy, wystarczy, że przynajmniej jeden z podanych warunków będzie spełniony. To podejście prowadzi do niepotrzebnej ścisłości, ograniczając funkcjonalność programu. Druga odpowiedź (a > 0) && ((b >= 10) || (b <= 100)) również jest myląca; operator logiczny '||' w kontekście zmiennej b sugeruje, że b może być mniejsze niż 10 lub większe niż 100, co nie spełnia wymagań, które określają, że b musi być w przedziale 10-100. Trzecia odpowiedź (a > 0) || ((b >= 10) || (b <= 100)) wprowadza dodatkowe zamieszanie, ponieważ druga część warunku znowu nie wymusza, aby b znajdowało się w odpowiednim zakresie. Przypadki takie jak te wskazują na typowe błędy logiczne, gdzie programiści mogą mylnie interpretować potrzeby warunku, co skutkuje błędami w kodzie. Kluczowe jest zrozumienie, jak działają operatory logiczne oraz jakie są ich konsekwencje w kontekście projektowania warunków. Właściwe użycie operatorów jest fundamentem skutecznego programowania, a unikanie takich pułapek jest kluczowe dla tworzenia stabilnych aplikacji.

Pytanie 17

Mamy do czynienia z tablicą o nazwie tab, która zawiera liczby całkowite różniące się od zera. Zawarty w języku PHP kod ma na celu:

foreach ($tab as &$liczba)
    $liczba = $liczba * (-1);
unset($liczba);
A. obliczyć wartość bezwzględną elementów tej tablicy
B. wyliczenie iloczynu wszystkich wartości w tablicy
C. zmienić wszystkie elementy tablicy na liczby o przeciwnym znaku
D. przekształcić elementy tablicy na wartości zapisane w zmiennej liczba
Analizując przedstawione odpowiedzi, ważne jest zrozumienie, dlaczego pozostałe opcje są nieprawidłowe w kontekście podanego kodu PHP. Pierwsza z nich sugeruje, że kod oblicza iloczyn wszystkich liczb w tablicy. Jednakże, kod ten nie prowadzi do żadnej operacji akumulacji wartości, nie jest stosowana zmienna do przechowywania wyniku, a operacja wykonywana w pętli to jedynie zmiana znaku każdej liczby. Druga odpowiedź, mimo że błędna jako wybór, w rzeczywistości jest poprawną odpowiedzią zgodnie z pytaniem egzaminacyjnym. Trzecia sugeruje, że elementy tablicy zostaną zastąpione wartością przechowywaną w zmiennej liczba. Kod, który by tego dokonywał, musiałby inicjalizować zmienną z konkretną wartością i przypisywać ją każdemu elementowi tablicy, co nie jest realizowane przez przedstawiony fragment kodu. Czwarta odpowiedź mówi o obliczaniu wartości bezwzględnej elementów tablicy. Aby to osiągnąć, w PHP należałoby użyć funkcji abs(), której tutaj nie zastosowano. Typowym błędem prowadzącym do takich niepoprawnych wniosków jest nieprawidłowe zrozumienie działania operatorów i funkcji w kontekście języka PHP. Kluczowe jest, aby rozumieć, że kod bezpośrednio modyfikuje wartości w tablicy przez mnożenie przez -1, a nie wykonuje żadnych innych operacji matematycznych czy przypisania wartości.

Pytanie 18

Jaką formę ma instrukcja w języku PHP, która tworzy obiekt pkt w klasy Punkt zdefiniowanej w klasie?

Ilustracja do pytania
A. pkt Punkt();
B. pkt= new Punkt();
C. Punkt() pkt;
D. pkt Punkt;
W języku PHP każda z podanych niepoprawnych opcji wynika z niewłaściwego zrozumienia konstrukcji obiektowej. Pierwszy błąd polega na próbie inicjalizacji obiektu przy użyciu składni pkt Punkt;, która jest niepoprawna, gdyż nie wykorzystuje słowa kluczowego new obowiązkowego podczas tworzenia instancji klasy. Taka składnia przypomina deklarację zmiennych typów prostych, co nie znajduje zastosowania w kontekście obiektowym. Innym powszechnym nieporozumieniem jest myślenie, że pkt Punkt(); jest poprawne, co sugeruje funkcję, jednakże PHP wymaga jawnego użycia new. Kolejna błędna koncepcja to Punkt() pkt;, która zdaje się używać składni funkcji z przypisaniem, co również jest niezgodne z semantyką PHP dla obiektów. Tego typu błędy często wynikają z prób zastosowania logiki innych języków programowania lub z niewłaściwej interpretacji składni PHP. Zrozumienie różnicy między deklaracją zmiennej a tworzeniem obiektu jest kluczowe dla efektywnego programowania obiektowego. Aby uniknąć takich błędów, warto zwrócić uwagę na dokumentację i praktykować pisanie kodu zgodnie z konwencjami przyjętymi w PHP, co nie tylko zwiększa czytelność kodu, ale także ułatwia późniejsze jego modyfikacje oraz integrację z większymi systemami. Poprawne zrozumienie konstrukcji obiektowej jest fundamentalne dla każdego programisty PHP, szczególnie w kontekście tworzenia aplikacji skalowalnych i łatwych do zarządzania.

Pytanie 19

Do czego służy w PHP funkcja trim()?

A. do wyświetlania części wspólnej dwóch tekstów
B. do usuwania białych (lub podanych) znaków z obu końców tekstu
C. do podawania długości tekstu
D. do skracania tekstu o podaną liczbę znaków
Funkcja trim() usuwa białe znaki (spacje, tabulatory, znaki nowej linii) z OBU końców tekstu - a po podaniu drugiego argumentu także wskazane znaki. Dlatego trim() usuwa białe lub podane znaki z obu końców tekstu.

Pytanie 20

Tekst można pogrubić za pomocą znacznika <b>, a także stosując odpowiednie właściwości CSS.

A. text-size
B. font-size
C. font-weight
D. text-weight
Wybór 'text-weight' jako właściwości CSS jest błędny, ponieważ nie istnieje taka właściwość w standardzie CSS. Użytkownicy mogą mylić ją z 'font-weight', co prowadzi do frustracji i błędnych implementacji w kodzie. Kolejna odpowiedź, 'font-size', odnosi się do rozmiaru tekstu, a nie do jego grubości. Użytkownicy mogą popełniać błąd myślowy, sądząc, że zmiana rozmiaru tekstu wpłynie na jego wagę, jednak te dwie właściwości są od siebie niezależne. Wreszcie, 'text-size' również nie jest uznawana za standardową właściwość CSS; właściwą terminologią w kontekście stylizacji tekstu jest 'font-size'. Takie mylne przekonania mogą wynikać z nieznajomości pełnej terminologii CSS lub z braku praktycznego doświadczenia w stylizacji stron. Kluczowe znaczenie ma zrozumienie, że CSS posiada precyzyjne określenia dla każdego aspektu stylizacji, a używanie niepoprawnych terminów może prowadzić do błędów w kodzie oraz do niepoprawnego wyświetlania elementów na stronie. Warto inwestować czas w naukę odpowiednich właściwości CSS, aby tworzyć bardziej profesjonalne i funkcjonalne strony internetowe.

Pytanie 21

Wskaż właściwą sekwencję kroków w procesie projektowania relacyjnej bazy danych?

A. Selekcja, Określenie relacji, Określenie kluczy głównych tabel, Określenie zbioru danych
B. Określenie kluczy głównych tabel, Określenie zbioru danych, Selekcja, Określenie relacji
C. Określenie relacji, Określenie kluczy głównych tabel, Selekcja, Określenie zbioru danych
D. Określenie zbioru danych, Selekcja, Określenie kluczy głównych tabel, Określenie relacji
Poprawna odpowiedź to 'Określenie zbioru danych, Selekcja, Określenie kluczy podstawowych tabel, Określenie relacji'. Ta kolejność pokazuje, jak działa projektowanie relacyjnej bazy danych. Na początku trzeba określić, jakie dane będą przechowywane, czyli stworzyć zbiór danych. Potem trzeba wybrać, które z tych informacji są ważne i jak je ułożyć. Następnie ustalamy klucze podstawowe dla tabel. To ważne, żeby dane były unikalne i łatwe do zidentyfikowania. Na końcu definiujemy relacje między tabelami, co pozwala zrozumieć, jak dane ze sobą współpracują. Na przykład, kiedy projektujemy bazę danych dla szkoły, zbór danych może obejmować uczniów, nauczycieli i przedmioty. Wybierając dane, możemy zdecydować, że potrzebujemy imienia, nazwiska i przedmiotów, które uczniowie uczą się. Klucze podstawowe są wtedy używane do identyfikacji uczniów, a relacje pokazują, jak uczniowie są powiązani z nauczycielami i przedmiotami.

Pytanie 22

W języku PHP zapis // służy do

A. zastosowania operatora dzielenia bez reszty
B. używania tablicy superglobalnej
C. dodawania komentarza wieloliniowego
D. dodawania komentarza jednoliniowego
Zastosowanie tablicy superglobalnej nie ma bezpośredniego związku z używaniem znaku //. Superglobalne tablice w PHP, takie jak $_POST, $_GET czy $_SESSION, służą do przechowywania i wymiany danych pomiędzy stronami, ale nie mają nic wspólnego z komentarzami. Wstawianie komentarza wieloliniowego jest poprawnym sposobem dodawania dłuższych wyjaśnień w kodzie, jednak znakiem // nie uzyskujemy tego efektu, a raczej ograniczamy się do komentarzy jednoliniowych. Z kolei zastosowanie operatora dzielenia bez reszty również nie jest powiązane z komentarzami. Operator / służy do dzielenia wartości, a jego użycie nie wymaga znaków // do oznaczania komentarzy. W środowisku programistycznym często można spotkać mylne przekonania, że znaki komentarza mogą pełnić inne funkcje, co prowadzi do nieporozumień w stosowaniu kodu. Prawidłowe rozumienie komentarzy w PHP jest kluczowe dla tworzenia zrozumiałego i łatwego do utrzymania kodu. Nieprawidłowe przypisanie funkcji komentarzy do innych elementów języka PHP może prowadzić do poważnych błędów w kodzie oraz trudności w jego analizie przez innych programistów.

Pytanie 23

W dokumencie XHTML znajduje się fragment kodu, który posiada błąd w walidacji. Na czym ten błąd polega?

<h6>tekst</h6>
<p>pierwsza <b>linia</b> <br>
Druga linia</p>
A. Znacznik <br> musi być zamknięty
B. Nie ma nagłówka szóstego stopnia
C. Znacznik <b> nie może być umieszczany wewnątrz znacznika <p>
D. Znaczniki powinny być zapisywane dużymi literami
Niektóre odpowiedzi sugerują błędne interpretacje zasad XHTML. Po pierwsze, stwierdzenie, że znacznik <b> nie może być zagnieżdżany w znaczniku <p>, jest nieprawdziwe. W rzeczywistości, znacznik <b> jest dozwolony w kontekście tekstu wewnątrz znacznika <p>, ponieważ oba należą do tej samej kategorii elementów inline. Wiele elementów inline, takich jak <i>, <u> czy <strong>, może być zagnieżdżanych bez problemu w znaczniku <p>, co czyni tę odpowiedź błędną. Z kolei twierdzenie o braku nagłówka szóstego stopnia jest również mylące, ponieważ znacznik <h6> jest częścią standardu HTML i XHTML, a jego użycie jest jak najbardziej zasadne. Przechodząc do kwestii pisania znaczników wielkimi literami, warto zauważyć, że XHTML jest czuły na wielkość liter, a właściwe stosowanie wielkich liter w przypadku znaczników nie jest wymogiem, ale zaleceniem w kontekście stylu. Ostatecznie, błędne uznanie zamknięcia znacznika <br> za opcjonalne w XHTML prowadzi do problemów z walidacją i interpretacją dokumentu, co może skutkować problemami w wyświetlaniu strony w różnych przeglądarkach. Takie nieprawidłowe podejście do składni może prowadzić do poważnych problemów w przyszłości, ponieważ poprawne zamykanie znaczników jest kluczowe dla każdego dokumentu XHTML, co podkreśla znaczenie znajomości i stosowania dobrych praktyk w pracy z kodem.

Pytanie 24

Jak należy poprawnie udokumentować wzorzec weryfikacji dla pola nazwa w kodzie aplikacji JavaScript?

Ilustracja do pytania
A. /* Pole nazwa powinno składać się w tej kolejności: z ciągu cyfr (z wyłączeniem 0), następnie dużej litery i ciągu małych liter. */
B. /* Pole nazwa musi składać się w tej kolejności: z ciągu cyfr (z wyłączeniem 0), następnie dużych liter i dwóch małych liter. */
C. /* Pole nazwa może zawierać dowolny ciąg cyfr (z wyłączeniem 0), następnie musi zawierać dużą literę i ciąg minimum dwóch małych liter. */
D. /* Pole nazwa może składać się z dowolnego ciągu cyfr (z wyłączeniem 0), małych i dużych liter. */
Poprawna odpowiedź zakłada, że pole 'nazwa' musi zawierać określoną strukturę wyrażenia regularnego które jest kluczowym elementem w walidacji danych wejściowych w aplikacjach JavaScript. Wzorzec /[1-9]*[A-Z]{1}[a-z]{2,}$/ wskazuje że pole może zaczynać się od dowolnej liczby cyfr z wyłączeniem 0 po których następuje jedna duża litera i co najmniej dwie małe litery. Taka konstrukcja jest przydatna w tworzeniu bezpiecznych aplikacji ułatwiając wymuszenie określonego formatu danych które mogą być używane na przykład w formularzach rejestracyjnych gdzie wymagane jest podanie specyficznego identyfikatora użytkownika. Warto pamiętać że walidacja po stronie klienta jak w tym przypadku powinna być zawsze wspierana dodatkowymi sprawdzeniami po stronie serwera co jest dobrą praktyką programistyczną w celu zabezpieczenia aplikacji przed niepożądanym dostępem oraz złośliwymi atakami. Zrozumienie i stosowanie wyrażeń regularnych znacznie poprawia jakość kodu oraz jego zdolność do adaptacji w różnych warunkach technicznych co jest kluczowe w dzisiejszym dynamicznym środowisku IT.

Pytanie 25

Jakiego polecenia SQL należy użyć, aby usunąć z tabeli artykuly wiersze, które zawierają słowo "sto" w dowolnej lokalizacji pola tresc?

A. DELETE FROM artykuly WHERE tresc = "%sto%";
B. DELETE * FROM artykuly WHERE tresc = "%sto%";
C. DELETE FROM artykuly WHERE tresc LIKE "%sto%";
D. DELETE * FROM artykuly WHERE tresc LIKE "%sto%";
Poprawna odpowiedź to 'DELETE FROM artykuly WHERE tresc LIKE "%sto%";'. To polecenie SQL używa operatora LIKE, który pozwala na wyszukiwanie wzorców w danych tekstowych. Użycie znaków procentowych '%' jako symboli wieloznacznych umożliwia odnalezienie ciągów, w których słowo 'sto' występuje w dowolnym miejscu w kolumnie 'tresc'. W praktyce, tego rodzaju zapytanie jest niezwykle przydatne podczas zarządzania dużymi bazami danych, gdzie często zachodzi potrzeba filtrowania danych na podstawie ich zawartości. Zastosowanie tego polecenia jest zgodne z najlepszymi praktykami w zakresie zarządzania danymi, ponieważ precyzyjnie określa, które wpisy mają zostać usunięte, minimalizując ryzyko przypadkowego usunięcia niewłaściwych danych. Warto znać i rozumieć różnice pomiędzy operatorami '=' a 'LIKE', ponieważ operator '=' wymaga dokładnego dopasowania, co w wielu przypadkach nie jest wystarczające do uzyskania pożądanych wyników. Przykładem może być sytuacja, gdy w kolumnie 'tresc' znajdują się artykuły zawierające słowo 'sto' w kontekście 'stołek', a operator '=' nie byłby w stanie ich zidentyfikować.

Pytanie 26

Jaką wartość w systemie RGB uzyskamy dla koloru zapisanego w kodzie heksadecymalnym: #1510FE?

A. rgb(21,16,255)
B. rgb(15,10,FE)
C. rgb(21,16,254)
D. rgb(21,16,FE)
Odpowiedź rgb(21,16,254) jest poprawna, ponieważ kolor zapisany w systemie heksadecymalnym #1510FE można rozłożyć na składowe RGB. W kodzie heksadecymalnym każdy z trzech kolorów (czerwony, zielony, niebieski) jest reprezentowany przez dwie cyfry. W przypadku #1510FE, pierwsze dwie cyfry (15) odnoszą się do wartości czerwonej, drugie dwie (10) do wartości zielonej, a ostatnie dwie (FE) do wartości niebieskiej. Te wartości musimy przeliczyć na system dziesiętny: czerwony to 21 (15 w systemie szesnastkowym to 21 w dziesiętnym), zielony to 16 (10 w szesnastkowym to 16 w dziesiętnym), a niebieski to 254 (FE w szesnastkowym to 254 w dziesiętnym). Tak więc końcowy wynik to rgb(21,16,254). W praktyce, znajomość konwersji kolorów jest kluczowa w projektowaniu graficznym, stron internetowych oraz aplikacji, gdzie precyzyjne odwzorowanie kolorów jest niezbędne dla uzyskania poprawnej estetyki i spójności wizualnej. Warto zaznaczyć, że standardy takie jak sRGB są powszechnie stosowane do definiowania kolorów w cyfrowych mediach, co zapewnia zgodność i przewidywalność w różnych urządzeniach wyświetlających te kolory.

Pytanie 27

Aby dołączyć do strony zewnętrzny skrypt JavaScript o nazwie skrypt.js, należy zapisać w kodzie HTML:

A.
<script src="skrypt.js"></script>
B.
<script>skrypt.js</script>
C.
<link rel="script" href="skrypt.js">
D.
<link rel="JavaScript" href="skrypt.js">
Pozostałe zapisy nie wczytają pliku ze skryptem. <script>skrypt.js</script> bez atrybutu src potraktuje napis „skrypt.js” jak kod JavaScript, a nie jak ścieżkę do pliku, więc nic sensownego się nie wykona. Oba warianty z <link> są błędne, bo ten znacznik służy do dołączania zasobów takich jak arkusze stylów (CSS), a nie skryptów - żadna wartość atrybutu rel tego nie zmieni. Zewnętrzny skrypt podpina się przez <script src="...">, dlatego to ono jest poprawne.

Pytanie 28

W SQL, aby dokonać zmiany w strukturze tabeli, na przykład dodać lub usunąć kolumnę, powinno się użyć polecenia

A. ALTER TABLE
B. UPDATE
C. DROP TABLE
D. TRUNCATE
Odpowiedź 'ALTER TABLE' jest prawidłowa, ponieważ to polecenie w SQL umożliwia modyfikację struktury istniejącej tabeli. Dzięki 'ALTER TABLE' możemy dodawać nowe kolumny, usuwać istniejące, zmieniać typy danych kolumn, a także ustawiać ograniczenia, takie jak klucze główne czy unikalne. Przykładowe zastosowanie to: 'ALTER TABLE employees ADD COLUMN birthdate DATE;' co dodaje kolumnę 'birthdate' do tabeli 'employees'. Użycie tego polecenia jest zgodne z dobrymi praktykami, ponieważ pozwala na elastyczne dostosowywanie struktury bazy danych w odpowiedzi na zmieniające się wymagania aplikacji. Warto również zaznaczyć, że 'ALTER TABLE' jest standardowym poleceniem w SQL, co oznacza, że jest obsługiwane przez większość systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL czy SQL Server, co czyni je uniwersalnym narzędziem w pracy z danymi.

Pytanie 29

W języku PHPnie ma możliwości

A. przetwarzanie danych z formularzy
B. tworzenie dynamicznej zawartości strony internetowej
C. obróbka informacji przechowywanych w bazie danych
D. zmienianie dynamiczne treści strony HTML w przeglądarce
Pomimo powszechnej wiedzy o zastosowaniach PHP, istnieje pewne nieporozumienie dotyczące jego funkcji w kontekście dynamicznych zmian na stronach internetowych. PHP jest używane do przetwarzania danych po stronie serwera, co oznacza, że jego zadaniem jest generowanie treści, które są następnie wysyłane do przeglądarki użytkownika. Pierwsza z niepoprawnych odpowiedzi sugeruje, że PHP może przetwarzać dane zgromadzone w bazie danych, co jest prawdą, jednak nie odnosi się do sedna pytania. PHP efektywnie współpracuje z bazami danych za pomocą zapytań SQL, ale to, co jest zwracane, to statyczny kod HTML. W kontekście generowania dynamicznej zawartości strony, PHP może być użyte do stworzenia HTML, ale nie do jego późniejszej modyfikacji w przeglądarce. Odpowiedź dotycząca generowania dynamicznej zawartości nie uwzględnia, że zmiany te są wynikiem działania PHP przed wysłaniem danych do klienta. Kolejna odpowiedź, sugerująca, że PHP może bezpośrednio zmieniać HTML w przeglądarkach, myli funkcjonalności języka. Nowoczesne aplikacje webowe często wykorzystują JavaScript do interakcji z użytkownikiem po załadowaniu strony, co pozwala na dynamiczne zmiany bez konieczności ponownego ładowania strony. Również przetwarzanie danych formularzy jest zadaniem, które PHP wykonuje, ale dotyczy to głównie zbierania i przesyłania danych do serwera, a nie modyfikacji treści na stronie po jej załadowaniu. Podsumowując, kluczowym aspektem jest zrozumienie, że PHP jest językiem po stronie serwera, a wszelkie dynamiczne interakcje w przeglądarkach powinny być zarządzane za pomocą technologii klienckich, takich jak JavaScript, co jest zgodne z aktualnymi standardami tworzenia aplikacji webowych.

Pytanie 30

W JavaScript metoda getElementById odnosi się do

A. zmiennej numerycznej
B. znacznika HTML o wskazanym id
C. klasy zdefiniowanej w CSS
D. znacznika HTML o podanej nazwie klasy
Metoda getElementById w JavaScript jest kluczowym narzędziem do interakcji z modelowaniem DOM (Document Object Model). Służy do uzyskiwania dostępu do pojedynczego elementu HTML na podstawie jego atrybutu id, co jest zgodne z zasadą unikalności identyfikatorów w dokumencie HTML. Dzięki temu programiści mogą stosunkowo łatwo manipulować pojedynczymi elementami, co jest istotne w dynamicznych aplikacjach internetowych. Przykładem zastosowania tej metody może być zmiana tekstu w elemencie <h1>, gdzie używamy getElementById('myHeader').innerHTML = 'Nowy nagłówek';. Zgodnie z dobrymi praktykami, powinno się unikać używania zduplikowanych id w dokumencie, aby zapewnić, że metoda ta zawsze zwraca jeden, a nie wiele elementów. Warto również pamiętać, że w przypadku braku elementu o podanym id, metoda zwróci null, co powinno być uwzględnione w logice aplikacji, aby uniknąć błędów. Użycie tej metody jest standardem w programowaniu JavaScript i stanowi fundament dla wielu bardziej zaawansowanych technik manipulacji DOM.

Pytanie 31

Podczas przygotowywania grafiki na stronę internetową konieczne jest wycięcie jedynie określonego fragmentu. Jak nazywa się ta operacja?

A. lustrzane odbicie obrazu.
B. łączenie warstw.
C. zmiana rozmiaru.
D. kadrowanie.
Kadrowanie to proces polegający na wycinaniu fragmentu obrazu w celu skupienia uwagi na określonym elemencie lub poprawienia kompozycji. W kontekście grafiki internetowej, kadrowanie jest kluczowe, aby dostosować zdjęcia do wymagań wizualnych strony, zachowując jednocześnie wysoką jakość obrazu. Przykładowo, jeśli tworzymy stronę dla restauracji, możemy wyciąć fragment zdjęcia dania, aby lepiej zaprezentować jego szczegóły. Dobre praktyki w kadrowaniu obejmują stosowanie zasady trzech, która polega na umiejscowieniu kluczowych elementów obrazu w punktach przecięcia linii podziału. Warto również pamiętać o rozdzielczości i proporcjach, aby uniknąć rozmycia lub zniekształcenia obrazu. Kadrowanie jest często używane w różnych formatach wizualnych, takich jak posty w mediach społecznościowych, banery reklamowe czy galerie zdjęć. W ten sposób, odpowiednie kadrowanie przyczynia się do lepszej prezentacji treści oraz poprawia estetykę i przejrzystość strony internetowej.

Pytanie 32

Który z przedstawionych obrazów został przetworzony przy użyciu podanego stylu CSS?

Ilustracja do pytania
A. Rys. D
B. Rys. A
C. Rys. C
D. Rys. B
Wybór Rys. A jako poprawnej odpowiedzi jest uzasadniony zastosowaniem właściwości CSS, które są użyte w stylu. Styl CSS określa padding na 5 pikseli, co oznacza, że wokół obrazu powinna być przestrzeń wynosząca dokładnie 5 pikseli. Właściwość border ustawia obramowanie na 1 piksel, w kolorze szarym i o stylu solid, co oznacza ciągłą linię otaczającą obraz. Z kolei border-radius o wartości 10 pikseli zaokrągla rogi obramowania, co nadaje całości bardziej zaokrąglony kształt. Wszystkie te cechy są widoczne na obrazie Rys. A. W praktyce stosowanie właściwości takich jak border-radius jest często używane w projektach webowych, aby uzyskać bardziej estetyczne i nowoczesne efekty wizualne. Zaokrąglone krawędzie są estetycznie przyjemniejsze dla użytkownika i mogą poprawić czytelność oraz odbiór wizualny strony. Znajomość tych właściwości CSS jest niezbędna dla każdego front-end developera, który dąży do tworzenia nowoczesnych i funkcjonalnych interfejsów użytkownika. Praktyczne zastosowanie tego stylu może być widoczne w projektach stron internetowych, aplikacjach sieciowych oraz w tworzeniu elementów UI, które zachowują spójność wizualną z resztą projektu.

Pytanie 33

Wskaż zapytanie, w którym dane zostały uporządkowane.

A. SELECT DISTINCT produkt, cena FROM artykuly;
B. SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;
C. SELECT AVG(ocena) FROM uczniowie WHERE klasa = 2;
D. SELECT nazwisko FROM firma WHERE pensja > 2000 LIMIT 10;
Odpowiedź SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek jest poprawna, ponieważ zawiera klauzulę ORDER BY, która jest używana do sortowania wyników zapytania w SQL. W tym przypadku, dane są sortowane według wieku mieszkańców, co pozwala na łatwe zrozumienie rozkładu wiekowego w tej grupie. Klauzula ORDER BY jest standardowym elementem SQL, który może sortować wyniki w porządku rosnącym (ASC) lub malejącym (DESC). Przykładowe zastosowanie to raporty, w których użytkownik chce zobaczyć dane uporządkowane według konkretnego kryterium, np. wiek, cena, data. Dobre praktyki sugerują, aby zawsze jasno definiować, które kolumny mają być używane do sortowania, a także zrozumieć, że sortowanie wpływa na wydajność zapytań, zwłaszcza przy dużych zbiorach danych. W przypadku bardziej złożonych zapytań można także łączyć klauzulę ORDER BY z innymi klauzulami, takimi jak GROUP BY, co zwiększa elastyczność w analizie danych.

Pytanie 34

Które ze znaczników HTML umożliwią wyświetlenie na stronie tekstu w jednym wierszu, jeżeli żadne formatowanie CSS nie zostało zdefiniowane?

Dobre strony mojej strony

A. <span>Dobre strony </span><span style=”letter-spacing:3px”>mojej strony</span>
B. <p>Dobre strony </p><p style=”letter-spacing:3px”>mojej strony</p>
C. <div>Dobre strony </div><div style=”letter-spacing:3px”>mojej strony</div>
D. <h3>Dobre strony </h3><h3 style=”letter-spacing:3px”>mojej strony</h3>
Gratulacje, Twoja odpowiedź jest prawidłowa. Wybrałeś znacznik <span>, który jest znacznikiem liniowym w HTML. Znaczniki liniowe nie zaczynają nowego wiersza po swoim zakończeniu, co oznacza, że tekst zawarty w kolejnych znacznikach <span> będzie wyświetlany w jednym wierszu, o ile nie zdefiniowano inaczej za pomocą CSS. Jest to bardzo ważne, kiedy chcemy utworzyć strukturę strony, która nie zależy od domyślnych formatowań. Przykładowo, używając <span>, możemy skonstruować skomplikowane layouty, które są niemożliwe do osiągnięcia za pomocą samych znaczników blokowych. Pamiętaj jednak, że odpowiednie stosowanie znaczników liniowych i blokowych jest ważnym elementem tworzenia semantycznie poprawnych stron internetowych, co może pomóc w poprawie SEO i dostępności Twojej strony.

Pytanie 35

Po zrealizowaniu polecenia SQL użytkownik Ela zyska możliwość wykorzystania poniższych uprawnień:

GRANT SELECT, INSERT, UPDATE, DELETE ON baza1.tab1 TO 'Ela'@'localhost';
A. realizować wszystkie działania na strukturze danych
B. tylko tworzyć i zmieniać strukturę tabeli
C. tylko dodawać oraz zmieniać dane
D. przeprowadzać wszystkie operacje na danych
Wybór odpowiedzi, która sugeruje, że użytkownik może jedynie dodawać i modyfikować dane, jest mylny, ponieważ nie uwzględnia uprawnienia SELECT, które jest również częścią przyznanych uprawnień. Ograniczając interpretację do dodawania i modyfikowania danych, można zignorować kluczowy aspekt bazy danych – możliwość ich przeglądania. Ponadto, twierdzenie, że użytkownik może jedynie tworzyć i modyfikować strukturę tabel, jest nieadekwatne, ponieważ polecenie GRANT nie dotyczy uprawnień do zmiany struktury bazy danych, takich jak dodawanie nowych tabel czy kolumn. Takie operacje są regulowane przez inne uprawnienia, które muszą być również przyznane. W sytuacji, gdy mówimy o operacjach na strukturze danych, należy uwzględnić, że uprawnienia GRANT dotyczą jedynie pracy z danymi przechowywanymi w tabelach, a nie z ich strukturalnymi aspektami. Pojęcie 'wszystkie operacje na strukturze danych' może wprowadzać w błąd, ponieważ nie odnosi się do przyznanych uprawnień, które nie obejmują na przykład tworzenia nowych tabel lub zmiany ich definicji. Dlatego ważne jest, aby dokładnie zrozumieć różnicę między uprawnieniami do operacji na danych a uprawnieniami do zarządzania strukturą bazy danych. Kluczowym błędem jest zatem niedostrzeganie znaczenia uprawnienia SELECT oraz niewłaściwe rozumienie zakresu przyznawanych uprawnień w kontekście SQL.

Pytanie 36

Aby przywrócić bazę danych MS SQL z kopii zapasowej, należy zastosować polecenie:

A.
RESTORE DATABASE
B.
SAVE DATABASE
C.
REBACKUP DATABASE
D.
DBCC CHECKDB
W MS SQL Server bazę odtwarza się z kopii poleceniem RESTORE DATABASE, podając nazwę bazy i plik kopii, np. RESTORE DATABASE sklep FROM DISK = 'c:\sklep.bak'. Jest ono odwrotnością BACKUP DATABASE, które tworzy kopię. Używa się go po awarii lub przy przenoszeniu bazy. Dlatego do przywrócenia bazy z kopii służy RESTORE DATABASE.

Pytanie 37

W jaki sposób można w języku CSS ustawić takie stylizowanie tabeli, aby wiersz, na którym obecnie znajduje się kursor myszki, zmieniał kolor tła na szary?

A. tr:hover { color: gray; }
B. tr:active { color: gray; }
C. tr:hover { background-color: gray; }
D. tr:active { background-color: gray; }
Odpowiedź tr:hover { background-color: gray; } jest całkiem trafna. Używasz pseudoklasy :hover, co jest super standardowym podejściem do stylizacji elementów, gdy kursor najedzie na nie. W tabeli to tak działa, że cały wiersz zmienia kolor tła na szary, co znacznie poprawia czytelność i jakby cały interfejs staje się bardziej interaktywny. To jest przydatne w aplikacjach webowych, bo użytkownicy szybko rozumieją, na którym wierszu akurat są. Można jeszcze dodać inne efekty, na przykład zmienić kolor tekstu czy dodać jakies cień. Przykład to jakieś interaktywne tabele w systemach do zarządzania danymi, gdzie jak najeżdżasz na wiersze, to wyświetlają się dodatkowe info lub pozwalają je edytować. Pamiętaj też o dostępności – dobrze jest zadbać o kontrasty kolorystyczne, żeby osoby z dysfunkcjami wzroku mogły z tego korzystać.

Pytanie 38

W kodzie źródłowym zapisanym w języku HTML wskaż błąd walidacji dotyczący tego fragmentu:

<h6>CSS</h6>
<p>Kaskadowe arkusze stylów (<b>ang. <i>Cascading Style Sheets</b></i>)<br>to język służący ...</p>
A. Znacznik br nie został poprawnie zamknięty.
B. Znacznik zamykający /b niezgodny z zasadą zagnieżdżania.
C. Nieznany znacznik h6.
D. Znacznik br nie może występować wewnątrz znacznika p.
Twoja odpowiedź jest poprawna. Znacznik zamykający /b w badanym kodzie HTML jest niezgodny z zasadą zagnieżdżania. Zasada ta mówi, że znaczniki powinny być zamykane w odwrotnej kolejności do otwierania - zgodnie z modelem LIFO (Last In, First Out). W praktyce oznacza to, że jeśli otworzyliśmy na przykład najpierw znacznik <i>, a następnie <b>, to najpierw powinniśmy zamknąć <b>, a dopiero potem <i>. Nieprzestrzeganie tej zasady może prowadzić do nieoczekiwanych wyników podczas renderowania strony. Jest to istotne dla utrzymania czytelności i prawidłowego funkcjonowania kodu. W codziennej praktyce, szczególnie w większych projektach, stosowanie się do takich zasad pomaga utrzymać kod zrozumiałym i łatwym do zarządzania.

Pytanie 39

Której wartości użyć w CSS, aby obramowanie było linią KRESKOWĄ?

A.
solid
B.
groove
C.
dashed
D.
dotted
Pozostałe wartości dają inny wygląd. solid to linia ciągła, dotted to linia z kropek, a groove daje efekt „wytłoczonej” ramki 3D. Linię z kresek daje wartość dashed.

Pytanie 40

Jaką formę przybierze data po wykonaniu poniższego kodu PHP?

<?php
echo date('l, dS F Y');
?>
A. Monday, 10th July 2017
B. Monday, 10 July 2017
C. Monday, 10th July 17
D. 10, Monday July 2017
W tym przykładzie funkcja date() w PHP przyjmuje ciąg znaków 'l dS F Y' jako parametr formatowania, co determinuje sposób wyświetlenia daty. Znak 'l' reprezentuje pełną nazwę dnia tygodnia, co w przypadku poniedziałku da 'Monday'. 'd' to dwucyfrowa reprezentacja dnia miesiąca, dodając 'S' uzyskujemy jego wersję z angielskim sufiksem porządkowym, np. '10th', co jest zgodne z odpowiedzią. 'F' reprezentuje pełną nazwę miesiąca, czyli 'July', a 'Y' to pełny rok, czyli '2017'. Kombinacja tych formatów pozwala na uzyskanie czytelnej i zgodnej ze standardami reprezentacji daty w języku angielskim, co jest często wykorzystywane w międzynarodowych projektach webowych. Takie formatowanie jest nie tylko intuicyjne dla użytkowników, ale także zgodne z dobrymi praktykami w zakresie czytelności i użyteczności w aplikacjach internetowych. PHP umożliwia elastyczne formatowanie dat, co jest bardzo przydatne w kontekście globalnych aplikacji wymagających różnych lokalizacji.