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 09:01
  • Data zakończenia: 8 czerwca 2026 09:25

Egzamin niezdany

Wynik: 17/40 punktów (42,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Którą właściwość CSS należy zastosować, aby uzyskać efekt rozstrzelenia (zwiększonych odstępów) między literami?

A.
text-decoration
B.
text-space
C.
letter-transform
D.
letter-spacing
Pozostałe nazwy albo nie istnieją, albo robią coś innego. letter-transform i text-space brzmią logicznie, ale takich właściwości w CSS nie ma. text-decoration jest prawdziwa, lecz odpowiada za dekoracje tekstu, takie jak podkreślenie czy przekreślenie, a nie za odstępy między znakami. Rozstrzelenie liter uzyskuje się właściwością letter-spacing, dlatego to ona jest poprawna.

Pytanie 2

Który z formatów to format grafiki WEKTOROWEJ?

A. PNG
B. SVG
C. GIF
D. JPG
Pozostałe formaty są RASTROWE - przechowują obraz jako siatkę pikseli, więc przy powiększaniu tracą ostrość. JPG kompresuje stratnie (zdjęcia), PNG bezstratnie (z przezroczystością), a GIF obsługuje proste animacje. Wektorowy z tej listy jest tylko SVG.

Pytanie 3

Przedstawiono kod tabeli 3×2. Jaką modyfikację należy wprowadzić w drugim wierszu, aby tabela wyglądała jak na obrazie z niewidocznym wierszem?

<table>
  <tr>
    <td style="border: solid 1px;">Komórka 1</td>
    <td style="border: solid 1px;">Komórka 2</td>
  </tr>
  <tr>
    <td style="border: solid 1px;">Komórka 3</td>
    <td style="border: solid 1px;">Komórka 4</td>
  </tr>
  <tr>
    <td style="border: solid 1px;">Komórka 5</td>
    <td style="border: solid 1px;">Komórka 6</td>
  </tr>
</table>
Komórka 1Komórka 2
Komórka 3Komórka 4
Komórka 5Komórka 6
A. <tr style="display: table-cell">
B. <tr style="visibility: hidden">
C. <tr style="clear: none">
D. <tr style="display: none">
Wybrana odpowiedź jest niepoprawna, ale nie martw się, to jest okazja do nauki. Jeśli chcesz ukryć element na stronie, ale zachować jego miejsce w układzie, powinieneś użyć właściwości CSS 'visibility: hidden'. Takie podejście jest zgodne z dobrymi praktykami w tworzeniu stron internetowych. Inne opcje, takie jak 'display: none', 'display: table-cell' i 'clear: none' nie są odpowiednie w tym kontekście. 'display: none' całkowicie usuwa element z układu strony, co powoduje przesunięcie pozostałych elementów, aby zapełnić puste miejsce. 'display: table-cell' jest właściwością, która pozwala elementowi zachowywać się jak komórka tabeli, co nie ma tutaj zastosowania, gdyż chcemy ukryć cały wiersz, a nie pojedynczą komórkę. 'clear: none' jest właściwością używaną do kontroli przepływu elementów w stosunku do elementów z lewej lub prawej strony, ale nie ma wpływu na ukrywanie elementów. Dobra praktyka polega na zrozumieniu i właściwym stosowaniu różnych właściwości CSS, aby uzyskać zamierzony efekt na stronie.

Pytanie 4

Który styl ustawi trzy kolumny OBOK siebie (każda na 1/3 szerokości)?

A.
.kolumny { float: left; width: 33%; }
B.
.kolumny { clear: both; height: 33%; }
C.
.kolumny { float: left; width: 40%; }
D.
.kolumny { float: right; height: 33%; }
Do układu trzech kolumn potrzebna jest SZEROKOŚĆ, a nie wysokość - warianty z height: 33% nie zwężą kolumn. clear: both przerywa opływanie, więc bloki nie staną obok siebie. width: 40% jest za szerokie na trzy kolumny (3 × 40% > 100%). Poprawny jest .kolumny { float: left; width: 33%; }.

Pytanie 5

W CSS określono styl dla paragrafu, który nada mu poniższe cechy:

background-color: red;
color: blue;
margin: 40px;
A. tło w kolorze czerwonym, tekst w kolorze niebieskim, marginesy zewnętrzne o wartości 40px
B. tło w kolorze niebieskim, tekst w kolorze czerwonym, marginesy zewnętrzne o wartości 40px
C. tło w kolorze czerwonym, tekst w kolorze niebieskim, marginesy wewnętrzne o wartości 40px
D. tło w kolorze niebieskim, tekst w kolorze czerwonym, marginesy wewnętrzne o wartości 40px
W podanym przykładzie z CSS zastosowano trzy kluczowe właściwości stylizujące element HTML: background-color color oraz margin. Właściwość background-color określa kolor tła danego elementu tutaj przyjęto wartość red co oznacza czerwone tło. Właściwość color definiuje kolor tekstu w elemencie który w tym przypadku jest ustawiony na blue czyli niebieski. Ostatnią właściwością jest margin która odpowiada za marginesy zewnętrzne elementu. Marginesy zewnętrzne to przestrzeń wokół elementu od jego krawędzi do sąsiadujących elementów i w tym przykładzie mają wartość 40px. Takie ustawienia są często używane w praktyce aby zapewnić czytelność i estetykę projektu. Używanie marginesów zewnętrznych to dobra praktyka w celu zachowania odpowiednich odstępów w układzie strony. Warto podkreślić że użycie tych właściwości jest zgodne ze standardami CSS zapewniając kompatybilność z większością przeglądarek. Właściwe stosowanie kolorów i marginesów jest kluczowe w projektowaniu przyjaznym dla użytkownika UX oraz estetycznie spójnych interfejsów graficznych.

Pytanie 6

Zadaniem poniższego kodu napisanego w języku C++ jest wypisanie dla podanych dowolnych liczb całkowitych różnych od zera:

int main()
{
    int liczba;
    cin >> liczba;

    while (liczba != 0)
    {
        if ((liczba % 2) == 0)
            cout << liczba << endl;

        cin >> liczba;
    }
    return 0;
}
A. wyłącznie liczby nieparzyste
B. wszystkie liczby
C. liczby pierwsze
D. jedynie liczby parzyste
Prezentowany kod źródłowy w języku C++ jest zaprogramowany do wypisywania tylko liczb parzystych spośród wprowadzanych przez użytkownika liczb całkowitych różnych od zera. Kluczowym elementem jest tutaj operacja modulo (%), która oblicza resztę z dzielenia liczby przez 2. Dla liczb parzystych wynik tej operacji wynosi 0, co jest sprawdzane w warunku if. Kod używa pętli while, która pozwala na wprowadzanie i sprawdzanie wielu liczb w sposób iteracyjny, aż do momentu wprowadzenia zera, które kończy działanie programu. Zrozumienie tej struktury jest kluczowe w programowaniu i pozwala na efektywne filtrowanie danych. W praktyce taki mechanizm mógłby być użyty w systemach analizujących dane wejściowe pod kątem ich właściwości liczbowych. Podstawowe operacje na liczbach, takie jak modulo, są szeroko stosowane w algorytmach i strukturach danych, gdzie ważne jest klasyfikowanie czy filtrowanie elementów według zadanych kryteriów. Warto zwrócić uwagę na efektywność tego podejścia, które minimalizuje zbędne operacje poprzez bezpośrednie sprawdzanie warunku wewnątrz pętli.

Pytanie 7

Który z przedstawionych ciągów znaków nie pasuje do wzorca wyrażenia regularnego określonego poniżej?

(([A-ZŁŻ][a-ząęóźżćńś]{2,})(-[A-ZŁŻ][a-ząęóźżćńś]{2,})?)
A. Nowakowska-Kowalska
B. Jelenia Góra
C. Kowalski
D. Kasprowicza
Wzorce wyrażeń regularnych stosowane są do dokładnego dopasowywania lub przekształcania tekstu. Podany wzorzec wymaga, by ciąg tekstu zaczynał się dużą literą, po której następuje co najmniej dwie małe litery, opcjonalnie kontynuowane przez myślnik i kolejną sekwencję dużej i co najmniej dwóch małych liter. Błędem jest uznanie za poprawne ciągów zawierających odstęp, jak Jelenia Góra, który nie spełnia tego wymogu, gdyż spacja nie jest dozwolona w środku wzorca. Typowym błędnym przekonaniem jest myślenie, że każda sekwencja zaczynająca się dużą literą będzie pasować, co nie jest prawdą, ponieważ struktura musi być jednorodna bez przerw, takich jak spacje. Wyrażenia regularne są użyteczne w programowaniu przy walidacji danych wejściowych, gdzie musimy sprawdzić, czy dane spełniają określone kryteria. Często stosuje się je do filtrowania danych lub wyszukiwania specyficznych informacji w ciągach tekstowych. Zrozumienie ich logiki pomaga unikać błędów i skutecznie analizować tekst, co jest kluczowe w pracy z danymi w IT. Praktyka z wyrażeniami regularnymi pozwala lepiej kontrolować i przetwarzać skomplikowane struktury tekstowe, co jest nieocenioną umiejętnością w zawodach związanych z programowaniem i analizą danych.

Pytanie 8

Zakładając, że żadne style CSS nie zostały zdefiniowane, przedstawiony efekt zostanie uzyskany przy pomocy

Tytuł
    Znaczniki języka HTML
Autor
    Ewa Konieczna
Słowa kluczowe
    witryny internetowe, HTML

Kod 1.
<ul>
  <li>Tytuł</li>
  <li>Znaczniki języka HTML</li>
  <li>Autor</li>
  <li>Ewa Konieczna</li>
  <li>Słowa kluczowe</li>
  <li>witryny internetowe, HTML</li>
</ul>

Kod 2.
<dl>
  <dt>Tytuł</dt>
  <dd>Znaczniki języka HTML</dd>
  <dt>Autor</dt>
  <dd>Ewa Konieczna</dd>
  <dt>Słowa kluczowe</dt>
  <dd>witryny internetowe, HTML</dd>
</dl>

Kod 3.
<ol>
  <li>Tytuł</li>
  <dl>Znaczniki języka HTML</dl>
  <li>Autor</li>
  <dl>Ewa Konieczna</dl>
  <li>Słowa kluczowe</li>
  <dl>witryny internetowe, HTML</dl>
</ol>

Kod 4.
<table>
  <tr>Tytuł</tr>
  <td>Znaczniki języka HTML</td>
  <tr>Autor</tr>
  <td>Ewa Konieczna</td>
  <tr>Słowa kluczowe</tr>
  <td>witryny internetowe, HTML</td>
</table>
A. Kodu 4.
B. Kodu 1.
C. Kodu 2.
D. Kodu 3.
Gratulacje, Twoja odpowiedź jest poprawna. Wybrałeś 'Kod 2', który jest kodem HTML definiującym tabelę. To jest prawidłowe, ponieważ układ prezentowany na zdjęciu sugeruje użycie tabeli do wyświetlenia informacji. W HTML, tabele są definiowane za pomocą znacznika <table>, a wiersze i komórki za pomocą <tr> i <td> odpowiednio. W tym przypadku, każdy wiersz to osobny element tabeli - 'Tytuł', 'Znaczniki języka HTML', 'Autor', 'Słowa kluczowe' oraz 'Witryny internetowe, HTML' - i są one rozmieszczone w sposób sugerujący użycie tabeli. Jest to standardowy sposób na prezentowanie zestawów danych, które mają związek ze sobą. Dzięki temu, informacje są łatwiejsze do zrozumienia i analizy. Pamiętaj jednak, że tabele powinny być używane głównie do prezentacji danych, a nie do układu strony - do tego celu lepiej nadają się inne metody, takie jak Flexbox czy CSS Grid.

Pytanie 9

Które z poniższych stwierdzeń na temat klucza głównego jest prawdziwe?

A. W przypadku tabeli z danymi osobowymi może to być pole nazwisko
B. Składa się wyłącznie z jednego pola
C. Może przyjmować wyłącznie wartości liczbowe
D. Jest unikalny dla danej tabeli
Wiele osób myli pojęcie klucza podstawowego z innymi właściwościami atrybutów w tabeli. Chociaż klucz podstawowy może składać się tylko z jednego pola, nie jest to warunek konieczny. Klucze podstawowe mogą również być złożone, co oznacza, że mogą składać się z wielu pól. Na przykład, w tabeli rejestrującej sprzedaż można wykorzystać kombinację kolumn takich jak 'ID produktu' i 'ID zamówienia' jako klucz podstawowy, co jest częstą praktyką w projektowaniu baz danych. Z kolei twierdzenie, że pole nazwisko może być kluczem podstawowym w tabeli danych osobowych, jest również problematyczne, ponieważ nazwiska mogą się powtarzać. W związku z tym, wybór atrybutów do klucza podstawowego powinien opierać się na ich unikalności oraz stabilności, a nie na ich powszechności. Ostatnia nieprawidłowa koncepcja sugeruje, że klucz podstawowy może przyjmować tylko wartości liczbowe, co jest wprowadzeniem w błąd. Klucz podstawowy może być zarówno liczbowy, jak i tekstowy; klucz identyfikujący użytkownika może zawierać np. adres e-mail, co jest także przykładem spójnego podejścia w projektowaniu baz danych. Typowe błędy myślowe prowadzące do takich wniosków to uproszczenia związane z rozumieniem właściwości atrybutów oraz zbyt wąskie podejście do koncepcji unikalności w kontekście baz danych.

Pytanie 10

Wszelkie dane, które dostarczają informacji o innych danych, nazywane są

A. metadata.
B. markup language.
C. databus.
D. metalanguage.
Poprawna odpowiedź to „metadata”, czyli po polsku metadane. Metadane to wszystkie dane, które opisują inne dane. Można powiedzieć, że są to „informacje o informacji”. Przykład z życia: plik zdjęcia JPG. Sam obraz to dane, a takie elementy jak data wykonania, model aparatu, rozdzielczość, lokalizacja GPS, autor – to właśnie metadane zapisane np. w formacie EXIF. Podobnie w świecie WWW: w dokumencie HTML mamy sekcję <head>, a w niej znaczniki <meta>. Te znaczniki nie są wyświetlane użytkownikowi jako treść strony, ale przekazują wyszukiwarkom i przeglądarkom informacje o stronie, np. opis, słowa kluczowe, kodowanie znaków, język. To jest klasyczny przykład metadanych w praktyce. W bazach danych metadane to np. definicje tabel, typy kolumn, klucze główne, indeksy, ograniczenia. System zarządzania bazą danych przechowuje je w tzw. katalogach systemowych. Dzięki temu wie, jak interpretować rekordy, jakie są relacje między tabelami, jakie są dopuszczalne wartości. Bez metadanych dane byłyby po prostu chaotycznym zbiorem bitów, z którego niewiele da się wyciągnąć. W standardach branżowych stosuje się różne schematy metadanych, np. Dublin Core dla zasobów cyfrowych, czy schema.org dla stron internetowych, aby wyszukiwarki lepiej rozumiały zawartość. Z mojego doświadczenia warto od początku myśleć o metadanych jako o czymś, co podnosi jakość systemu: ułatwia wyszukiwanie, integrację, automatyczne przetwarzanie danych. Dobra praktyka jest taka, żeby dla ważnych zasobów (pliki, rekordy w bazie, strony WWW, API) zawsze planować strukturę metadanych: kto utworzył, kiedy, jaki typ, wersja, status. To bardzo pomaga przy utrzymaniu aplikacji, debugowaniu i rozwoju systemu.

Pytanie 11

Jak za pomocą CSS ustawić opływanie obrazu tekstem, wprowadzając odpowiedni kod w stylu obrazu?

Ilustracja do pytania
A. float: left;
B. float: right;
C. table: left;
D. clear: both;
Stosowanie table: left; w tym kontekście to strzał w kolano, bo taka właściwość nie istnieje. W CSS do tabel używamy innych właściwości jak display: table; lub display: table-cell;, ale nie do opływania elementów. A clear: both; jest używane, żeby zlikwidować opływ po float, więc to ważna sprawa, bo inaczej wszystko się sypie. Float: left; może opływać, ale w tej sytuacji nie postawi obrazka po prawej, bo ustawia go po lewej stronie. Wiele osób myśli, że float działa na osi Y, ale tak naprawdę dotyczy tylko osi X. Pamiętaj, że float, chociaż przydatny, to nie jedyny sposób na układanie elementów w CSS. Flexbox i grid to nowoczesne metody, które często są znacznie lepsze. By zbudować ładne interfejsy, musimy rozumieć jak różne właściwości CSS ze sobą współpracują.

Pytanie 12

Aby obraz na stronie automatycznie dopasowywał się do rozmiaru ekranu, na którym strona jest wyświetlana, należy:

A. nie zmieniać jego wymiarów stylami CSS
B. jego szerokość ustawić w wartościach procentowych
C. oba jego wymiary ustawić w pikselach
D. jeden z wymiarów ustawić w pikselach
Responsywny obraz skaluje się razem z układem strony. Uzyskuje się to, ustawiając jego szerokość w jednostce względnej - w procentach, na przykład img { width: 100%; max-width: 100%; }. Obraz dopasowuje się wtedy do szerokości kontenera, a wysokość zwykle pozostawia się jako auto, by zachować proporcje. Dlatego szerokość obrazu ustawia się w wartościach procentowych.

Pytanie 13

<source src="plik.mp4" type="video/mp4">
Aby osadzić plik wideo na stronie WWW, przedstawiony kod HTML5 należy umieścić wewnątrz znaczników:
A. <video> </video>
B. <section> </section>
C. <embed> </embed>
D. <div> </div>
Poprawna odpowiedź to umieszczenie znacznika `<source>` wewnątrz `<video>...</video>`. W HTML5 to właśnie element `<video>` jest kontenerem odpowiedzialnym za osadzanie plików wideo na stronie WWW. Atrybuty takie jak `controls`, `autoplay`, `loop`, `muted`, `width` czy `height` przypisujemy właśnie do `<video>`, a nie do `<source>`. Znacznik `<source>` służy głównie do wskazania konkretnego pliku multimedialnego i jego typu MIME, np.: `<video controls width="640" height="360"><source src="film.mp4" type="video/mp4"><source src="film.webm" type="video/webm">Twoja przeglądarka nie obsługuje elementu video.</video>`. Przeglądarka przechodzi po kolei po elementach `<source>` i wybiera pierwszy format, który potrafi odtworzyć. To jest zgodne ze specyfikacją HTML Living Standard (WHATWG) oraz zaleceniami W3C dotyczącymi multimediów w sieci. W praktyce, w projektach komercyjnych, często dodaje się kilka formatów (np. MP4, WebM), właśnie po to, by zapewnić maksymalną kompatybilność między różnymi przeglądarkami i systemami. Moim zdaniem warto od razu wyrabiać sobie nawyk pisania pełnej, semantycznie poprawnej struktury: `<video>` jako główny element odtwarzacza, w środku jeden lub więcej `<source>` i ewentualnie tekst alternatywny. Dzięki temu kod jest czytelny, łatwiej go stylować w CSS, a także lepiej zachowuje się w kontekście dostępności (np. czytniki ekranu widzą, że to element wideo). Dodatkowo, `<video>` można łatwo obsługiwać z poziomu JavaScript, korzystając z jego API (play, pause, currentTime, volume itd.), co w praktyce daje sporą kontrolę nad odtwarzaniem multimediów na stronie.

Pytanie 14

Z którego z pól klasy

Dane
można będzie uzyskać dostęp z zewnątrz, korzystając z obiektu stworzonego jako instancja tej klasy?
class Dane {
    public $a;
    private $b;
    protected $c;
}
A. Do pola $a.
B. Do pola $b.
C. Do wszystkich pól.
D. Do pola $c.
Odpowiedź jest prawidłowa, ponieważ pole $a jest zadeklarowane jako publiczne, co oznacza, że jest dostępne z zewnątrz klasy i może być modyfikowane oraz odczytywane przez instancje tej klasy oraz inne klasy. Publiczne modyfikatory dostępu są standardową praktyką w programowaniu obiektowym, umożliwiającą swobodny dostęp do danych, co jest szczególnie przydatne w przypadku, gdy chcemy, aby dane były łatwo dostępne dla innych komponentów systemu. Na przykład, jeśli klasa Dane jest używana w aplikacji, możemy tworzyć obiekty tej klasy i bezpośrednio operować na polu $a, co sprzyja elastyczności i prostocie w zarządzaniu danymi. W dobrych praktykach programistycznych często wykorzystuje się publiczne pola w prostych strukturach danych, gdzie dostęp do danych musi być łatwy i szybki. Warto także pamiętać, że dostępność publicznych pól może być użyteczna w kontekście serializacji obiektów, gdzie prosto jest zmapować dane obiektu na format JSON lub XML.

Pytanie 15

W tabeli artykuly przeprowadzono poniższe operacje związane z uprawnieniami użytkownika jan.

GRANT ALL PRIVILEGES ON artykuły TO jan
REVOKE SELECT, UPDATE ON artykuly FROM jan

Jakie będą uprawnienia użytkownika jan po wykonaniu tych operacji?

A. tworzenia tabel oraz ich zapełniania danymi
B. aktualizowania informacji oraz przeglądania tabeli
C. tworzenia tabeli oraz aktualizowania danych w niej
D. przeglądania tabeli
Wybór odpowiedzi dotyczącej "aktualizowania danych i przeglądania tabeli" nie jest poprawny, ponieważ po wykonaniu polecenia REVOKE SELECT, UPDATE ON artykuly FROM jan, jan traci te konkretne uprawnienia. Warto zauważyć, że polecenie GRANT ALL PRIVILEGES przyznaje użytkownikowi szereg uprawnień, ale ich zakres można ograniczyć innymi poleceniami, jak REVOKE. Z tego powodu jan nie ma już możliwości przeglądania tabeli ani jej aktualizowania, co czyni tę odpowiedź nieaktualną. Często w praktyce zawodowej zdarza się, że nadawane są szerokie uprawnienia, a następnie w miarę potrzeby są one ograniczane, co może prowadzić do nieporozumień, jeśli nie zrozumie się działania tych poleceń. Kolejna niepoprawna odpowiedź, która sugeruje "przeglądanie tabeli", również jest błędna z tego samego powodu - jan nie ma takich uprawnień po REVOKE. Ostatnia z odpowiedzi, mówiąca o "tworzeniu tabeli i aktualizowaniu w niej danych", jest niepoprawna, ponieważ użytkownik jan nie ma już prawa aktualizacji danych po wycofaniu tych uprawnień. Zrozumienie mechanizmów zarządzania uprawnieniami jest kluczowe w pracy z bazami danych, aby uniknąć przypisania użytkownikom większych niż potrzebne przywilejów, co mogłoby prowadzić do nieautoryzowanego dostępu lub usunięcia danych.

Pytanie 16

Jak nazywa się proces, w trakcie którego identyfikuje się oraz eliminuje błędy w kodzie źródłowym aplikacji?

A. standaryzacja
B. Normalizacja
C. Kompilacja
D. Debugowanie
Debugowanie to proces, który polega na identyfikacji, analizie i usuwaniu błędów w kodzie źródłowym programów. Jest to kluczowy etap w cyklu życia oprogramowania, który zapewnia, że aplikacje działają zgodnie z zamierzonymi specyfikacjami. W praktyce debugowanie może obejmować różnorodne techniki, takie jak używanie narzędzi do analizy statycznej, wykonanie testów jednostkowych oraz korzystanie z debuggerów, które pozwalają na śledzenie wykonania kodu w czasie rzeczywistym. Dobre praktyki debugowania obejmują dokumentowanie napotkanych błędów, co może ułatwić ich ponowne wystąpienie oraz szybsze ich usunięcie w przyszłości. Debugowanie nie tylko poprawia jakość kodu, ale również ułatwia rozwój i utrzymanie oprogramowania, co jest zgodne z zasadami Agile i DevOps, gdzie ciągła integracja i dostarczanie są kluczowymi elementami procesu. W ten sposób debugowanie stanowi integralną część programowania, która wpływa na wydajność i stabilność tworzonych aplikacji.

Pytanie 17

Aby osiągnąć pokazany rezultat w programie graficznym wykorzystano

Ilustracja do pytania
A. gradient okrągły
B. zmianę intensywności kolorów
C. gradient liniowy
D. kanał alpha
Gradient liniowy to narzędzie stosowane w edytorach grafiki rastrowej do tworzenia płynnych przejść pomiędzy dwoma lub więcej kolorami w zadanym kierunku najczęściej poziomym lub pionowym. W praktyce gradient liniowy jest kluczowy w projektowaniu graficznym ponieważ pozwala na subtelne cieniowanie i nadawanie głębi elementom wizualnym. Przykładowo stosuje się go w tworzeniu tła logotypów czy też przycisków interfejsów użytkownika. Proces tworzenia gradientu liniowego opiera się na ustawieniu punktów początkowych i końcowych oraz przypisaniu im odpowiednich wartości kolorystycznych co podkreśla jego wszechstronność. Standardowym podejściem jest użycie gradientu liniowego w celu uzyskania efektu trójwymiarowości co jest zgodne z dobrymi praktykami projektowania UX i UI. W kontekście branżowym gradienty liniowe są nieodłącznym elementem narzędzi takich jak Adobe Photoshop czy GIMP gdzie umożliwiają manipulację barwą i luminancją co jest kluczowe w profesjonalnym edytowaniu obrazów.

Pytanie 18

Znaczniki HTML <strong> oraz <em> używane do wyróżniania istotności tekstu, pod względem formatowania odpowiadają znacznikom

A. ```<b>``` oraz ```<i>```
B. ```<u>``` oraz ```<sup>```
C. ```<b>``` oraz ```<u>```
D. ```<i>``` oraz ```<mark>```
Znaczniki HTML <strong> oraz <em> są używane do podkreślenia ważności tekstu, przy czym <strong> wskazuje na silniejsze akcentowanie, a <em> na akcentowanie mniej intensywne, pełniące rolę stylizacji typograficznej. W kontekście formatowania, ich odpowiednikami są znaczniki <b> oraz <i>. Oznacznik <b> wprowadza tekst w pogrubieniu, co sygnalizuje jego ważność, ale nie ma semantycznego znaczenia, podczas gdy <i> oznacza kursywę, która jest często używana do podkreślenia tytułów, obcojęzycznych wyrazów czy terminów technicznych. W praktyce, użycie <strong> i <em> jest zgodne z zasadami semantycznego HTML, które mają na celu zrozumienie treści przez maszyny oraz poprawę dostępności, co ma fundamentalne znaczenie w projektowaniu stron internetowych. Warto także pamiętać, że stosowanie semantycznych znaczników wpływa na SEO, umożliwiając lepsze indeksowanie treści przez wyszukiwarki, a także poprawia doświadczenia osób korzystających z technologii asystujących. Przykładowo, użycie <strong> w nagłówkach lub kluczowych informacjach na stronie pozwala na lepsze zrozumienie struktury treści przez użytkowników oraz boty wyszukiwarek.

Pytanie 19

Liczba 0x142 zapisana w kodzie JavaScript jest w postaci

A. szesnastkowej
B. dwójkowej
C. ósemkowej
D. dziesiętnej
O systemie liczbowym decyduje prefiks: 0x to szesnastkowy, 0o ósemkowy, 0b dwójkowy, a liczby dziesiętne zapisuje się bez prefiksu. Skoro jest 0x, liczba 0x142 jest szesnastkowa.

Pytanie 20

W języku PHP wyniki zapytania z bazy danych zostały pobrane przy użyciu polecenia mysql_query(). Aby uzyskać dane w postaci wierszy z tej zwróconej kwerendy, należy użyć polecenia:

A. mysql_fetch_row()
B. mysql_field_len()
C. mysql_list_fields()
D. mysql_fetch_lengths()
Funkcja mysql_fetch_row() to naprawdę ważne narzędzie w PHP, które pomaga w pracy z wynikami zapytań SQL. Kiedy wykonasz zapytanie za pomocą mysql_query(), dostajesz zestaw wyników, który można traktować jak tablicę. Używając mysql_fetch_row(), możesz pobrać jeden wiersz danych z tego zestawu, a to przychodzi w formie tablicy numerycznej. To bardzo przydatne, szczególnie gdy chcesz przejść przez wszystkie wiersze, które zwraca zapytanie. Na przykład, przy wyświetlaniu danych w HTML. Super jest to, że ta funkcja jest prosta w użyciu i działa efektywnie, dlatego tak wielu programistów ją ceni. Pamiętaj, żeby zawsze zabezpieczać zapytania przed SQL Injection. Możesz to zrobić, stosując przygotowane zapytania (prepared statements) albo funkcje, jak mysqli_query() z mysqli_fetch_row(). Warto też wiedzieć, że jeśli nie ma już więcej wierszy do pobrania, to mysql_fetch_row() zwróci false. Można to wykorzystać do kontrolowania pętli w kodzie, co jest przydatne.

Pytanie 21

Na co może wpływać rozmiar (waga) grafiki JPEG umieszczonej na stronie?

A. na zgodność z systemem Windows
B. na błędy składniowe HTML
C. na szybsze sprawdzanie odnośników
D. na czas ładowania strony
Pozostałe odpowiedzi nie mają związku z wagą pliku. Błędy składniowe HTML wynikają z niepoprawnego kodu, a nie z rozmiaru obrazka. Sprawdzanie odnośników i „zgodność z systemem Windows” również nie zależą od tego, ile waży JPEG. Na wagę pliku reaguje wyłącznie czas ładowania strony.

Pytanie 22

Jak brzmi nazwa metody sortowania, która polega na wielokrotnym analizowaniu kolejnych elementów tablicy oraz zamianie miejscami sąsiadujących elementów, aby utrzymać porządek według ustalonej reguły?

A. Sortowanie kubełkowe
B. Sortowanie bąbelkowe
C. Sortowanie przez wybór
D. Sortowanie szybkie
Sortowanie bąbelkowe, znane także jako Bubble Sort, to jedna z najprostszych metod sortowania, która polega na wielokrotnym przechodzeniu przez tablicę i porównywaniu par sąsiadujących elementów. Jeśli dany element jest większy od swojego sąsiada, następuje ich zamiana miejscami. Ta metoda sprawdza tablicę wielokrotnie, aż do momentu, gdy nie są już potrzebne żadne zamiany, co oznacza, że tablica jest posortowana. Przykładem zastosowania sortowania bąbelkowego mogą być sytuacje, gdy mamy do czynienia z niewielkimi zbiorami danych, na przykład w aplikacjach edukacyjnych, które mają na celu naukę podstaw algorytmiki. Warto pamiętać, że mimo swojej prostoty, sortowanie bąbelkowe ma złożoność czasową O(n²), co sprawia, że nie jest efektywne dla dużych zbiorów danych. Mimo to, jego zrozumienie stanowi dobry punkt wyjścia do nauki bardziej zaawansowanych algorytmów sortujących."

Pytanie 23

Który zapis CSS ustawi punktor listy NUMEROWANEJ na wielkie cyfry rzymskie, a PUNKTOWANEJ na kwadraty?

A.
ol { list-style-type: square; } ul { list-style-type: upper-roman; }
B.
ol { list-style-type: upper-alpha; } ul { list-style-type: disc; }
C.
ol { list-style-type: upper-roman; } ul { list-style-type: square; }
D.
ol { list-style-type: disc; } ul { list-style-type: upper-alpha; }
Trzeba dopasować wartości do list. disc to wypełnione kółko, a upper-alpha to wielkie litery - nie spełniają warunku (rzymskie cyfry i kwadraty). Mylące jest też zamienienie reguł <ol> i <ul> miejscami. Poprawne jest ol { list-style-type: upper-roman; } ul { list-style-type: square; }.

Pytanie 24

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

A. Barwienie.
B. Krzywe.
C. Inwersja.
D. Progowanie.
Wiele osób myli w GIMP-ie różne narzędzia z menu Kolory, bo na pierwszy rzut oka kilka z nich „mocno zmienia” obraz. Jednak efekt pokazany na filmie, gdzie obraz staje się dwuwartościowy (czarno-biały, bez półtonów), jest typowym działaniem funkcji Progowanie. Kluczowe jest tu zrozumienie, czym różnią się od siebie dostępne operacje. Krzywe służą do zaawansowanej korekcji tonalnej i kontrastu. Można nimi mocno przyciemnić lub rozjaśnić wybrane zakresy jasności, robić tzw. efekt kontrastu „S”, korygować prześwietlenia itd. Ale nawet przy bardzo agresywnych ustawieniach krzywych obraz nadal zawiera półtony – pojawiają się stopniowe przejścia między odcieniami, a nie ostre odcięcie na zasadzie czarne/białe. To świetne narzędzie do retuszu zdjęć, ale nie do uzyskania efektu progowania. Inwersja (Kolory → Inwersja) po prostu odwraca wartości kolorów lub jasności: jasne staje się ciemne, czerwony zmienia się na cyjan, zielony na magentę itd. To jak negatyw fotograficzny. Struktura szczegółów pozostaje identyczna, zmienia się tylko ich „biegun”. Nie pojawia się żadne odcięcie progowe, więc obraz wciąż ma pełne spektrum odcieni. W praktyce inwersja przydaje się np. przy przygotowaniu masek lub pracy z materiałami skanowanymi, ale nie generuje typowego, „plakatowego” efektu czerni i bieli jak progowanie. Barwienie z kolei (Kolory → Barwienie) służy do nadania całemu obrazowi jednolitego odcienia, zwykle po wcześniejszym sprowadzeniu go do skali szarości. Można w ten sposób uzyskać np. sepię, niebieski ton nocny albo dowolny kolorystyczny „filtr”. Jasność i kontrast lokalny pozostają bardzo podobne, zmienia się dominująca barwa. To zupełnie inna kategoria operacji niż progowanie, które pracuje na poziomie progów jasności, a nie na poziomie koloru. Typowym błędem jest patrzenie tylko na to, że „obraz bardzo się zmienił” i przypisywanie tego narzędziom takim jak krzywe czy inwersja. W pracy z grafiką warto zawsze zadać sobie pytanie: czy efekt polega na zmianie rozkładu jasności, na odwróceniu kolorów, czy na twardym podziale na dwa poziomy? Jeśli widzisz brak półtonów i ostre granice, praktycznie zawsze chodzi o progowanie, które zostało wskazane jako poprawna funkcja.

Pytanie 25

Jak określa się podzbiór strukturalnego języka zapytań, który dotyczy formułowania zapytań do bazy danych przy użyciu polecenia SELECT?

A. SQL DDL (ang. Data Definition Language)
B. SQL DCL (ang. Data Control Language)
C. SQL DQL (ang. Data Query Language)
D. SQL DML (ang. Data Manipulation Language)
SQL DQL (Data Query Language) to podzbiór języka SQL, który koncentruje się na formułowaniu zapytań do baz danych w celu pobierania danych. Jego głównym elementem jest polecenie SELECT, które umożliwia użytkownikom wybieranie specyficznych danych z tabel oraz ich przetwarzanie w różnorodny sposób, w tym filtrowanie, sortowanie i łączenie danych z różnych źródeł. Przykładem zastosowania DQL jest zapytanie typu 'SELECT * FROM employees WHERE department = 'Sales';', które zwraca wszystkich pracowników z działu sprzedaży. DQL jest kluczowym elementem w analizie danych oraz raportowaniu, co sprawia, że znajomość tego podzbioru jest niezbędna dla analityków danych oraz programistów. Zrozumienie i umiejętność korzystania z DQL pozwala na efektywne wykorzystanie baz danych w praktycznych zastosowaniach biznesowych, takich jak generowanie raportów, analiza trendów oraz wspieranie decyzji strategicznych. Standardy SQL określają dobre praktyki związane z tworzeniem zapytań, co pozwala na zachowanie wydajności i czytelności kodu.

Pytanie 26

W zamieszczonym kodzie PHP, który łączy się z serwerem bazy danych, jakie działania powinny być umieszczone w instrukcji warunkowej w miejscu trzech kropek?

$db = mysqli_connect("localhost","root","qwerty","baza1");
if ( !$db ) {
...
}
A. Przetwarzanie danych otrzymanych z bazy
B. Zamknięcie połączenia z bazą danych
C. Informacja o udanym połączeniu z bazą
D. Zarządzanie błędem połączenia
Wykonywanie operacji na źle zestawionym połączeniu z bazą danych mogłoby prowadzić do nieprzewidywalnych zachowań aplikacji. Próba obsługi danych pobranych z bazy kiedy połączenie nie zostało nawiązane jest błędnym podejściem. Bez prawidłowego połączenia nie można pobrać danych dlatego nie ma sensu implementowanie takiej logiki w tym miejscu kodu. Podobnie komunikat o pomyślnym połączeniu nie znajduje uzasadnienia w konstrukcji warunku sprawdzającego nieudane połączenie. Jeśli warunek jest spełniony oznacza to że połączenie się nie powiodło i należy podjąć kroki w celu obsługi tego błędu a nie informować o sukcesie. Zamknięcie połączenia z bazą danych jest czynnością wykonywaną na końcu pracy z bazą a nie na początku co również czyni tę odpowiedź niepoprawną w kontekście błędnego nawiązywania połączenia. Dobre praktyki programistyczne wskazują na potrzebę właściwego zarządzania połączeniami do bazy danych co obejmuje ich otwieranie dopiero gdy są potrzebne i zamykanie gdy nie są już używane. Koncepcje błędnego umiejscowienia tych operacji w logice aplikacji mogą prowadzić do nieskuteczności i obniżenia wydajności aplikacji co podkreśla wagę poprawnego zrozumienia procesu nawiązywania połączeń z bazą danych.

Pytanie 27

Zmienna zadeklarowana w C++ jako double x*; to

A. zmienna typu całkowitego
B. parametr formalny typu zmiennoprzecinkowego
C. zmienna zmiennoprzecinkowa
D. wskaźnik
Parametr formalny typu rzeczywistego nie ma zastosowania w kontekście 'double x*;', ponieważ nie jest to definicja dla parametru funkcji, lecz dla wskaźnika na zmienną typu double. Zmienna rzeczywista odnosi się do prostej deklaracji zmiennej, która przechowuje wartość typu double, jednak w tym przypadku mamy do czynienia z wskaźnikiem, a nie ze zmienną przechowującą wartość. Zmienna całkowita z kolei jest typem danych przechowującym liczby całkowite, a więc nie ma związku z typem double, który jest przeznaczony dla liczb zmiennoprzecinkowych. Wskaźniki są bardziej zaawansowanym konceptem w C++, pozwalającym na manipulacje adresami w pamięci oraz umożliwiającym dynamiczne alokacje pamięci. Użycie wskaźników jest kluczowe w przypadku struktur danych oraz programowania obiektowego, gdzie pozwalają one na efektywne przechowywanie i zarządzanie danymi. Zrozumienie różnic między różnymi typami danych w języku C++ oraz ich zastosowań jest niezbędne dla prawidłowego projektowania aplikacji i unikania błędów programistycznych.

Pytanie 28

W systemie baz danych sklepu komputerowego znajduje się tabela o nazwie komputery. Aby stworzyć raport, który wyświetli dane dla konkretnego zestawu informacji z tej tabeli, zawierający tylko te komputery, które mają co najmniej 8 GB pamięci RAM oraz procesor Intel, można wykorzystać zapytanie:

A. SELECT * FROM komputery WHERE procesor= 'Intel' OR pamiec>=8
B. SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec>=8
C. SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec<8
D. SELECT * FROM komputery WHERE procesor= 'Intel' OR pamiec<8
Aby stworzyć kwerendę, która wyświetli wszystkie komputery w tabeli 'komputery', spełniające określone warunki, musimy użyć odpowiednich operatorów logicznych oraz porównań. W tym przypadku chcemy uzyskać sprzęt, którego procesor to 'Intel' oraz pamięć RAM wynosi co najmniej 8 GB. Kluczowym elementem jest tutaj użycie operatora 'AND', który zapewnia, że muszą być spełnione oba warunki jednocześnie. Kwerenda 'SELECT * FROM komputery WHERE procesor= 'Intel' AND pamiec>=8;' w pełni odpowiada tym wymaganiom. Operator 'AND' jest istotny, ponieważ bez niego moglibyśmy otrzymać komputery z procesorem Intel, ale z pamięcią RAM mniejszą niż 8 GB, co jest sprzeczne z naszym celem. Tego rodzaju zapytania są powszechne w analizie danych i często wykorzystywane w raportowaniu i wizualizacji danych. Odpowiednia struktura kwerendy zapewnia, że wyniki będą precyzyjne i zgodne z oczekiwaniami użytkowników, co jest kluczowe w zarządzaniu bazami danych oraz w tworzeniu systemów informacyjnych dla sklepów komputerowych.

Pytanie 29

Którego typu w języku PHP można użyć do przechowywania wielu wartości z możliwością ich indeksowania?

A.
float
B.
array
C.
boolean
D.
double
W PHP typ array (tablica) służy do przechowywania WIELU wartości w jednej zmiennej, z dostępem przez indeksy liczbowe lub klucze tekstowe (np. $dni[0], $osoba['imie']). Jedna tablica grupuje całą listę elementów. Dlatego do wielu indeksowanych wartości służy array.

Pytanie 30

Wykonanie zapytania SQL spowoduje skasowanie rekordów:

DELETE FROM mieszkania WHERE status = 1;
A. elementów o nazwie status z tabeli mieszkania
B. tabel, w których wartość pola status wynosi 1, z bazy danych mieszkania
C. tabeli mieszkania znajdującej się w bazie danych
D. rekordów, w których wartość pola status jest równa 1, z tabeli mieszkania
Odpowiedź wskazująca na usunięcie rekordów, w których pole status jest równe 1, z tabeli mieszkania jest poprawna ponieważ w zapytaniu SQL użyto składni DELETE, która jest odpowiedzialna za usuwanie danych z określonej tabeli. W kontekście tego zapytania, po słowie 'FROM' znajduje się nazwa tabeli, czyli 'mieszkania', a warunek 'WHERE status = 1' precyzuje, które rekordy mają zostać usunięte. Przykładowo, jeśli w tabeli mieszkania znajdują się mieszkania oznaczone jako dostępne (status = 1), to po wykonaniu tego zapytania wszystkie takie mieszkania zostaną trwale usunięte z bazy danych. Ważne jest, aby przed wykonaniem zapytania DELETE rozważyć konieczność wykonania kopii zapasowej danych, aby zapobiec ich nieodwracalnej utracie. Dobrą praktyką jest również stosowanie zapytania SELECT z tym samym warunkiem, aby najpierw zweryfikować, które rekordy zostaną usunięte. Tego rodzaju podejście umożliwia lepsze zarządzanie danymi oraz redukuje ryzyko pomyłek podczas operacji na bazach danych.

Pytanie 31

Co umożliwia polecenie CREATE USER w MySQL?

A. wyświetlenie danych o użytkowniku
B. zmianę hasła istniejącego użytkownika
C. utworzenie użytkownika i nadanie mu uprawnień
D. utworzenie nowego użytkownika
Pozostałe odpowiedzi przypisują CREATE USER zadania innych poleceń. Zmianę hasła istniejącego użytkownika wykonuje ALTER USER lub SET PASSWORD, a nie CREATE USER. Wyświetlenie informacji o użytkowniku to zadanie zapytań (np. do tabeli systemowej mysql.user). Nadanie uprawnień wymaga osobnego GRANT - CREATE USER samo praw nie przyznaje. Dlatego CREATE USER jedynie tworzy użytkownika, co czyni pierwszą odpowiedź poprawną.

Pytanie 32

W języku JavaScript przedstawiona definicja jest definicją

var imiona = ["Anna", "Jakub", "Iwona", "Krzysztof"];
A. obiektu.
B. tablicy.
C. kolekcji.
D. klasy.
Niestety, wybrana przez Ciebie odpowiedź nie jest poprawna. Wygląda na to, że nie do końca zrozumiałeś jak działa definicja tablicy w JavaScript. Zrozumienie różnicy między tablicami, obiektami, klasami i kolekcjami jest kluczowe. Kolekcje to pojęcie bardziej ogólne, mogą one obejmować różne typy danych, takie jak tablice, listy czy zbiory, a termin ten nie jest używany w kontekście JavaScript. Klasy w JavaScript są 'szablonami' dla tworzenia obiektów, a więc struktur danych składających się z pól (zmiennych) i metod (funkcji). Tablica to specyficzny typ obiektu, który przechowuje elementy w określonym porządku. Wskazane jest, aby dokładnie zrozumieć, jakie informacje są przechowywane w tablicach, klasach, obiektach i kolekcjach w JavaScript, ponieważ jest to kluczowe dla efektywnego korzystania z tego języka. Spróbuj jeszcze raz, z pewnością za kolejnym razem się uda!

Pytanie 33

Do czego służy w MS SQL Server polecenie RESTORE DATABASE?

A. do przywrócenia bazy danych z kopii zapasowej
B. do usunięcia bazy z serwera
C. do rekonstrukcji bazy z danych buforowanych
D. do aktualizacji bazy z weryfikacją więzów integralności
Pozostałe opisy nie pasują do RESTORE. Aktualizacja danych z weryfikacją więzów to zwykłe operacje DML i ograniczenia, a nie przywracanie. „Rekonstrukcja z danych buforowanych” nie jest funkcją tego polecenia. Usunięcie bazy to DROP DATABASE. RESTORE DATABASE przywraca bazę z kopii zapasowej.

Pytanie 34

Sprawdzenie poprawności pól formularza polega na weryfikacji

A. czy użytkownik jest zalogowany
B. czy wprowadzone dane spełniają określone reguły
C. który użytkownik wprowadził informacje
D. czy istnieje plik PHP, który przetworzy dane
Walidacja pól formularza jest kluczowym elementem w procesie zbierania danych od użytkowników. Jej głównym celem jest upewnienie się, że dane, które użytkownik wprowadza, są zgodne z określonymi regułami i standardami. Na przykład, jeśli pole formularza wymaga adresu e-mail, walidacja może sprawdzić, czy wprowadzone dane mają odpowiedni format (np. zawierają '@' i końcówkę domeny). Ważne jest, aby walidację przeprowadzać zarówno po stronie klienta, jak i serwera. Walidacja po stronie klienta (np. za pomocą JavaScript) może szybko informować użytkownika o błędach, ale nie powinna być jedyną metodą, gdyż można ją łatwo obejść. Walidacja po stronie serwera, przeprowadzana w językach takich jak PHP lub Python, zapewnia, że dane są na pewno zgodne z wymaganiami systemu przed ich przetworzeniem. Przykładami reguł walidacji mogą być wymagania dotyczące długości tekstu, formatów numerów telefonów czy też wymagalności pewnych pól, co jest zgodne z dobrymi praktykami UX oraz standardami bezpieczeństwa danych.

Pytanie 35

Który fragment definicji dwukolumnowej tabeli odpowiada efektowi scalenia komórki 1 i 3, przedstawionemu na ilustracji?

Ilustracja do pytania
A. <td colspan="3">komórka1+3</td>
B. <td rowspan="2">komórka1+3</td>
C. <td colspan="2">komórka1+3</td>
D. <td rowspan="3">komórka1+3</td>
W tym zadaniu kluczowe jest rozróżnienie dwóch atrybutów HTML: colspan i rowspan. Oba służą do scalania komórek w tabeli, ale działają w zupełnie różnych kierunkach. Colspan łączy komórki w poziomie, czyli wzdłuż kolumn, natomiast rowspan scala komórki w pionie, wzdłuż wierszy. Na ilustracji widać, że „komórka1+3” zajmuje całą pierwszą kolumnę w dwóch pierwszych wierszach. To oznacza, że jedna komórka rozciąga się na dwa wiersze, a nie na dwie kolumny. Stąd logicznie wynika, że użycie colspan w ogóle nie pasuje do tej sytuacji. Gdybyśmy wpisali <td colspan="2">, przeglądarka potraktowałaby tę komórkę jako rozciągającą się na dwie kolumny w jednym wierszu. Efekt byłby taki, że komórki z drugiej kolumny zostałyby przesunięte, a układ z obrazka zupełnie by się rozjechał. Z kolei wartość colspan="3" w dwukolumnowej tabeli jest po prostu nielogiczna: próbujemy zająć trzy kolumny, gdy istnieją tylko dwie. W praktyce takie nadmiarowe wartości często kończą się chaotycznym renderowaniem tabeli, bo przeglądarka stara się „naprawić” błędny kod. Zostaje jeszcze rowspan z wartością 3. To też nie pasuje do przykładu, bo nasza scalona komórka obejmuje tylko dwa wiersze, nie trzy. Ustawienie rowspan="3" spowodowałoby, że komórka próbowałaby zająć miejsce również w trzecim wierszu, co zaburzyłoby pozycję „komórki5”. Typowym błędem myślowym jest mylenie liczby kolumn z liczbą wierszy: wiele osób patrzy na liczbę pól, które wizualnie wydają się połączone, i automatycznie wybiera colspan, bo kojarzy im się to z „większą szerokością”. Tymczasem trzeba zawsze zadać sobie jedno proste pytanie: czy komórka ma być szersza (więcej kolumn – colspan), czy wyższa (więcej wierszy – rowspan). W tym zadaniu odpowiedź jest jednoznaczna: chodzi o połączenie komórek pionowo w dół, więc poprawne może być tylko rowspan z wartością równą liczbie wierszy, które faktycznie zajmuje scalona komórka, czyli 2.

Pytanie 36

Jaką maksymalną ilość znaczników <td> można zastosować w tabeli składającej się z trzech kolumn i trzech wierszy, w której nie ma złączeń komórek ani wiersza nagłówkowego?

A. 3
B. 6
C. 9
D. 12
Wybór 3 jako liczby znaczników <td> jest niewłaściwy, ponieważ nie uwzględnia pełnej struktury tabeli. W przypadku tabeli o trzech kolumnach i trzech wierszach, każdy wiersz powinien zawierać wszystkie kolumny, co skutkuje 3 komórkami w każdym wierszu. To oznacza, że w sumie powstaje 3 x 3 = 9 komórek. Odpowiedź 6 mogłaby być mylona z sytuacją, w której w rozważanym układzie zredukowano by liczbę wierszy lub kolumn, lecz nie jest to zgodne z treścią pytania. Wybierając 12, sugeruje się zrozumienie, że można zwiększyć liczbę kolumn lub wierszy, co w tym kontekście nie jest możliwe, gdyż pytanie jednoznacznie określa ich liczbę. Błędne odpowiedzi mogą wynikać z niepełnego zrozumienia struktury tabel w HTML oraz ich zasady działania. Ważne jest, aby pamiętać, że każda tabela powinna być projektowana z myślą o przejrzystości i dostępności danych, a liczba znaczników <td> musi odzwierciedlać rzeczywiste dane, które mają być prezentowane. W praktyce, błędy te mogą prowadzić do chaosu w prezentacji danych, co utrudnia zarówno użytkownikom, jak i innym systemom, takich jak wyszukiwarki, właściwe zrozumienie struktury strony.

Pytanie 37

Jakie zapytanie SQL będzie odpowiednie do odnalezienia w podanej tabeli tylko imion oraz nazwisk pacjentów, którzy przyszli na świat przed rokiem 2002?

Ilustracja do pytania
A. SELECT imie, nazwisko FROM Pacjenci WHERE rok_urodzenia < 2002
B. SELECT imie, nazwisko FROM Pacjenci WHERE data_ostatniej_wizyty < 2002
C. SELECT * FROM Pacjenci WHERE rok_urodzenia <= 2002
D. SELECT * FROM Pacjenci WHERE rok_urodzenia LIKE 2002
W SQL naprawdę ważne jest, żeby znać różnice między różnymi operatorami i strukturami. Często można się potknąć na operatorach takich jak LIKE, ponieważ ten operator nadaje się bardziej do tekstów, a nie do porównań liczbowych. Tak naprawdę, w przypadku liczb lepiej używać operatorów takich jak < lub <=, które są bardziej celne i efektywne. Jak porównujesz rok urodzenia z 2002, to którzy się urodzili przed tym rokiem, to operator < jest tu niezbędny. Inną sprawą jest użycie selekcji * – to z kolei pobiera wszystkie dane z tabeli. Oczywiście, rozumiem, że nie zawsze jest to potrzebne, bo i tak interesuje nas tylko kilka kolumn. Poza tym, umiejętność pisania sensownych zapytań to kluczowa umiejętność w pracy z bazami danych. Na koniec, warunek data_ostatniej_wizyty < 2002 jest zupełnie nietrafiony, bo dotyczy wizyt, a nie urodzin pacjentów, co totalnie mija się z celem. Musisz bardziej zwracać uwagę na to, jakie kolumny potrzebujesz, żeby dobrze zrozumieć, co właściwie chcesz wyciągnąć z bazy danych.

Pytanie 38

W HTML5 semantycznym znacznikiem, który służy do określenia dwóch sekcji widocznych po prawej stronie na rysunku, zawierających wiadomości oraz aktualności, jest

Ilustracja do pytania
A. &lt;nav&gt;
B. &lt;main&gt;
C. &lt;footer&gt;
D. &lt;article&gt;
Bardzo często osoby uczące się HTML5 mylą znaczniki semantyczne, szczególnie gdy chodzi o takie elementy jak <nav>, <main>, <footer> czy <article>. To w sumie zrozumiałe, bo na pierwszy rzut oka mogą się wydawać podobne, ale każdy z nich ma swoje konkretne zadanie. <nav> to sekcja nawigacyjna – zawiera odnośniki do innych części serwisu, więc zwykle stosuje się go do menu, bocznych pasków z linkami czy paneli nawigacyjnych. Umieszczenie w <nav> sekcji z wiadomościami czy aktualnościami to klasyczny przykład złego zrozumienia przeznaczenia tego elementu – w praktyce taka struktura zaburza logikę nawigacji i dostępność strony. <main> z kolei oznacza główną i unikalną treść dokumentu, tej, która jest najważniejsza dla danej podstrony. Jednak <main> używamy tylko raz na stronie – nie powinno się go powielać ani używać do oznaczania pojedynczych sekcji, takich jak wiadomości, bo to prowadzi do błędnej interpretacji przez wyszukiwarki i czytniki ekranowe. <footer> odpowiada za stopkę strony lub sekcji, czyli miejsce na informacje jak prawa autorskie, dane kontaktowe, linki do polityk czy podsumowania – wrzucenie tam wiadomości czy aktualności byłoby mocno nielogiczne. Wybierając niewłaściwy znacznik, można popełnić błąd, który potem utrudnia rozwój strony, jej pozycjonowanie czy poprawność dostępności. Najczęstszy błąd to kierowanie się wyglądem, a nie semantyką – a w HTML5 to właśnie semantyka daje najwięcej korzyści na dłuższą metę.

Pytanie 39

Jaką wartość w formacie szesnastkowym ma kolor rgb(255, 16, 8)?

A. #800F80
B. #801008
C. #FF0F80
D. #FF1008
Pozostałe kody się nie zgadzają. #801008 zaczyna się od 80 (czyli 128, a nie 255). #FF0F80 i #800F80 nie odpowiadają wartościom 16 i 8. Poprawny zapis rgb(255, 16, 8) to #FF1008.

Pytanie 40

Aby zadeklarować pole klasy, do którego dostęp mają jedynie metody tej klasy, a które nie jest dostępne dla klas pochodnych, należy użyć kwalifikatora dostępu

A. prywatny
B. chroniony
C. publiczny
D. publikowany
Kluczem jest tu sformułowanie „dostęp mają jedynie metody tej klasy” oraz wykluczenie klas pochodnych. Modyfikator public robi dokładnie odwrotność - otwiera pole na cały program, więc odwoła się do niego każdy kod, łącznie z obcymi klasami; o żadnym ukryciu danych nie ma mowy. Kuszący bywa protected, bo faktycznie ogranicza dostęp, ale o jeden poziom za mało: pole chronione widzą metody tej klasy oraz wszystkich klas dziedziczących, a w pytaniu klasy pochodne mają być właśnie odcięte. „Publikowany” to z kolei pułapka - taki modyfikator dostępu nie występuje w popularnych językach obiektowych (Java, C#, C++, PHP), więc nie ma czego z nim porównywać. Pozostaje private, który zamyka pole w obrębie jednej klasy i jako jedyny spełnia oba warunki: dostęp tylko z metod tej klasy i brak dostępu dla potomków.