Przejdź do głównej treści
  1. Strona główna
  2. Wyniki egzaminu

Wyniki egzaminu

Nowy egzamin

Informacje o egzaminie

  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Rozpoczęcie: 9 września 2026 16:10
  • Zakończenie: 9 września 2026 16:20 

Egzamin niezdany

Wynik: 6/40 punktów (15,0%)

Wymagane minimum: 20 punktów (50%)

Twój wynik na tle innych

Twój wynik jest lepszy niż 11% podejść do kwalifikacji INF.03.

Porównanie z 40773 zakończonymi podejściami do tej kwalifikacji (dane zbiorcze, bez wyników indywidualnych).

Zachowaj ten wynik na koncie

Załóż darmowe konto albo zaloguj się - ten egzamin przypiszemy do Twojego konta, więc wrócisz do swoich błędów, będziesz śledzić postęp i dostaniesz powtórki dobrane do Twoich odpowiedzi.

Analiza przebiegu egzaminu - sprawdź jak rozwiązywałeś pytania Przebieg egzaminu

Analiza przebiegu egzaminu

Odtwarzaj przebieg egzaminu krok po kroku i ucz się na własnych błędach - kolejność rozwiązywania, czas nad każdym pytaniem, momenty zmiany odpowiedzi.

  • Suwak czasu - przeglądaj pytania w kolejności rozwiązywania.
  • Tryb nauki - poprawne odpowiedzi i wyjaśnienia.
  • Analiza czasu - ile czasu nad każdym pytaniem.
  • Monitoring focusu - momenty opuszczenia zakładki.

Udostępnij swój wynik

Szczegółowe wyniki

Pytanie 1

Jakie mechanizmy przydzielania zabezpieczeń, umożliwiające przeprowadzanie operacji na bazie danych, są powiązane z zagadnieniami dotyczącymi zarządzania kontami, użytkownikami oraz uprawnieniami?

A. Z regułamiTwoja odpowiedź
B. Z przywilejami obiektowymi
C. Z atrybutami
D. Z przywilejami systemowymiPoprawna odpowiedź
Niepoprawna odpowiedź. Uprawnienia związane z atrybutami i regułami mogą mylnie wydawać się odpowiednie w kontekście zarządzania dostępem, ale ich zrozumienie jest kluczowe, aby uniknąć błędnych wniosków. Atrybuty w kontekście systemów zarządzania bazami danych są często używane do definiowania cech obiektów, takich jak kolumny w tabelach, ale nie są bezpośrednio związane z mechanizmami nadawania uprawnień. Reguły, choć mogą być wykorzystywane do definiowania polityk bezpieczeństwa, nie są tym samym co przywileje systemowe. Przywileje obiektowe, z kolei, dotyczą dostępu do konkretnych obiektów w bazie danych, takich jak tabele czy widoki, a nie ogólnych uprawnień administracyjnych. Często występuje nieporozumienie, że wszystkie te mechanizmy są równoważne, co prowadzi do niewłaściwego stosowania uprawnień w systemach. Kluczowe jest zrozumienie, że przywileje systemowe są tymi, które kontrolują dostęp do całej struktury bazy danych, a nie tylko do jej poszczególnych elementów, co stanowi podstawę dla skutecznego zarządzania bezpieczeństwem w środowiskach IT. W praktyce niepoprawne przypisywanie uprawnień może prowadzić do nieautoryzowanego dostępu do danych, co jest sprzeczne z najlepszymi praktykami ochrony informacji.

Pytanie 2

Aby przekształcić obraz z formatu JPEG na PNG tak, by biały kolor stał się przezroczysty, należy w pierwszej kolejności:

A. zaimportować obraz do edytora grafiki wektorowejTwoja odpowiedź
B. zmniejszyć rozdzielczość obrazu
C. dodać do obrazu kanał alfaPoprawna odpowiedź
D. wymazać gumką wszystkie białe miejsca
Niepoprawna odpowiedź. Pozostałe czynności nie prowadzą do przezroczystości. Import do edytora grafiki wektorowej nie ma sensu - zdjęcie z JPEG jest rastrowe, a sama zmiana programu nie nada mu przezroczystych obszarów. Zmniejszenie rozdzielczości wpływa tylko na liczbę pikseli i jakość, nie na przezroczystość. Wycieranie gumką białych miejsc działa, dopiero gdy obraz ma już kanał alfa - inaczej zamiast przezroczystości pojawi się kolor tła. Aby biały kolor mógł stać się przezroczysty, najpierw trzeba dodać kanał alfa, dlatego to ta odpowiedź jest poprawna.

Pytanie 3

Tabele Osoby i Adresy są połączone relacją jeden do wielu. Które zapytanie SQL należy wykonać, aby korzystając z tej relacji, prawidłowo wyświetlić nazwiska oraz przyporządkowane im miasta?

Ilustracja do pytania
A. SELECT nazwisko, Miasto FROM Osoby, Adresy;
B. SELECT nazwisko, Miasto FROM Osoby JOIN Adresy ON Osoby.Adresy_id = Adresy.id;Poprawna odpowiedź
C. SELECT nazwisko, Miasto FROM Osoby, Adresy WHERE Osoby.id = Adresy.id;Twoja odpowiedź
D. SELECT nazwisko, Miasto FROM Osoby.Adresy_id = Adresy.id FROM Osoby, Adresy;
Niepoprawna odpowiedź. W tym zadaniu widać kilka typowych pułapek związanych z łączeniem tabel w SQL. Często spotyka się podejście, że wystarczy wypisać kilka tabel po przecinku w klauzuli FROM i baza danych sama się domyśli, jak je połączyć. Niestety tak to nie działa. Jeśli podamy FROM Osoby, Adresy bez żadnego warunku, otrzymamy tzw. iloczyn kartezjański. Oznacza to, że każda osoba zostanie połączona z każdym adresem, co w praktyce daje ogromny, kompletnie bezsensowny zestaw danych. To jest bardzo częsty błąd początkujących: zapytanie technicznie się wykonuje, ale wynik nie ma żadnego logicznego związku z modelem danych. Drugi problem to łączenie tabel po niewłaściwych kolumnach. Zdarza się założenie, że skoro obie tabele mają kolumnę id, to można je po prostu zrównać w warunku WHERE Osoby.id = Adresy.id. Jest to myślenie intuicyjne, ale błędne z punktu widzenia projektowania relacyjnego. Kolumna id w każdej tabeli jest zwykle osobnym kluczem głównym i nie ma powodu, żeby ich wartości się pokrywały. W poprawnym modelu relacji używa się klucza obcego, tutaj Osoby.Adresy_id, który jawnie wskazuje na Adresy.id. To właśnie te dwie kolumny należy ze sobą powiązać. Kolejna pułapka to mylenie składni JOIN z warunkiem łączenia. Fragment Osoby.Adresy_id = Adresy.id nie może znajdować się w miejscu, gdzie SQL oczekuje listy tabel po FROM albo słowa kluczowego JOIN. To jest wyrażenie logiczne, które powinno znaleźć się w klauzuli ON (w przypadku JOIN) lub w WHERE (w starszym stylu zapisu). Moim zdaniem ważne jest, żeby w głowie rozdzielić trzy elementy: najpierw wymieniamy tabele, które chcemy połączyć, potem określamy typ złączenia (JOIN, LEFT JOIN itd.), a dopiero na końcu definiujemy warunek powiązania ON klucz_obcy = klucz_główny. Jeśli pomieszamy te poziomy, wychodzą dziwne konstrukcje, które są po prostu niezgodne ze składnią SQL. Dobra praktyka branżowa jest taka, że używamy jawnych JOIN-ów z precyzyjnym warunkiem ON i zawsze sprawdzamy, czy łączymy po właściwych kolumnach wynikających z relacji w modelu danych.

Pytanie 4

Z uwagi na zaprezentowany styl CSS, plik rysunek.gif jest używany jako tło strony:

body {
    background-image: url("rysunek.gif");
    background-repeat: repeat-y;
}
A. w pionowym kierunkuPoprawna odpowiedź
B. w poziomym kierunku
C. zarówno w pionowym, jak i poziomym kierunku z kadrowaniemTwoja odpowiedź
D. zarówno w pionowym, jak i poziomym kierunku ze skalowaniem
Niepoprawna odpowiedź. Pierwsza nieprawidłowa koncepcja zakłada, że obraz tła może być powtarzany w poziomie, co nie jest zgodne z zastosowaną wartością `repeat-y`. Właściwość `background-repeat` z wartością `repeat-y` powoduje powtarzanie jedynie w osi pionowej, co wyklucza powtarzanie w poziomie. Kolejnym błędnym podejściem jest założenie, że obraz tła jest powtarzany jednocześnie w pionie i w poziomie z kadrowaniem. Kadrowanie, czyli dostosowanie wymiarów obrazu w tło, nie jest związane z ustawieniem `repeat-y`. To ustawienie kontroluje jedynie sposób powtarzania obrazu, a nie jego rozmiar czy kadrowanie. Ostatnia błędna odpowiedź zakłada, że występuje skalowanie tła zarówno w pionie, jak i poziomie. Skalowanie obrazu tła wymaga użycia `background-size`, a nie `background-repeat`. Jest to częsty błąd polegający na mieszaniu właściwości CSS, co może prowadzić do nieprzewidywalnych efektów wizualnych na stronie. Rozumienie rozróżnienia między powtarzaniem, skalowaniem a kadrowaniem obrazu tła jest kluczowe w projektowaniu nowoczesnych layoutów webowych.

Pytanie 5

Co oznacza termin „upload” danych?

A. pobieranie plików z serweraTwoja odpowiedź
B. opóźnienie w transmisji pliku
C. przesyłanie plików na serwerPoprawna odpowiedź
D. trasę transferu pliku
Niepoprawna odpowiedź. Pozostałe opisy dotyczą czego innego. POBIERANIE plików z serwera to „download” (kierunek odwrotny). „Trasa transferu” i „opóźnienie w transmisji” to pojęcia sieciowe niezwiązane z samym kierunkiem przesyłu. Wysyłanie plików na serwer to upload.

Pytanie 6

Tabela góry zawiera polskie pasma górskie wraz z ich szczytami - w kolumnie pasmo nazwę pasma, a w kolumnie wysokosc wysokość szczytu. Wskaż kwerendę liczącą dla każdego pasma górskiego średnią wysokość jego szczytów.

A. SELECT pasmo, AVG(wysokosc) FROM gory LIMIT pasmo;
B. SELECT pasmo, COUNT(wysokosc) FROM gory ORDER BY pasmo;Twoja odpowiedź
C. SELECT pasmo, SUM(wysokosc) FROM gory GROUP BY pasmo;
D. SELECT pasmo, AVG(wysokosc) FROM gory GROUP BY pasmo;Poprawna odpowiedź
Niepoprawna odpowiedź. Niestety, wybrana przez Ciebie odpowiedź jest błędna. Przyjrzyjmy się bliżej wszystkim niepoprawnym odpowiedziom. W odpowiedzi 'SELECT pasmo, AVG(wysokosc) FROM gory LIMIT pasmo;' użyto niepoprawnie klauzuli LIMIT. Klauzula LIMIT w SQL jest wykorzystywana do ograniczenia liczby zwracanych wierszy, a nie do grupowania wyników. W zapytaniu 'SELECT pasmo, COUNT(wysokosc) FROM gory ORDER BY pasmo;' użyto funkcji COUNT() zamiast AVG(). Funkcja COUNT() zlicza liczbę wartości, a nie oblicza ich średniej. Dodatkowo, zamiast grupowania wyników klauzulą GROUP BY, użyto klauzuli ORDER BY, która służy do sortowania wyników, a nie grupowania. Ostatnia błędna odpowiedź 'SELECT pasmo, SUM(wysokosc) FROM gory GROUP BY pasmo;' używa funkcji SUM() zamiast AVG(). Funkcja SUM() oblicza sumę wartości, a nie ich średnią. Klauzula GROUP BY jest poprawnie użyta do grupowania wyników. Pamiętaj, że wybór odpowiedniej funkcji agregującej i klauzuli jest kluczowy dla uzyskania prawidłowych wyników zapytania SQL.

Pytanie 7

Który element blokowy HTML5 jest przeznaczony na nawigację witryny?

A.
header
Twoja odpowiedź
B.
main
C.
nav
Poprawna odpowiedź
D.
aside
Niepoprawna odpowiedź. Pozostałe znaczniki semantyczne pełnią inne role w strukturze strony. <main> obejmuje GŁÓWNĄ, unikalną treść dokumentu. <aside> to treść POBOCZNA (np. panel boczny). <header> to nagłówek strony lub sekcji (logo, tytuł), choć może zawierać nawigację, sam w sobie jej nie oznacza. Blok nawigacji wydziela <nav>.

Pytanie 8

Które kolory tła zostały przypisane odpowiednio do akapitów o identyfikatorach 1, 2, 3, 4?

<p id="1" style="background-color:rgb(128,128,128);"> Akapit 1</p>
<p id="2" style="background-color:rgb(255,255,0);"> Akapit 2</p>
<p id="3" style="background-color:rgb(0,128,0);"> Akapit 3</p>
<p id="4" style="background-color:rgb(0,0,255);"> Akapit 4</p>
A. Szary, żółty, zielony, niebieski.Poprawna odpowiedź
B. Szary, niebieski, czerwony, żółty.Twoja odpowiedź
C. Żółty, zielony, czerwony, szary.
D. Żółty, czerwony, zielony, szary.
Niepoprawna odpowiedź. W tym zadaniu kluczowe jest poprawne odczytanie notacji RGB używanej w CSS, a nie zgadywanie koloru „na oko”. Model RGB opisuje kolor jako kombinację trzech składowych: czerwonej (R), zielonej (G) i niebieskiej (B), każda w zakresie od 0 do 255. Typowym błędem jest patrzenie tylko na jedną liczbę albo kojarzenie samej obecności składowej czerwonej z kolorem czerwonym, bez uwzględniania pozostałych kanałów. Na przykład zapis rgb(128,128,128) ma wszystkie trzy składowe jednakowe, więc nie może wyjść czysta czerwień, zieleń czy niebieski – zawsze otrzymamy jakiś odcień szarości. Jeżeli ktoś odczyta ten kolor jako żółty lub czerwony, to zwykle wynika to z braku nawyku analizowania wszystkich trzech wartości naraz. Podobnie rgb(255,255,0) często bywa mylone z czerwonym, bo widać tam 255 przy pierwszej składowej, ale kluczowe jest to, że druga też ma 255, a trzecia ma 0. Połączenie maksymalnej czerwieni i maksymalnej zieleni daje właśnie żółty, nie czerwony. Warto zapamiętać ten przykład, bo często pojawia się w zadaniach i w realnym CSS. Z kolei rgb(0,128,0) to wyłącznie składowa zielona o średniej intensywności, więc nie może to być ani żółty (brak czerwonego), ani szary (brak równych wartości we wszystkich kanałach). To po prostu ciemniejsza zieleń. Ostatni zapis rgb(0,0,255) jest chyba najprostszy: tylko kanał niebieski jest maksymalny, więc wynik to czysty niebieski. Pomieszanie tych kolorów w odpowiedziach zwykle wynika z intuicyjnego kojarzenia liczb bez zrozumienia, jak działa mieszanie barw w RGB. W pracy front-endowca dobrze jest wyrobić sobie nawyk czytania rgb() systematycznie: najpierw R, potem G, potem B, i analizowania, które kanały są wysokie, które niskie. To bardzo ułatwia zarówno debugowanie CSS, jak i świadome dobieranie kolorystyki interfejsu.

Pytanie 9

Na podstawie fragmentu dokumentu HTML, określ co należy wpisać w miejsce kropek w odnośniku w menu, aby przenosił on do rozdziału 2.

Fragment menu
<a ...>Rozdział 2</a>

Fragment dalej w dokumencie
<h1 id="r2" name="sekcja2" class="rozdzial2">Rozdział 2<h1>
A. href = "#sekcja2"
B. href = "#r2"Poprawna odpowiedź
C. href = "r2"Twoja odpowiedź
D. href = "sekcja2"
Niepoprawna odpowiedź. Niestety, Twoja odpowiedź nie jest prawidłowa. Prawidłowa odpowiedź 'href="#r2"' odwołuje się do identyfikatora (id) 'r2' na tej samej stronie. W HTML, atrybut 'href' w tagu 'a' służy do określenia miejsca docelowego odnośnika. Przed identyfikatorem umieszcza się znak '#', który informuje przeglądarkę, że ma poszukać elementu z danym 'id' na tej samej stronie. Błędy w niepoprawnych odpowiedziach wynikają z pominięcia znaku '#' lub zastosowania nieprawidłowego identyfikatora. Pamiętaj, że identyfikator powinien być unikalny dla każdego elementu na stronie i powinien być używany w odnośniku dokładnie w takiej samej formie. W przypadku 'href="r2"' i 'href="sekcja2"', pominięto znak '#', co sprawia, że przeglądarka będzie szukać zasobu o podanej ścieżce, a nie identyfikatora na tej samej stronie. 'href="#sekcja2"' zawiera niepoprawny identyfikator, który nie istnieje na stronie. Kluczowe jest zrozumienie, jak działają identyfikatory i jaki mają wpływ na nawigację na stronie.

Pytanie 10

Po wykonaniu fragmentu kodu HTML i JavaScript na stronie zostanie wyświetlony obraz z pliku

<img id="obraz" src="kol1.jpg">
<button id="przycisk">Przycisk</button>

<script>
    document.getElementById("obraz").src = "kol2.jpg";
</script>
A. kol2.jpgPoprawna odpowiedź
B. kol2.jpg, który może zostać zmieniony na kol1.jpg po wciśnięciu przycisku.Twoja odpowiedź
C. kol1.jpg
D. kol1.jpg, który może zostać zmieniony na kol2.jpg po wciśnięciu przycisku.
Niepoprawna odpowiedź. Niestety, nie trafiłeś. Wybierając 'kol1.jpg', mylisz się co do działania JavaScript w kontekście zmiany elementów na stronie. Skrypt używa getElementById, żeby znaleźć obraz o identyfikatorze 'obraz', a potem zmienia atrybut 'src' na 'kol2.jpg'. Tutaj nie ma żadnej interakcji z użytkownikiem, która mogłaby zmienić obrazek. W praktyce jednak, JavaScript daje nam możliwość dynamicznego modyfikowania elementów na stronie, co jest kluczowe przy tworzeniu takich interaktywnych stron. Na przykład, można wykorzystać tą samą metodę do zmiany obrazu, gdy ktoś na niego najedzie albo wciśnie przycisk. W tym przypadku jednak, to nie jest to, co się dzieje. Warto też zrozumieć, że 'kol1.jpg' to nie jest dobra odpowiedź, bo to obraz, który miałby być zmieniony, a nie ten, który się wyświetli.

Pytanie 11

Fragment kodu SQL wskazuje, że klucz obcy

Ilustracja do pytania
A. jest obecny w tabeli obiekty
B. stanowi odniesienie do siebie samego
C. wiąże się z kolumną imionaTwoja odpowiedź
D. jest ustawiony na kolumnie obiekty
Poprawna odpowiedź. W przedstawionym fragmencie kodu SQL klucz obcy (foreign key) służy do zapewnienia integralności referencyjnej między dwiema tabelami. W tym przypadku klucz obcy wskazuje, że pole imie w jednej tabeli jest powiązane z polem imiona w tabeli obiekty. Takie podejście pomaga w utrzymaniu spójności danych, ponieważ wymusza istnienie każdej wartości w polu imie w kolumnie imiona tabeli obiekty. W praktyce oznacza to, że nie można dodać wartości do pola imie, jeśli nie istnieje odpowiadająca wartość w kolumnie imiona. Klucze obce są kluczowym elementem w projektowaniu baz danych, wspierając normalizację i redukcję redundancji danych. Prawidłowe wykorzystanie kluczy obcych pozwala na efektywne zarządzanie relacjami pomiędzy danymi, co jest zgodne z najlepszymi praktykami w zakresie projektowania baz danych. Dodatkowo, prawidłowe stosowanie kluczy obcych przyczynia się do poprawy wydajności zapytań, ponieważ umożliwia optymalizację operacji łączenia danych. To podejście jest zgodne ze standardami SQL, a jego zastosowanie jest powszechne w różnych systemach zarządzania bazami danych jak MySQL, PostgreSQL czy Oracle.

Pytanie 12

Polecenie MySQL pokazane poniżej spowoduje, że użytkownikowi tkowal zostaną odebrane określone uprawnienia:

REVOKE DELETE, UPDATE ON pracownicy FROM 'tkowal'@'localhost';
A. odebrane uprawnienia do usuwania i modyfikacji danych w tabeli pracownicyPoprawna odpowiedź
B. przydzielone uprawnienia do wszelkich zmian struktury tabeli pracownicy
C. odebrane uprawnienia do usuwania i dodawania rekordów w tabeli pracownicy
D. przydzielone uprawnienia do usuwania oraz aktualizacji danych w tabeli pracownicyTwoja odpowiedź
Niepoprawna odpowiedź. W kontekście zarządzania uprawnieniami w MySQL istotne jest zrozumienie różnicy między przydzielaniem a odbieraniem praw dostępu. Polecenie REVOKE nie przydziela uprawnień lecz je odbiera co jest kluczowym aspektem w zarządzaniu bezpieczeństwem bazy danych. Przydzielanie uprawnień odbywa się za pomocą polecenia GRANT które umożliwia nadanie użytkownikowi określonych praw dostępu do tabeli lub innych obiektów bazy danych. Zrozumienie tego rozróżnienia jest fundamentalne ponieważ wpływa ono na sposób w jaki zarządzamy dostępem użytkowników do wrażliwych danych. W niektórych przypadkach można błędnie założyć że REVOKE dotyczy struktury tabeli co jest mylnym podejściem ponieważ takie działania związane są z prawami DDL a nie DML. Dlatego pomyłka w interpretacji tego polecenia może prowadzić do niezamierzonych konsekwencji takich jak niekontrolowane modyfikacje danych. Typowym błędem jest także przypuszczenie że REVOKE może być używane do przydzielania praw co pokazuje brak zrozumienia podstawowych mechanizmów kontroli dostępu w MySQL. Zarządzanie dostępem jest kluczowe w zapewnieniu integralności i poufności danych dlatego ważne jest aby jasno rozróżniać między przydzielaniem i odbieraniem uprawnień.

Pytanie 13

W ramce przedstawiono kod JavaScript z błędem logicznym. Program powinien wypisywać informację, czy liczby są sobie równe czy nie, lecz nie wykonuje tego. Wskaż odpowiedź, która dotyczy błędu.

var x = 5;
var y = 3;
if (x = y)     document.getElementById("demo").innerHTML = 'zmienne są równe';
else         document.getElementById("demo").innerHTML = 'zmienne się różnią';
A. Instrukcje wewnątrz sekcji if oraz else powinny być zamienione miejscami.
B. W klauzuli if występuje przypisanie zamiast porównania.Twoja odpowiedź
C. Przed klauzulą else nie powinno być średnika.
D. Nieprawidłowo zadeklarowano zmienne.
Poprawna odpowiedź. Gratulacje! Poprawnie zauważyłeś, że w klauzuli if występuje przypisanie zamiast porównania. W JavaScript, operatorem przypisania jest pojedynczy znak równości (=), natomiast operatorem porównania jest podwójny (==) lub potrójny znak równości (===). W przypadku prezentowanego kodu, zamiast porównać wartości zmiennych x i y, wartość zmiennej y jest przypisywana do zmiennej x, co prowadzi do błędu logicznego. Jest to typowy błąd, który często występuje, szczególnie u początkujących programistów. W praktyce, aby nie pomylić operatorów, warto zawsze umieszczać wartość stałą po lewej stronie operatora porównania - wtedy próba przypisania wartości stałej zwróci błąd kompilacji. Dodatkowo, niektóre narzędzia do analizy statycznej kodu, takie jak ESLint, mogą pomóc w wykrywaniu tego typu błędów.

Pytanie 14

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

A. aside {float: left; }
B. nav { float: right; } section { float: right; }Poprawna odpowiedź
C. nav { float: left; } aside { float: left; }Twoja odpowiedź
D. nav { float: right; }
Niepoprawna odpowiedź. W tym zadaniu kluczowe jest zrozumienie, jak naprawdę działa float, a nie tylko samo skojarzenie, że „left to lewo, right to prawo”. Wiele osób myśli, że wystarczy ustawić jeden element na lewo, drugi na prawo i wszystko magicznie się poukłada. W praktyce przeglądarka trzyma się bardzo konkretnych reguł: najpierw liczy kolejność elementów w HTML, potem dopiero stosuje float i układa je możliwie jak najwyżej i jak najbliżej odpowiedniej krawędzi.

Jeśli nada się float tylko dla aside albo tylko dla nav, to zmienia się ich pozycja, ale układ trzech bloków nie spełni warunku z zadania: aside i nav nie zamienią się miejscami z pozostawieniem section w środku. Przykładowo, samo float: left na aside niczego nie „zamieni”, bo element i tak pojawia się jako pierwszy w kodzie, więc będzie u góry, tylko że „przyklejony” do lewej. Z kolei ustawienie nav na prawą stronę bez odpowiedniego floatowania section prowadzi do sytuacji, gdzie section nadal zachowuje się jak normalny blok, zwykle ląduje pod elementami pływającymi albo obok nich w sposób mało przewidywalny dla początkującego.

Częsty błąd myślowy polega też na tym, że ktoś próbuje wszystkim elementom dać float: left, licząc na to, że przeglądarka „ułoży je po swojemu”. Wtedy jednak wszystkie te bloki ustawiają się w jednym kierunku, w kolejności z HTML, więc nie ma mowy o świadomym „zamienianiu miejsc”. Brak zrozumienia, że float wyjmuje element z normalnego przepływu i wpływa na to, jak kolejne elementy zawijają się wokół niego, prowadzi właśnie do takich błędnych odpowiedzi. Z mojego doświadczenia lepiej jest najpierw narysować sobie prosty schemat: w jakiej kolejności idą znaczniki i które z nich mają pływać w prawo, a które zostać w naturalnym układzie. Dopiero wtedy dobiera się konkretne deklaracje CSS. Takie myślenie przydaje się nie tylko przy float, ale też przy nauce flexboxa czy grida, gdzie kolejność w DOM i własności układu też grają ogromną rolę.

Pytanie 15

Kod JavaScript aktywowany przez kliknięcie przycisku ma na celu

<img id="i1" src="obraz1.gif">
<button onclick="document.getElementById('i1').src='obraz2.gif'">
test</button>
A. zmienić styl obrazu o id i1
B. zamienić obraz1.gif na obraz2.gifPoprawna odpowiedź
C. ukryć obraz2.gifTwoja odpowiedź
D. pokazać obraz2.gif obok obraz1.gif
Niepoprawna odpowiedź. Wybór odpowiedzi, która sugeruje ukrycie obraz2.gif, jest niepoprawny, ponieważ kod nie ma na celu ukrywania żadnego obrazu, lecz zmienia źródło istniejącego elementu <img>. Ukrycie obrazu wymagałoby zastosowania stylów CSS lub manipulacji atrybutem 'style', co nie znajduje zastosowania w tym przypadku. Odpowiedź mówiąca o zmianie stylu obrazu o id i1 również jest błędna, ponieważ w opisie nie możemy zauważyć żadnej operacji związanej z modyfikacją stylów elementu, a jedynie z jego źródłem. Z kolei wyświetlenie obraz2.gif obok obraz1.gif sugerowałoby dodanie nowego elementu <img> do DOM, co jest sprzeczne z tym, co przedstawia kod. W tym przypadku operacja polega na bezpośredniej zamianie jednego źródła na drugie, co jest powszechnie stosowaną praktyką w programowaniu interakcji w JavaScript. Kluczową koncepcją, którą należy zrozumieć, jest to, że manipulacje DOM są często używane do wprowadzania zmian w przedstawieniu treści na stronie w odpowiedzi na działania użytkownika. Dlatego, przekonanie, że zmiany stylów lub dodanie nowych elementów są równoważne z operacją zamiany źródeł obrazów, prowadzi do mylnych wniosków, które mogą skutkować nieefektywnym lub błędnym kodowaniem w przyszłości.

Pytanie 16

Która zasada użycia semantycznych znaczników HTML5 jest PRAWDZIWA?

A. <nav> jest charakterystyczny dla <article>
B. <main> może wystąpić tylko RAZ w dokumencieTwoja odpowiedź
C. <aside> służy do GŁÓWNEJ treści strony
D. <footer> powinien być na górze, a <header> na dole
Poprawna odpowiedź. Znacznik <main> obejmuje GŁÓWNĄ, unikalną treść strony, dlatego może wystąpić w dokumencie tylko RAZ. Dlatego prawdziwa jest ta zasada.

Pytanie 17

W obiektowym programowaniu w języku JavaScript zapis: this.zawod w podanym kodzie oznacza

function Uczen(){
  this.imie = '';
  this.nazwisko = '';
  this.technik = 'informatyk';
  this.zawod = function() {
    return this.technik;
  };
}
A. klasęTwoja odpowiedź
B. konstruktor
C. metodęPoprawna odpowiedź
D. właściwość
Niepoprawna odpowiedź. Podejście, że this.zawod oznacza właściwość jest błędne, ponieważ w programowaniu obiektowym właściwością określamy element obiektu, który przechowuje dane. W przedstawionym kodzie this.zawod jest przypisany do funkcji, która jest metodą umożliwiającą wykonywanie operacji, a nie przechowywanie danych. Klasa w JavaScript, choć wprowadza nowe podejście do definiowania obiektów, jest konceptem wyższego poziomu i nie jest bezpośrednio związana z definicją metod za pomocą funkcji. W analizowanym kodzie użyto funkcji konstrukcyjnej, a nie klasy zdefiniowanej za pomocą słowa kluczowego class. Konstruktor w kontekście programowania obiektowego odnosi się do specjalnej funkcji, która inicjalizuje nowo utworzone obiekty, definiując ich właściwości i metody. W powyższym przykładzie funkcja Uczen pełni rolę konstruktora, lecz sam zapis this.zawod nie jest konstruktorem, gdyż nie służy do tworzenia instancji obiektów, lecz do definiowania ich zachowania. Rozróżnienie między metodą, właściwością, klasą i konstruktorem jest kluczowe dla zrozumienia struktury i działania obiektów w JavaScript. Typowe błędy myślowe wynikają z nieodróżniania tych pojęć i nieznajomości kontekstu, w jakim słowo this jest używane, które w JavaScript może odnosić się do różnych obiektów w zależności od miejsca wywołania i sposobu, w jaki funkcja została zdefiniowana lub wywołana. Zrozumienie tych pojęć jest fundamentalne dla efektywnego programowania obiektowego w JavaScript, co pozwala unikać błędów i pisać bardziej przejrzysty i efektywny kod

Pytanie 18

Aby podczas tworzenia tabeli zdefiniować klucz obcy na wielu kolumnach, należy użyć zapisu:

A.
CONSTRAINT (nazwisko, imie) FOREIGN KEY REFERENCES osoby (nazwisko, imie)
Twoja odpowiedź
B.
CONSTRAINT (nazwisko, imie) FOREIGN REFERENCES KEY osoby (nazwisko, imie)
C.
CONSTRAINT fk_osoba_uczen FOREIGN KEY(nazwisko, imie) REFERENCES osoby (nazwisko, imie)
Poprawna odpowiedź
D.
CONSTRAINT fk_osoba_uczen FOREIGN KEY ON(nazwisko, imie) REFERENCES osoby (nazwisko, imie)
Niepoprawna odpowiedź. Pozostałe zapisy łamią składnię definicji klucza obcego. W dwóch brakuje listy kolumn zaraz po FOREIGN KEY albo przestawiono słowa kluczowe (FOREIGN REFERENCES KEY zamiast FOREIGN KEY ... REFERENCES) - serwer odrzuci je jako błąd. W jeszcze innym po FOREIGN KEY dopisano zbędne ON, którego w tej konstrukcji nie ma. Prawidłowy wielokolumnowy klucz obcy to CONSTRAINT nazwa FOREIGN KEY(kolumny) REFERENCES tabela(kolumny), dlatego to ten zapis jest poprawny.

Pytanie 19

Którego polecenia SQL użyć, aby utworzyć tabelę?

A.
INSERT TABLE
B.
CREATE TABLE
Poprawna odpowiedź
C.
ADD TABLE
Twoja odpowiedź
D.
ALTER TABLE
Niepoprawna odpowiedź. Trzeba odróżnić tworzenie od innych operacji. ADD TABLE i INSERT TABLE to konstrukcje nieistniejące (INSERT wstawia WIERSZE). ALTER TABLE MODYFIKUJE istniejącą tabelę, a nie tworzy nowej. Nową tabelę tworzy CREATE TABLE.

Pytanie 20

Po wykonaniu poniższego kodu JavaScript, co będzie przechowywać zmienna str2?

var str1 = "JavaScript";
var str2 = str1.substring(2,6);
A. vaScri
B. vaScPoprawna odpowiedź
C. nvaScrTwoja odpowiedź
D. avaS
Niepoprawna odpowiedź. W przypadku analizy kodu JavaScript kluczowym aspektem jest zrozumienie działania metody substring która służy do wyodrębniania fragmentów łańcuchów znaków. Metoda przyjmuje dwa parametry: indeks początkowy oraz opcjonalny indeks końcowy. W kontekście pytania błędnym podejściem jest niedokładna interpretacja tych indeksów. Pierwsza niepoprawna odpowiedź avaS zakłada że wyodrębniane są znaki od 0 do 3 co jest niezgodne z podanymi indeksami 2 i 6. Druga odpowiedź vaScri zakłada że metoda substring obejmuje znaki aż do indeksu 6 włącznie co jest błędnym zrozumieniem zakresu działania tej metody. Metoda substring kończy wybieranie na znaku poprzedzającym indeks końcowy dlatego indeks 6 nie jest uwzględniany przy wyborze znaków. Kolejna niepoprawna odpowiedź nvaScr próbuje wybrać znaki rozpoczynając od indeksu 1 co jest błędnym startowym punktem dla zakresu 2 do 6. W kontekście dobrych praktyk programistycznych istotnym jest zrozumienie że indeksowanie od zera ma wpływ na rezultaty metod operujących na łańcuchach znaków. Częstym błędem początkujących programistów jest nieuwzględnienie tego faktu co prowadzi do niepoprawnych wyników i błędów logicznych w aplikacjach. Znajomość tych zasad pozwala efektywnie wykorzystywać możliwości języka JavaScript w codziennej pracy programistycznej.

Pytanie 21

W języku JavaScript rezultat wykonania polecenia

zmienna1 -= 1;
będzie tożsamy z wynikiem polecenia
A. zmienna1 = zmienna1 - 0;
B. zmienna1--;Poprawna odpowiedź
C. zmienna1++;Twoja odpowiedź
D. zmienna1 === zmienna1 - 1;
Niepoprawna odpowiedź. Istnieje wiele koncepcji, które mogą prowadzić do błędnych wniosków dotyczących działania przypisania i operatorów w JavaScript. Zaczynając od zmienna1++, jest to operator inkrementacji, który zwiększa wartość zmiennej o jeden, a nie ją zmniejsza. W związku z tym, ta odpowiedź jest zasadniczo błędna, ponieważ zmienia wartość w przeciwnym kierunku. Kolejna odpowiedź, zmienna1 === zmienna1 - 1;, wyraża porównanie logiczne, które sprawdza, czy zmienna1 jest równa zmiennej zmniejszonej o jeden. Nie jest to tożsame z wykonaniem dekrementacji i wprowadza dodatkowe zamieszanie, gdyż nie zmienia wartości zmiennej, a jedynie zwraca wartość logiczną (true lub false). Natomiast zmienna1 = zmienna1 - 0; jest także błędna, gdyż ta instrukcja nie wpływa na wartość zmiennej, jedynie przypisuje jej tę samą wartość, co również nie jest zgodne z celem dekrementacji. Takie nieporozumienia mogą wynikać z braku znajomości podstawowych operatorów i ich zastosowania, co jest kluczowe w programowaniu. Ważne jest, aby zrozumieć, że operatorzy wpływają na zmiany wartości, a nie tylko na ich porównania. Warto także pamiętać, że efektywne pisanie kodu powinno opierać się na zrozumieniu działania operatorów, co przyczyni się do tworzenia kodu, który jest zarówno funkcjonalny, jak i łatwy do zrozumienia w kontekście współpracy w zespole programistycznym.

Pytanie 22

Wartość kolumny w tabeli, która działa jako klucz podstawowy

A. jest zawsze w formacie numerycznym
B. jest wykorzystywana do szyfrowania treści tabeliTwoja odpowiedź
C. może mieć wartość pustą (NULL)
D. musi być unikalnaPoprawna odpowiedź
Niepoprawna odpowiedź. Istnieje wiele nieporozumień związanych z koncepcją klucza podstawowego w bazach danych. Po pierwsze, stwierdzenie, że klucz podstawowy zawsze musi być numeryczny, jest błędne. Klucze podstawowe mogą być zdefiniowane na podstawie różnych typów danych, takich jak tekst, daty czy inne formaty, pod warunkiem, że wartości te są unikalne. W rzeczywistości, wiele systemów zarządzania bazami danych (DBMS) wspiera klucze podstawowe oparte na typach tekstowych, na przykład numery identyfikacyjne użytkowników mogą być reprezentowane jako ciągi znaków. Kolejnym błędnym założeniem jest, że klucz podstawowy może przyjmować wartość pustą (NULL). W kontekście relacyjnych baz danych, klucz podstawowy nie może mieć wartości NULL, ponieważ jego podstawową funkcją jest jednoznaczna identyfikacja rekordów, a wartość pusta uniemożliwia taką identyfikację. Szyfrowanie zawartości tabeli przez klucz podstawowy również jest mylącym podejściem; klucz podstawowy nie służy do zabezpieczania danych, lecz do ich identyfikacji. W praktyce, aby zapewnić bezpieczeństwo danych, stosuje się inne metody, takie jak szyfrowanie danych w polach tabeli, a nie na poziomie klucza podstawowego. Takie nieporozumienia mogą prowadzić do poważnych błędów w projektowaniu baz danych oraz w ich późniejszym użytkowaniu, dlatego kluczowe jest zrozumienie podstawowych zasad funkcjonowania kluczy w kontekście relacyjnych baz danych.

Pytanie 23

Którego języka skryptowego użyć do aplikacji WWW zagnieżdżonych w HTML i uruchamianych po stronie SERWERA?

A. PHPPoprawna odpowiedź
B. C#
C. JavaScriptTwoja odpowiedź
D. Perl
Niepoprawna odpowiedź. Pozostałe języki nie pasują do opisu. JavaScript działa po stronie KLIENTA (w przeglądarce), nie serwera. C# stosuje się w ASP.NET, ale nie zagnieżdża w HTML w sposób typowy dla PHP. Perl bywa serwerowy (CGI), lecz nie osadza się go w HTML tak naturalnie. Aplikacje WWW zagnieżdżone w HTML i wykonywane na serwerze pisze się w PHP.

Pytanie 24

Dane są zapisy w tabeli uczniowie, które zostały przedstawione na rysunku. Jaki będzie rezultat wykonania podanego zapytania SQL?

Ilustracja do pytania
A. Wartość 3.5Poprawna odpowiedź
B. Liczba wierszy równa 4Twoja odpowiedź
C. Suma ocen równa 14
D. Dane 4, 3, 4, 3
Niepoprawna odpowiedź. W kontekście przedstawionego zapytania SQL błędne jest oczekiwanie że wynikiem będzie dane 4 3 4 3 lub suma ocen równa 14. Wynika to z faktu że funkcja AVG() służy do obliczania średniej a nie zwracania poszczególnych wartości ani ich sumy. Często spotykanym błędem jest mylenie funkcji agregujących takich jak AVG() SUM() COUNT() z prostym wyborem danych. Funkcje agregujące przetwarzają dane aby dostarczyć zagregowany wynik zamiast zwracać pojedyncze rekordy. Zapytanie SELECT AVG(ocena) jest skonstruowane aby obliczyć średnią wartość kolumny ocena przez co nie zwraca pełnego zestawu danych ani ich sumy. Co więcej liczba wierszy równa 4 sugerowałaby użycie funkcji COUNT() która zlicza liczbę rekordów. Zrozumienie różnic między tymi funkcjami jest kluczowe w analizie danych i konstruowaniu zapytań SQL. SQL oferuje różne sposoby manipulacji i analizy danych a skuteczne korzystanie z tych narzędzi wymaga jasnego zrozumienia ich funkcji i zastosowań. Tylko przez właściwe zrozumienie celu każdej funkcji można poprawnie interpretować i analizować dane w kontekście rzeczywistych scenariuszy biznesowych i technicznych.

Pytanie 25

Aby umieścić aplikację PHP w sieci, należy przesłać jej pliki źródłowe na serwer przy użyciu protokołu

A. HTTP
B. FTPPoprawna odpowiedź
C. SMTPTwoja odpowiedź
D. NNTP
Niepoprawna odpowiedź. Inne odpowiedzi, które zaznaczyłeś, nie są do końca trafione. Protokół NNTP, czyli Network News Transfer Protocol, służy do przesyłania wiadomości w grupach dyskusyjnych, a to nie ma nic wspólnego z przenoszeniem plików. Z kolei SMTP, czyli Simple Mail Transfer Protocol, jest do wysyłania e-maili – znowu nie to, czego potrzebujemy przy aplikacjach. HTTP, chociaż jest super istotnym protokołem w sieci, to nie ma zaplecza do publikowania plików na serwerze. To raczej do przesyłania danych między przeglądarkami a serwerami. Wiesz, typowym błędem wielu osób jest mylenie tych protokołów i ich zastosowania. Dlatego ważne, żeby zrozumieć, jak to wszystko działa i do czego się nadaje. W praktyce zawsze najlepiej stawiać na FTP lub jego bezpieczniejsze wersje, żeby dobrze ogarnąć pliki aplikacji na serwerze.

Pytanie 26

W przedstawionej regule CSS

h1 {color : blue}
h1 reprezentuje
A. deklarację
B. wartość
C. klasęTwoja odpowiedź
D. selektorPoprawna odpowiedź
Niepoprawna odpowiedź. Wybierając błędną odpowiedź odnośnie reguły CSS `h1 {color: blue}`, można zauważyć, że czasami nie rozumiemy dobrze podstawowych terminów w CSS. Deklaracja to nie tylko selektor, ale wszystkie właściwości i wartości, które zmieniają dany element. Przykład `blue` to tylko kolor, nie jest selektorem. Klasa to inny rodzaj selektora, który zaczyna się od kropki i pozwala stylizować wiele elementów naraz, a nie tylko pojedyncze tagi HTML. Problemem często jest mylenie tych pojęć i nieznajomość ich definicji w CSS. Musisz wiedzieć, że selektory wskazują, do jakich elementów stosujemy style, a inne rzeczy, jak klasy czy różne wartości, mają inne zadania. Lepiej zrozumieć te różnice, bo to podstawa, żeby efektywnie pracować z CSS i tworzyć strony www. Fajnie byłoby także poczytać dokumentację CSS, żeby lepiej poznać różne selektory i ich zastosowanie w stylizacji.

Pytanie 27

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

wynik = 0;
for (i = 0; i < tab.length; i++) {
wynik += tab[i];
}
A. policzenie sumy wszystkich elementów tablicyPoprawna odpowiedź
B. wprowadzenie do każdego elementu tablicy bieżącej wartości zmiennej i
C. dodanie stałej wartości do każdego elementu tablicyTwoja odpowiedź
D. wyświetlenie wszystkich elementów tablicy
Niepoprawna odpowiedź. Rozważając różne odpowiedzi, można dostrzec pewne błędne założenia dotyczące funkcji pętli w analizowanym kodzie JavaScript. Pierwsza z opcji zakłada, że celem kodu jest wyświetlenie wszystkich elementów tablicy. W rzeczywistości jednak kod nie zawiera żadnych instrukcji, takich jak console.log(), które pozwoliłyby na wyświetlanie wartości elementów tablicy. To powszechny błąd polegający na myleniu iteracji pętli z operacjami wejścia/wyjścia. Kolejna możliwość sugeruje dodanie do każdego elementu tablicy stałej wartości. Aby osiągnąć taki efekt, kod musiałby bezpośrednio modyfikować wartości w tablicy, co wymagałoby przypisania nowych wartości do elementów tablicy. W przedstawionym kodzie nie ma jednak żadnej manipulacji wartościami tablicy, co wskazuje na niewłaściwe zrozumienie celu operacji wykonywanych na tablicach. Ostatnia możliwość zakłada, że każdemu elementowi tablicy przypisywana jest aktualna wartość zmiennej i. Taki efekt wymagałby przypisania wartości i do elementów tablicy, co nie ma miejsca w przedstawionym fragmencie kodu. Jest to często spotykany błąd polegający na myleniu indeksu pętli z operacjami przypisania. Każda z tych odpowiedzi opiera się na niepoprawnym zrozumieniu mechanizmów iteracji i operacji na tablicach w językach programowania takich jak JavaScript co może prowadzić do błędnych wniosków dotyczących działania kodu.

Pytanie 28

Wskaż poprawne stwierdzenie dotyczące poniższej definicji stylu:

<style>
<!--
P{color:blue; font-size:14pt; font-style:italic}
A{font-size: 16pt ; text-transform:lowercase;}
TD.niebieski {color: blue}
TD.czerwony {color: red}
-->
</style>
A. Określono dwie kategoriePoprawna odpowiedź
B. Odnośnik będzie napisany czcionką 14 punktówTwoja odpowiedź
C. Akapit będzie konwertowany na małe litery
D. To jest styl lokalny
Niepoprawna odpowiedź. Styl lokalny to takie style, które dodaje się bezpośrednio w plikach HTML, często w tagu style lub jako atrybut style w elementach HTML. W tym przypadku mamy do czynienia z osobnym blokiem CSS, więc nie jest to styl lokalny. Co do rozmiaru czcionki linku, to stwierdzenie, że ma 14 punktów, jest błędne. W kodzie CSS widzimy, że rozmiar czcionki dla elementu P to 14 punktów, ale dla elementu A jest ustawiony na 16 punktów. Często takie nieporozumienia wynikają z tego, że nie analizuje się dokładnie kodu źródłowego albo myli się różne selektory. Odnośnie transponowania akapitu na małe litery, to też nie jest poprawne, bo właściwość text-transform: lowercase dotyczy odnośników, nie akapitów. W nauce o CSS ważne jest, żeby dobrze rozumieć zasady działania i umieć rozróżniać, które selektory i właściwości stosują się do konkretnych elementów HTML. To wymaga praktyki i dokładnej analizy kodu. Zrozumienie tych rzeczy jest kluczowe w pracy nad stronami internetowymi, bo pozwala na efektywne zarządzanie stylami. Dobrze stosowane style to podstawa dla każdego, kto zajmuje się tworzeniem i utrzymywaniem stron, żeby wszystko wyglądało spójnie i działało jak trzeba.

Pytanie 29

Które typy danych w języku C++ służą do reprezentacji liczb zmiennoprzecinkowych (rzeczywistych)?

A. float, long
B. double, short
C. double, bool
D. float, doubleTwoja odpowiedź
Poprawna odpowiedź. Liczby zmiennoprzecinkowe (rzeczywiste) reprezentują w C++ typy float i double, przy czym double oferuje większą precyzję (podwójną). Dlatego to one przechowują wartości z częścią ułamkową.

Pytanie 30

Jak nazywa się powiązanie między dwoma zbiorami encji na diagramie ER?

A. dziedzinąTwoja odpowiedź
B. atrybutem
C. krotką
D. związkiemPoprawna odpowiedź
Niepoprawna odpowiedź. Pozostałe pojęcia dotyczą czego innego. Krotka to pojedynczy wiersz (egzemplarz encji). Dziedzina to zbiór dopuszczalnych wartości atrybutu. Atrybut to cecha encji (kolumna). Powiązanie między zbiorami encji to związek.

Pytanie 31

Prostokątne zniekształcenia obrazu, które występują przy zapisie pliku graficznego, są typowe dla formatu

Ilustracja do pytania
A. GIF z kompresją bezstratną LZWTwoja odpowiedź
B. JPEG z dużym stopniem kompresji stratnejPoprawna odpowiedź
C. BMP bez kompresji
D. PNG z kompresją bezstratną LZ77
Niepoprawna odpowiedź. BMP jest formatem, który przechowuje obrazy bez kompresji, co oznacza, że każdy piksel jest zapisywany indywidualnie. Zapewnia to wysoką jakość obrazu bez zniekształceń wynikających z kompresji, ale skutkuje bardzo dużymi rozmiarami plików. BMP jest zatem nieefektywny w kontekście przechowywania i przesyłania dużych ilości danych graficznych. Format GIF natomiast używa kompresji bezstratnej LZW, która pozwala zachować pełną integralność danych graficznych. GIF jest ograniczony do 256 kolorów, co czyni go nieodpowiednim dla złożonych obrazów fotograficznych, a sam format nie generuje prostokątnych zniekształceń widocznych w obrazie. PNG, podobnie jak GIF, korzysta z kompresji bezstratnej, w tym przypadku LZ77, i jest często wykorzystywany do grafik internetowych ze względu na wsparcie dla przezroczystości i szerokiej gamy kolorystycznej. PNG, dzięki zachowaniu pełnych danych, nie wykazuje charakterystycznych dla JPEG efektów zniekształcenia blokowego. Częstym błędem jest zakładanie, że wszystkie formaty kompresji wpływają na jakość obrazu w ten sam sposób, podczas gdy różne algorytmy mają swoje unikalne właściwości i zastosowania. Wybór formatu powinien być oparty na konkretnych potrzebach i zastosowaniach, z uwzględnieniem kompromisu między jakością, a rozmiarem pliku, co ma kluczowe znaczenie w różnych branżach zajmujących się grafiką i fotografią cyfrową.

Pytanie 32

CMYK to kombinacja czterech podstawowych kolorów stosowanych w druku:

A. turkusowego, błękitnego, białego, różowego
B. turkusowego, purpurowego, żółtego, czarnegoPoprawna odpowiedź
C. turkusowego, purpurowego, białego, czarnegoTwoja odpowiedź
D. czerwonego, purpurowego, żółtego, szarego
Niepoprawna odpowiedź. Wszystkie podane odpowiedzi zawierające inne kolory niż cyjan, magenta, żółty i czarny są niepoprawne, ponieważ nie odnoszą się do uznawanego modelu kolorów CMYK. Na przykład, zestaw kolorów turkusowy, błękitny, biały, różowy nie zawiera kluczowych składników, które definiują CMYK. Błękit, choć podobny do cyjanu, nie jest uznawany za jego zamiennik w kontekście druku. Ponadto, biały kolor nie jest używany w modelu CMYK, ponieważ jest reprezentowany jako brak pigmentu, a nie jako osobny kolor. Kolejny przykład - czerwony, purpurowy, żółty i szary - również nie oddaje prawdziwego modelu CMYK, ponieważ czerwony nie jest jednym z kolorów podstawowych w tym systemie. Zamiast tego, w modelu CMYK używa się magenty, która jest intensywnym odcieniem różowoczerwonym. Warto zauważyć, że niektóre osoby mogą mylić różowe odcienie z magentą, co prowadzi do błędów w projektowaniu, szczególnie w kontekście druku. Również zestaw kolorów turkusowy, purpurowy, białe i czarny nie oddaje zasadności stosowania czarnego jako 'kluczowego' koloru w modelu CMYK. Często w druku czarny jest dodawany, aby zwiększyć głębokość i kontrast kolorów. W zrozumieniu tych zasad kluczowe jest odniesienie się do praktyk druku oraz standardów branżowych, które jasno określają, jak kolory powinny być łączone i drukowane. Dlatego zrozumienie podstawowych kolorów w modelu CMYK ma fundamentalne znaczenie dla każdego, kto zajmuje się grafiką i drukiem.

Pytanie 33

Jakie polecenie pozwala na kontrolowanie oraz optymalizację bazy danych?

A. mysqlimport
B. mysqlcheckPoprawna odpowiedź
C. mysqldump
D. mysqlshowTwoja odpowiedź
Niepoprawna odpowiedź. Odpowiedzi takie jak 'mysqlshow', 'mysqldump' i 'mysqlimport' są mylące, ponieważ nie pełnią roli narzędzi do sprawdzania i optymalizacji bazy danych. Narzędzie mysqlshow służy jedynie do wyświetlania informacji o bazach danych i tabelach, co może być użyteczne do monitorowania istniejących struktur, ale nie wpływa na ich integralność ani wydajność. Z kolei mysqldump jest wykorzystywane do tworzenia zrzutów danych z bazy, co jest kluczowe dla backupów, ale nie ma żadnych funkcji związanych z optymalizacją czy konserwacją. Wreszcie, mysqlimport jest narzędziem do importowania danych z plików zewnętrznych do bazy danych, a więc również nie odnosi się do kwestii sprawdzania czy optymalizacji. Wybierając te odpowiedzi, można dojść do błędnych wniosków, sądząc, że jedno narzędzie może pełnić wiele funkcji, podczas gdy każde z wymienionych narzędzi ma swoje specyficzne zadania. Zrozumienie różnicy między tymi narzędziami jest kluczowe dla efektywnego zarządzania bazami danych oraz stosowania najlepszych praktyk w ich administracji.

Pytanie 34

Na czym polega operacja selekcji w algebrze relacji?

A. na wyborze krotek spełniających określone warunkiPoprawna odpowiedź
B. na usunięciu krotek z powtarzającymi się polamiTwoja odpowiedź
C. na usunięciu pustych wierszy
D. na wyborze krotek bez wartości NULL
Niepoprawna odpowiedź. Pozostałe opisy mylą selekcję z innymi operacjami. Usuwanie pustych wierszy lub krotek z NULL oraz eliminacja duplikatów to osobne czynności (ta ostatnia przypomina DISTINCT). Selekcja wybiera wiersze według warunku, podczas gdy wybór kolumn to projekcja.

Pytanie 35

Do czego stosuje się zapytanie z klauzulą JOIN?

A. do zdefiniowania klucza obcego
B. do wywołania funkcji agregującejTwoja odpowiedź
C. do uzyskania danych z dwóch powiązanych tabelPoprawna odpowiedź
D. do uzyskania wyniku z jednej tabeli
Niepoprawna odpowiedź.JOIN nie definiuje klucza obcego (robi to FOREIGN KEY) ani nie jest funkcją agregującą. Pobranie danych z JEDNEJ tabeli nie wymaga złączenia. JOIN łączy dane z dwóch powiązanych tabel.

Pytanie 36

Która deklaracja w C++ przyjmuje argument typu RZECZYWISTEGO i zwraca wynik typu CAŁKOWITEGO?

A.
int fun1(float a);
Poprawna odpowiedź
B.
float fun1(void a);
C.
float fun1(int a);
Twoja odpowiedź
D.
void fun1(int a);
Niepoprawna odpowiedź. Typ przed nazwą to typ ZWRACANY, a w nawiasie jest typ ARGUMENTU. void fun1(int a) nic nie zwraca i bierze całkowity. float fun1(int a) ma odwrotnie - zwraca rzeczywisty, bierze całkowity. float fun1(void a) jest błędna. Zwraca całkowity, bierze rzeczywisty: int fun1(float a);.

Pytanie 37

Walidacja strony internetowej polega na

A. zestawie działań mających na celu zwiększenie liczby odwiedzin
B. reklamowaniu stronyTwoja odpowiedź
C. sprawdzeniu jej w celu usunięcia błędówPoprawna odpowiedź
D. umieszczaniu treści w sieci
Niepoprawna odpowiedź. Wiele osób myli pojęcie walidacji strony internetowej z innymi procesami związanymi z zarządzaniem stroną, co prowadzi do nieporozumień. Zwiększanie oglądalności to skomplikowany proces, który obejmuje działania marketingowe, takie jak SEO czy kampanie reklamowe, ale nie ma nic wspólnego z samą walidacją. Publikowanie w sieci wiąże się z umieszczaniem treści lub kodu na serwerze, co jest etapem wdrażania, a nie weryfikacji. Promocja strony to działania mające na celu przyciągnięcie użytkowników, które są równie istotne jak walidacja, lecz z zupełnie innej perspektywy. Walidacja to proces, który koncentruje się na identyfikowaniu błędów technicznych, takich jak niepoprawne tagi HTML, błędy w CSS czy problemy z dostępnością. Ignorowanie tych aspektów może prowadzić do frustracji użytkowników, którzy mogą napotkać trudności w korzystaniu ze strony. Błędy te mogą również wpływać na ranking w wyszukiwarkach, co z kolei negatywnie wpłynie na oglądalność. Dlatego ważne jest, aby zrozumieć, że walidacja to nie tylko przeglądanie zawartości, ale systematyczne podejście do zapewnienia, że strona internetowa jest funkcjonalna, dostępna i zgodna z obowiązującymi standardami.

Pytanie 38

Której właściwości CSS użyć, aby określić KRÓJ (rodzaj) czcionki?

A.
font-face
B.
font-family
Twoja odpowiedź
C.
font-style
D.
font-size
Poprawna odpowiedź. Krój (rodzaj) czcionki ustawia w CSS właściwość font-family, np. font-family: Arial, sans-serif;. Można podać listę krojów - przeglądarka użyje pierwszego dostępnego. Dlatego krój czcionki ustawia font-family.

Pytanie 39

W jakim języku została napisana podana linia kodu

Ilustracja do pytania
A. PHP
B. C#
C. JavaScriptTwoja odpowiedź
D. Python
Poprawna odpowiedź. Kod pokazany na obrazku jest zapisany w języku JavaScript. JavaScript jest językiem programowania, który odgrywa kluczową rolę w tworzeniu dynamicznych i interaktywnych stron internetowych. Linia kodu wykorzystuje metodę document.getElementById która jest częścią Document Object Model (DOM) w JavaScript. DOM pozwala na manipulację elementami HTML strony internetowej. W tym wypadku, metoda getElementById odwołuje się do elementu o identyfikatorze paragraf1, a właściwość innerHTML umożliwia zmianę zawartości tego elementu. To podejście jest powszechnie stosowane w celu dynamicznej aktualizacji treści na stronach bez konieczności przeładowania całej strony. Znajomość JavaScriptu pozwala na tworzenie bardziej responsywnych i atrakcyjnych wizualnie aplikacji webowych. JavaScript jest integralną częścią stosu technologii sieciowych i jest szeroko stosowany w praktycznie każdej nowoczesnej witrynie internetowej. Standardy ECMAScript definiują zasady i poprawne użycie JavaScript, co wspiera rozwój profesjonalny i zgodny z dobrymi praktykami.

Pytanie 40

Jakiego języka skryptowego ogólnego zastosowania powinno się użyć do tworzenia aplikacji internetowych, które są zintegrowane z HTML i działają na serwerze?

A. Perl
B. JavaScriptTwoja odpowiedź
C. PHPPoprawna odpowiedź
D. C#
Niepoprawna odpowiedź. JavaScript, choć jest niezwykle popularnym językiem skryptowym używanym do tworzenia interaktywnych elementów na stronach internetowych, działa głównie po stronie klienta, co oznacza, że kod jest wykonywany w przeglądarce użytkownika, a nie na serwerze. To ogranicza możliwość bezpośredniej interakcji z bazą danych lub przetwarzania danych na serwerze. Użycie Javy jako języka skryptowego w aplikacjach webowych również napotyka ograniczenia, ponieważ jest to język o większej złożoności i przeznaczeniu systemowym, a nie specjalnie dostosowany do dynamicznych treści w sieci. W przypadku Perla, choć jest to język o dużych możliwościach, jego popularność w tworzeniu aplikacji WWW znacznie zmalała na rzecz bardziej nowoczesnych rozwiązań, jak PHP lub Python. C# również nie jest idealnym wyborem dla aplikacji WWW, które mają być zagnieżdżane w HTML, ponieważ jest językiem głównie stosowanym w ekosystemie Microsoftu i .NET, który wymaga dodatkowej konfiguracji serwera. To prowadzi do nieefektywności, jeśli chodzi o szybkość i łatwość wdrażania. Wybór niewłaściwego języka do danego zadania, takiego jak tworzenie aplikacji WWW, może skutkować poważnymi komplikacjami, w tym większym czasem ładowania, trudnościami w integracji oraz mniejszą elastycznością w rozwoju aplikacji. Dlatego tak ważne jest zrozumienie specyfiki i zastosowania różnych języków skryptowych w kontekście budowy aplikacji webowych.