Wyniki egzaminu

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

Egzamin zdany!

Wynik: 30/40 punktów (75,0%)

Wymagane minimum: 20 punktów (50%)

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

Tabele: Studenci, Zapisy, Zajecia są powiązane relacją. Aby wybrać jedynie nazwiska studentów oraz odpowiadające im idZajecia dla studentów z grupy 15, należy wydać kwerendę

Ilustracja do pytania
A. SELECT nazwisko, idZajecia FROM Studenci INNER JOIN Zapisy ON Studenci.id = Zapisy.idStudenta;
B. SELECT nazwisko, idZajecia FROM Studenci INNER JOIN Zapisy WHERE grupa= 15;
C. SELECT nazwisko, idZajecia FROM Studenci JOIN Zapisy ON Studenci.id = Zapisy.idStudenta WHERE grupa = 15;
D. SELECT nazwisko, idZajecia FROM Studenci JOIN Zapisy ON Studenci.id = Zapisy.idZajecia WHERE grupa = 15;
W tej odpowiedzi zostało wszystko zrobione zgodnie z zasadami projektowania relacyjnych baz danych oraz praktyk SQL. Użycie JOIN zamiast starego stylu łączenia tabel przez przecinek i warunek WHERE to nie tylko kwestia czytelności, ale już od dawna standard branżowy. JOIN jasno pokazuje, na jakiej zasadzie łączą się tabele, w tym wypadku Studenci i Zapisy – łączymy po id studenta, bo tylko w taki sposób faktycznie powiążemy konkretne osoby z ich zapisami na zajęcia. WHERE grupa = 15 dodatkowo ogranicza wynik do tej konkretnej grupy studentów, co jest bardzo powszechną praktyką filtrowania wyników w zapytaniach. Przy bardziej złożonych systemach, gdzie mamy dużo relacji, taki zapis jest czytelny i łatwy do modyfikacji. Z mojego doświadczenia, jeżeli ktoś pracuje z większą ilością danych, czy nawet pisze bardziej skomplikowane raporty, to dokładnie taki zapis – z wyraźnie określonym JOIN-em i selekcją kolumn – bardzo ułatwia życie. Warto też pamiętać, że w praktyce biznesowej często chcemy wyciągnąć konkretną informację o użytkownikach lub powiązanych encjach, a nie wszystko naraz. W tym zadaniu to właśnie połączenie po idStudenta i selekcja po grupie daje najprecyzyjniejszy i najczystszy rezultat, zgodny i z logiką, i praktyką codziennej pracy z bazami danych.

Pytanie 2

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

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

Pytanie 3

W zapisie rgba(100, 40, 50, 0.2) czego dotyczy OSTATNIA wartość?

A. przezroczystości, gdzie 0 = pełna przezroczystość, 1 = brak
B. przezroczystości, gdzie 1 = pełna przezroczystość, 0 = brak
C. nasycenia koloru czarnego
D. saturacji barw RGB
Pozostałe opisy są błędne. Ostatnia wartość nie dotyczy nasycenia ani saturacji - te należą do modelu HSL/HSV, a nie RGBA. Myląca jest też odwrócona skala: to 0 daje PEŁNĄ przezroczystość, a 1 jej brak (nie odwrotnie). Czwarta wartość rgba to alfa: 0 = przezroczyste, 1 = kryjące.

Pytanie 4

Baza danych MySQL uległa uszkodzeniu. Które z działań NIE pomoże w jej naprawie?

A. próba naprawy poleceniem REPAIR
B. wykonanie replikacji bazy danych
C. utworzenie nowej bazy i przeniesienie do niej tabel
D. odtworzenie bazy z kopii zapasowej
Pozostałe trzy działania faktycznie ratują uszkodzoną bazę, więc nie są odpowiedzią na pytanie „które NIE pomoże”. Polecenie REPAIR TABLE próbuje odbudować uszkodzoną strukturę i indeksy tabeli. Odtworzenie z kopii zapasowej przywraca sprawny stan sprzed awarii. Utworzenie nowej bazy i przeniesienie do niej tabel pozwala porzucić uszkodzony kontener danych. Replikacja natomiast jedynie kopiuje dane na inny serwer - w tym także ewentualne uszkodzenia - więc to ona nie pomaga w naprawie.

Pytanie 5

W trakcie edycji grafiki rastrowej w oprogramowaniu obsługującym kanały, dodanie kanału alfa wskazuje na

A. zwiększenie głębi ostrości obrazu
B. ustalenie prawidłowego balansu bieli
C. wyostrzenie krawędzi obrazu
D. dodanie warstwy z przezroczystością
Dodanie kanału alfa w obróbce grafiki rastrowej oznacza wprowadzenie warstwy odpowiedzialnej za przezroczystość obrazu. Kanał alfa rozszerza możliwości tradycyjnych obrazów, które składają się tylko z trzech podstawowych kanałów kolorystycznych: czerwonego, zielonego i niebieskiego (RGB). Dzięki kanałowi alfa, każdy piksel w obrazie może mieć przypisaną wartość przezroczystości, co pozwala na tworzenie efektów takich jak cienie, rozmycia, a także na precyzyjne maskowanie elementów w projekcie. Przykładem zastosowania kanału alfa może być tworzenie grafik do użycia w reklamach czy wideo, gdzie elementy muszą być płynnie nałożone na różnorodne tła. W profesjonalnym oprogramowaniu graficznym, takim jak Adobe Photoshop czy GIMP, dodanie kanału alfa jest standardową praktyką w procesie tworzenia i edycji obrazów. Ponadto, tworząc animacje czy interaktywne projekty multimedialne, kanał alfa pozwala na bardziej elastyczne zarządzanie przezroczystością poszczególnych warstw, co jest kluczowe dla finalnego efektu wizualnego.

Pytanie 6

Dana jest tablica n-elementowa o nazwie t[n] Zadaniem algorytmu zapisanego w postaci kroków jest wypisanie sumy

K1: i = 0; wynik = 0;
K2: Dopóki i < n wykonuj K3 .. K4
    K3: wynik ← wynik + t[i]
    K4: i ← i + 2
K5: wypisz wynik
A. co drugiego elementu tablicy.
B. sumy wszystkich elementów tablicy.
C. n-elementów tablicy.
D. sumy tych elementów tablicy, których wartości są nieparzyste.
Super rozebrałeś na czynniki pierwsze ten algorytm! Twoja odpowiedź 'co drugiego elementu tablicy' jest jak najbardziej trafna. W pytaniu chodzi o to, że algorytm sumuje co drugi element tablicy, zaczynając od pierwszego, a ten indeks to 0. Zmienna 'i' służy do poruszania się po tablicy i w każdej iteracji zwiększa się o 2. Dzięki temu pętla przeskakuje co drugi element, a te nieparzyste ignoruje. To naprawdę przydatna technika w programowaniu, bo pozwala na określony dostęp do danych. Takie algorytmy wykorzystuje się np. przy analizie danych z czujników, gdzie ważne są tylko wartości zapisane w regularnych odstępach.

Pytanie 7

Jak dołączyć do strony skrypt z pliku przyklad.js?

A.
<script link="przyklad.js"></script>
B.
<script>przyklad.js</script>
C.
<link rel="script" href="/przyklad.js">
D.
<script src="/przyklad.js"></script>
Zewnętrzny plik JavaScript podłącza się znacznikiem <script>, wskazując jego lokalizację w atrybucie src (tak jak źródło obrazu w <img>): <script src="/przyklad.js"></script>. Znacznik <script> zawsze wymaga części zamykającej, nawet gdy nie ma między tagami żadnego kodu. Dlatego poprawny jest ten zapis.

Pytanie 8

Jaki zapis w dokumencie HTML umożliwia powiązanie z zewnętrznym arkuszem stylów o nazwie style.css?

A. <link rel="stylesheet" href="style.css">
B. <a src="style.css">
C. <link rel="stylesheet' src="style.css">
D. <a href="style.css">
Zapis <link rel="stylesheet" href="style.css"> jest poprawnym sposobem na dołączenie zewnętrznego arkusza stylów do dokumentu HTML. Atrybut 'rel' określa relację między dokumentem a zewnętrznym zasobem, w tym przypadku wskazując, że jest to arkusz stylów. Atrybut 'href' z kolei wskazuje ścieżkę do pliku CSS, który ma być użyty. Użycie znacznika <link> jest zgodne z standardem W3C i jest najlepszą praktyką w tworzeniu stron internetowych. Dzięki temu przeglądarka może załadować style z zewnętrznego pliku, co pozwala na łatwiejsze zarządzanie stylami oraz ich ponowne użycie w różnych dokumentach HTML. Umożliwia to także separację treści od stylizacji, co jest kluczowe w koncepcji wzorców projektowych, takich jak MVC (Model-View-Controller). Przykładowo, aby zmienić wygląd całej strony, wystarczy edytować jeden plik CSS, co znacząco upraszcza proces tworzenia i utrzymania witryn.

Pytanie 9

Na czym polega opracowanie logicznego UKŁADU strony internetowej?

A. na rozmieszczeniu elementów w określonych miejscach strony
B. na zdefiniowaniu treści strony
C. na przygotowaniu zestawu grafik
D. na ustaleniu adresów URL podstron
Logiczny układ strony to zaplanowanie, GDZIE znajdą się poszczególne elementy - nagłówek, menu, treść główna, panel boczny, stopka. Chodzi o rozmieszczenie bloków w określonych miejscach, zanim wypełni się je treścią. Dlatego układ to rozmieszczenie elementów na stronie.

Pytanie 10

Testy sprawdzające, czy aplikacja działa poprawnie w różnych architekturach serwera, konfiguracjach i środowiskach, to testy:

A. kompatybilności
B. użyteczności
C. funkcjonalności
D. bezpieczeństwa
Pozostałe testy mają inny cel. Testy bezpieczeństwa szukają podatności i luk. Testy funkcjonalności sprawdzają, czy program robi to, co powinien. Testy użyteczności oceniają wygodę obsługi dla użytkownika. Zgodność z różnymi środowiskami weryfikują testy kompatybilności.

Pytanie 11

Jakie imiona spełniają warunki klauzuli LIKE w podanym zapytaniu?

SELECT imie FROM mieszkancy WHERE imie LIKE '_r%';
A. Arleta, Krzysztof, Krystyna, Tristan
B. Rafał, Rebeka, Renata, Roksana
C. Gerald, Jarosław, Marek, Tamara
D. Krzysztof, Krystyna, Romuald
No, więc ta odpowiedź jest totalnie na miejscu, bo klauzula LIKE w SQL służy do szukania ciągów, które pasują do jakiegoś wzoru. W tym przypadku wzór '_r%' mówi nam, że przed literą 'r' musi być dokładnie jeden dowolny znak, a po 'r' może być cokolwiek. Jak spojrzymy na imiona, które wybrałeś, 'Arleta' i 'Krzysztof' mają 'r' na drugiej pozycji, a 'Krystyna' i 'Tristan' na trzeciej. Czyli wszystko się zgadza. W ogóle, klauzula LIKE jest super przydatna w wyszukiwaniu danych, na przykład w aplikacjach, gdy chcemy znaleźć kogoś po imieniu czy nazwisku. A ten symbol '%' to genialny sposób na dopasowywanie, bo pozwala na różne kombinacje. Fajna sprawa, nie?

Pytanie 12

Które polecenie ustawi klucz główny na polu id w istniejącej tabeli uczniowie?

A.
ADD TABLE uczniowie PRIMARY KEY (id);
B.
INSERT TABLE uczniowie PRIMARY KEY (id);
C.
INSERT TABLE uczniowie ADD PRIMARY KEY (id);
D.
ALTER TABLE uczniowie ADD PRIMARY KEY (id);
Aby w istniejącej tabeli ustawić klucz główny, używa się ALTER TABLE <tabela> ADD PRIMARY KEY (<pole>). Zapis ALTER TABLE uczniowie ADD PRIMARY KEY (id); poprawnie ustanawia pole id kluczem głównym tabeli uczniowie. Dlatego to polecenie jest prawidłowe.

Pytanie 13

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

A. jest wykorzystywana do szyfrowania treści tabeli
B. jest zawsze w formacie numerycznym
C. musi być unikalna
D. może mieć wartość pustą (NULL)
Wartość pola tabeli pełniącego rolę klucza podstawowego musi być unikalna, ponieważ klucz podstawowy identyfikuje jednoznacznie każdy rekord w tabeli bazy danych. To oznacza, że żadna z wartości w tym polu nie może się powtarzać, co zapewnia integralność danych. Przykładem zastosowania klucza podstawowego jest identyfikator użytkownika (UserID) w tabeli z danymi użytkowników; każdy użytkownik ma przypisany unikalny identyfikator, co umożliwia jednoznaczną identyfikację jego danych. Standardy relacyjnych baz danych, takie jak SQL, nakładają te wymagania na klucze podstawowe, co jest kluczowe dla prawidłowego działania relacji między tabelami. Dobre praktyki w projektowaniu baz danych sugerują, aby klucze podstawowe były nie tylko unikalne, ale także stabilne (czyli nie zmieniały się w czasie), co ułatwia zarządzanie danymi i ich integrację w systemie. W przypadku naruszenia zasady unikalności klucza podstawowego mogą wystąpić problemy z integralnością referencyjną, co sprawia, że niemożliwe staje się prawidłowe powiązanie rekordów w różnych tabelach.

Pytanie 14

Dla strony internetowej stworzono styl, który będzie stosowany tylko do wybranych znaczników, takich jak niektóre nagłówki oraz kilka akapitów. W tej sytuacji, aby przypisać styl do konkretnych znaczników, najodpowiedniejsze będzie użycie

Ilustracja do pytania
A. klasy
B. pseudoklasy
C. selektora akapitu
D. identyfikatora
Użycie klasy w CSS jest najlepszym rozwiązaniem, gdy chcemy zastosować ten sam styl do wielu elementów HTML, ale nie do wszystkich. Klasy w CSS są definiowane za pomocą kropki przed nazwą klasy, np. .nazwa-klasy, i mogą być przypisane do dowolnego elementu HTML za pomocą atrybutu class. Dzięki temu możemy elastycznie i efektywnie zarządzać stylami na stronie internetowej. Klasy są bardzo przydatne w dużych projektach, gdzie powtarzalność i spójność stylów są kluczowe. Pozwalają także na ponowne wykorzystanie tych samych stylów w różnych miejscach projektu bez konieczności kopiowania kodu CSS. Użycie klas zwiększa czytelność i organizację kodu, co jest zgodne z najlepszymi praktykami programowania. Stosowanie klas jest także zalecane w kontekście frameworków CSS, takich jak Bootstrap, które intensywnie wykorzystują klasy do definiowania komponentów i układów. Przykład zastosowania klasy: .align-right { text-align: right; } można przypisać do różnych nagłówków czy akapitów, które mają być wyrównane do prawej.

Pytanie 15

input[type=number] { background-color: Brown; }
Zapis tego selektora oznacza, że tło będzie miało brązowy kolor dla:
A. wszystkich typów pól edycyjnych
B. pól edycyjnych, w które użytkownik wprowadzi dowolną cyfrę
C. wszystkich tekstów na stronie internetowej
D. pól edycyjnych, które są typu numerycznego
Selekcja `input[type=number]` w CSS jest używana do stylizacji pól formularzy, które oczekują wartości numerycznych. Tło tych pól zostanie ustawione na kolor brązowy, co wpływa na ich wygląd i może poprawić doświadczenie użytkownika. Takie podejście jest zgodne z zasadami dostępności, ponieważ pozwala użytkownikom na natychmiastowe rozpoznanie, które pola są przeznaczone do wprowadzania cyfr. Przykładem zastosowania może być formularz zamówienia, w którym część pól ma określony typ, jak `number`, co ogranicza wprowadzanie do wartości liczbowych. Używając odpowiednich typów input, projektanci mogą tworzyć bardziej intuicyjne interfejsy, które redukują błędy użytkowników oraz poprawiają proces wypełniania formularzy. W tym kontekście warto również zwrócić uwagę na standardy W3C, które zalecają stosowanie typów input, aby zapewnić lepszą kompatybilność i funkcjonalność w różnych przeglądarkach i urządzeniach.

Pytanie 16

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

A. Z zasadami
B. Z atrybutami
C. Z przywilejami systemowymi
D. Z przywilejami obiektowymi
Przywileje systemowe to kluczowy element zarządzania bezpieczeństwem w systemach baz danych. Obejmują one uprawnienia, które są przypisane do konta użytkownika na poziomie systemu, a niekoniecznie na poziomie obiektów bazy danych, takich jak tabele czy widoki. Dzięki nim możemy kontrolować dostęp do różnych funkcji systemowych, takich jak możliwość tworzenia nowych użytkowników, modyfikacji struktury bazy danych czy przydzielania uprawnień innym użytkownikom. Przykładem zastosowania przywilejów systemowych jest sytuacja, w której administrator bazy danych przydziela użytkownikom różne role, takie jak DBA (Database Administrator), która daje pełny dostęp do zasobów, lub rola z ograniczonymi uprawnieniami, co pozwala na wykonywanie tylko wybranych operacji. Dobrym przykładem standardów w tej dziedzinie jest podejście oparte na zasadzie minimalnych uprawnień, gdzie użytkownicy otrzymują jedynie te uprawnienia, które są absolutnie niezbędne do wykonywania ich zadań. Dzięki zastosowaniu przywilejów systemowych można skutecznie zarządzać bezpieczeństwem bazy danych oraz minimalizować ryzyko nieautoryzowanego dostępu.

Pytanie 17

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

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

Pytanie 18

Jakiej funkcji w edytorze grafiki rastrowej należy użyć, aby przygotować obraz do wyświetlenia na stronie tak, aby widoczne było jedynie to, co mieści się w ramce?

Ilustracja do pytania
A. Lustro
B. Perspektywa
C. Zmiana rozmiaru
D. Kadrowanie
Kadrowanie w edytorze grafiki rastrowej to naprawdę fajna technika, bo pozwala nam na wycięcie konkretnej części obrazu, którą chcemy pokazać. Dzięki temu skupiamy uwagę na tym, co w grafice najważniejsze, eliminując to, co jest zbędne. Przygotowując grafikę do wrzucenia na stronę www, dobrze jest pomyśleć o kadrowaniu, bo nie tylko poprawia estetykę, ale też sprawia, że strona działa szybciej. Mniejsza grafika to krótszy czas ładowania, co wszyscy lubią. Kadrowanie jest kluczowe, zwłaszcza w responsywnym web designie, gdzie musimy dostosować obrazy do różnych ekranów. Z praktyki wiem, że dobrze wykadrowany obraz to lepsza jakość przy mniejszej wadze pliku, co korzystnie wpływa na SEO i wrażenia użytkowników. W programach jak Adobe Photoshop czy GIMP kadrowanie jest dość proste i pozwala na szybkie dostosowanie obrazu do potrzeb projektu.

Pytanie 19

Polecenie serwera MySQL w postaci

REVOKE DELETE, UPDATE ON pracownicy FROM 'tKowal'@'localhost'
spowoduje, że użytkownikowi tKowal zostaną
A. odebrane uprawnienia usuwania oraz dodawania rekordów w tabeli pracownicy
B. odebrane prawa usuwania i modyfikowania danych w tabeli pracownicy
C. przydzielone uprawnienia do usuwania oraz aktualizowania danych w tabeli pracownicy
D. przydzielone uprawnienia do wszelkich zmian struktury tabeli pracownicy
Odpowiedź wskazuje, że użytkownikowi tKowal odebrane zostały prawa usuwania i modyfikowania danych w tabeli pracownicy za pomocą polecenia REVOKE. W kontekście zarządzania uprawnieniami w MySQL, polecenie REVOKE jest kluczowym narzędziem, które umożliwia administratorom bazy danych kontrolowanie dostępu użytkowników do różnych operacji na danych. W tym przypadku, przy użyciu REVOKE DELETE, UPDATE, administrator zdejmuje z użytkownika tKowal możliwość usuwania (DELETE) oraz aktualizowania (UPDATE) rekordów w tabeli pracownicy. Praktycznym zastosowaniem tej funkcji może być sytuacja, gdy administrator chce ograniczyć dostęp do wrażliwych danych, aby zapobiec przypadkowemu lub nieuprawnionemu usunięciu informacji. Dobrą praktyką jest regularne przeglądanie i aktualizowanie uprawnień użytkowników, aby zapewnić, że mają oni tylko te uprawnienia, które są im niezbędne do wykonywania swoich obowiązków, co przyczynia się do zwiększenia bezpieczeństwa danych.

Pytanie 20

Przedstawiony blok reprezentuje czynność

Ilustracja do pytania
A. wyświetlenia danych.
B. podjęcia decyzji.
C. wczytania danych.
D. zastosowania gotowej procedury lub funkcji.
Ten blok w kształcie rombu to klasyczny symbol decyzji w schemacie blokowym algorytmu. Zgodnie z przyjętymi standardami notacji (np. ANSI/ISO dla diagramów przepływu), romb oznacza miejsce, w którym program musi coś sprawdzić i na podstawie wyniku tej kontroli wybrać jedną z gałęzi dalszego działania. Innymi słowy: następuje podjęcie decyzji na podstawie warunku logicznego, który zwykle daje odpowiedź typu TAK/NIE (TRUE/FALSE).

W praktyce, w kodzie programistycznym taki romb odpowiada instrukcjom warunkowym, takim jak if, if...else, switch, operator trójargumentowy itp. Przykład: „jeśli użytkownik jest zalogowany, pokaż panel administracyjny, w przeciwnym razie przekieruj do logowania”. W schemacie blokowym byłby to właśnie romb z pytaniem „Użytkownik zalogowany?”. Z rombu wychodziłyby dwie strzałki: jedna podpisana „tak”, druga „nie”, prowadzące do różnych bloków akcji.

Moim zdaniem warto wyrobić sobie nawyk automatycznego kojarzenia: romb = warunek = rozgałęzienie przepływu. Dzięki temu łatwiej później projektować algorytmy, niezależnie od języka programowania. W praktyce webowej też ma to duże znaczenie: np. sprawdzenie, czy dane z formularza są poprawne, czy użytkownik ma odpowiednie uprawnienia, czy plik istnieje na serwerze. Za każdym razem, gdy w głowie pojawia Ci się „jeśli… to… w przeciwnym razie…”, w schemacie blokowym powinien pojawić się właśnie taki romb, czyli blok podjęcia decyzji. To jest fundament logicznej struktury programu i jedna z podstawowych konstrukcji algorytmicznych.

Pytanie 21

Reprezentacja znacznika HTML w formacie

<a href="#hobby">przejdź</a>
A. jest błędny, użyto niewłaściwego znaku "#" w atrybucie href
B. jest poprawny, po kliknięciu w odnośnik strona zostanie przewinięta do sekcji o nazwie "hobby"
C. jest poprawny, po kliknięciu w odnośnik otworzy się strona internetowa o URL "hobby"
D. jest błędny, w atrybucie href należy wpisać adres URL
W odpowiedziach, które wskazują na błędy w zapisie znacznika HTML, pojawiają się nieporozumienia dotyczące funkcji atrybutu href w tagu <a>. Niepoprawne są twierdzenia sugerujące, że użycie znaku '#' w atrybucie href jest błędne. Wręcz przeciwnie, znak '#' jest standardowym sposobem definiowania odnośników do identyfikatorów na tej samej stronie. Zastosowanie atrybutu href w takiej formie jest powszechnie akceptowane i stosowane w praktyce web developerskiej. Kolejnym błędnym wnioskiem jest stwierdzenie, że w atrybucie href należy podać pełny adres URL. W rzeczywistości, gdy celem jest nawigacja do sekcji na tej samej stronie, wystarczy użyć symbolu '#' i odpowiedniego identyfikatora. Dodatkowo, pominięcie praktyki użycia href do nawigacji wewnętrznej prowadzi do mniejszych korzyści w zakresie użyteczności strony. Użytkownicy oczekują, że będą mogli łatwo przemieszczać się pomiędzy różnymi sekcjami długich treści, a niewłaściwe podejście do definiowania odnośników może prowadzić do frustracji i obniżenia jakości doświadczeń użytkowników. Warto zatem zrozumieć, że poprawne stosowanie takich odnośników jest kluczowe dla skutecznego projektowania stron internetowych.

Pytanie 22

Na zakończenie dnia w bazie danych sklepu spożywczego generowany jest raport, który pokazuje produkty wraz z ich dostawcami, dla których liczba sztuk w magazynie jest poniżej 10. Do stworzenia tego raportu użyto kwerendy

A. INSERT INTO
B. SELECT
C. CHECK TABLE
D. UPDATE
W kontekście bazy danych, kwerenda SELECT jest podstawowym narzędziem do pobierania danych. W przypadku raportu, który ma wyświetlić produkty z dostawcami, dla których stan magazynowy jest mniejszy niż 10 sztuk, SELECT jest jedyną odpowiednią instrukcją SQL do realizacji takiego zadania. Używając SELECT, można określić, które kolumny z tabeli mają być wyświetlane oraz zastosować filtry, aby ograniczyć wyniki tylko do tych, które spełniają określone warunki. Na przykład, przykładowa kwerenda mogłaby wyglądać tak: SELECT product_name, supplier_name FROM products WHERE stock < 10; Taka instrukcja przeszuka tabelę 'products' i wyświetli jedynie te produkty, które mają niski stan magazynowy. SELECT jest zgodny z normami SQL i pozwala na wykorzystanie różnych funkcji agregujących oraz operacji łączenia danych, co czyni go niezwykle wszechstronnym narzędziem w zarządzaniu bazami danych. Dzięki umiejętnemu zastosowaniu SELECT, można nie tylko generować raporty, ale także wspierać procesy decyzyjne w zarządzaniu zapasami.

Pytanie 23

Baza danych MySQL została uszkodzona. Które z poniższych działańnie przyczyni się do jej naprawy?

A. Odtworzenie bazy z kopii zapasowej
B. Wykonanie replikacji bazy danych
C. Próba naprawy za pomocą polecenia REPAIR
D. Utworzenie nowej bazy i przeniesienie do niej tabel
Próba naprawy bazy danych za pomocą polecenia REPAIR, odtwarzanie bazy z kopii bezpieczeństwa czy stworzenie nowej bazy z przeniesieniem tabel mogą być mylnie uznawane za skuteczne rozwiązania w przypadku uszkodzenia bazy danych. Polecenie REPAIR TABLE ma zastosowanie tylko w przypadku tabel, które zostały uszkodzone, a nie w przypadku całej bazy danych. W praktyce, jeśli baza danych jest uszkodzona w sposób, który uniemożliwia jej działanie, to polecenie naprawy nie będzie wystarczające. Odzyskiwanie z kopii zapasowej to bardzo efektywna metoda, jednak wymaga wcześniejszego posiadania aktualnej kopii, a czasami dane mogą być utracone. Stworzenie nowej bazy danych i przeniesienie tabel jest procesem czasochłonnym i może nie zapewnić pełnej integralności danych, szczególnie w przypadku złożonych relacji między tabelami. Często mylone są pojęcia naprawy i odzyskiwania danych, co może prowadzić do błędnych decyzji w sytuacjach kryzysowych. Ważne jest, aby w momencie wystąpienia uszkodzenia bazy danych podejść do tematu z pełną wiedzą na temat dostępnych narzędzi i metod, aby uniknąć dalszych problemów związanych z bezpieczeństwem danych.

Pytanie 24

Jak zapisać w JavaScript warunek: a i b są dodatnie, a b jest mniejsze od 100?

A.
if (a > 0 || (b > 0 && b < 100))
B.
if (a > 0 && b > 0 || b > 100)
C.
if (a > 0 && b > 0 && b < 100)
D.
if (a > 0 || b > 0 || b > 100)
Wszystkie trzy żądania muszą być spełnione naraz - a dodatnie, b dodatnie i b mniejsze od 100 - więc łączymy je operatorem &&: if (a > 0 && b > 0 && b < 100). „Dodatnie” to > 0. Dlatego ten warunek jest poprawny.

Pytanie 25

W przedstawionej regule CSS h1{color: blue} co oznacza h1?

A. deklarację
B. wartość
C. klasę
D. selektor
W regule CSS h1{color: blue} termin h1 odnosi się do selektora, który jest używany do wybierania elementów HTML, a w tym przypadku oznacza wszystkie nagłówki pierwszego poziomu. Selekcje w CSS są kluczowym elementem stylizacji stron internetowych, ponieważ pozwalają na precyzyjne określenie, które elementy mają być stylizowane. Selekcja h1 odnosi się do wszystkich elementów <h1> w dokumencie HTML, co oznacza, że wszystkie nagłówki pierwszego poziomu zostaną stylizowane zgodnie z podaną regułą. Wartością kolorystyki, czyli blue, jest przypisana do właściwości CSS 'color', co skutkuje zmianą koloru tekstu nagłówka na niebieski. Zgodnie z W3C, CSS (Cascading Style Sheets) pozwala na oddzielenie treści od prezentacji, co zwiększa elastyczność i ułatwia zarządzanie stylem strony. Przykładem praktycznym może być strona internetowa, gdzie wszystkie nagłówki pierwszego poziomu są wyróżnione kolorem niebieskim, co przyciąga uwagę użytkowników i poprawia czytelność. Selekcja jest zatem podstawowym narzędziem w stylizacji, umożliwiającym aplikację reguł CSS do określonych elementów HTML.

Pytanie 26

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. grupowania.
B. części wspólnej.
C. wykluczenia.
D. sumy.
Prawidłowo – w filmie została użyta funkcja grupowania. W grafice wektorowej, np. w programach typu Inkscape, CorelDRAW czy Illustrator, grupowanie służy właśnie do logicznego połączenia kilku obiektów w jeden „zestaw”, ale bez trwałego mieszania ich geometrii. To znaczy: tekst dalej pozostaje tekstem, wielokąt dalej jest wielokątem, tylko są traktowane jak jeden obiekt przy przesuwaniu, skalowaniu czy obracaniu. Dzięki temu operacja jest w pełni odwracalna – w każdej chwili możesz rozgrupować elementy i edytować każdy osobno.
Moim zdaniem to jest podstawowa dobra praktyka w pracy z projektami, które mogą wymagać późniejszych poprawek: podpisy, etykiety, logotypy, schematy techniczne. Jeśli połączysz tekst z kształtem za pomocą operacji boolowskich (suma, część wspólna, wykluczenie), to tekst zwykle zamienia się na krzywe, przestaje być edytowalny jako tekst. To bywa potrzebne przy przygotowaniu do druku czy eksportu do formatu, który nie obsługuje fontów, ale nie wtedy, gdy zależy nam na łatwej edycji.
Z mojego doświadczenia: przy projektowaniu interfejsów, ikon, prostych banerów na WWW czy grafik do multimediów, najrozsądniej jest najpierw grupować logicznie elementy (np. ikona + podpis), a dopiero na samym końcu, gdy projekt jest ostateczny, ewentualnie zamieniać tekst na krzywe. Grupowanie pozwala też szybko zaznaczać całe moduły projektu, wyrównywać je względem siebie, duplikować całe zestawy (np. kafelki menu, przyciski z opisami) bez ryzyka, że coś się rozjedzie. W grafice komputerowej to taka podstawowa „organizacja pracy” – mniej destrukcyjna niż różne operacje na kształtach i zdecydowanie bardziej elastyczna przy późniejszych zmianach.

Pytanie 27

Gdy zmienna $x przechowuje dowolną dodatnią liczbę naturalną, poniższy kod źródłowy PHP ma na celu wyświetlenie:

$licznik = 0;
while ($licznik != $x) 
{
    echo $licznik;
    $licznik++;
}
A. przypadkowe liczby z zakresu (0, x)
B. liczby wprowadzane z klawiatury, aż do momentu wprowadzenia wartości x
C. kolejne liczby od 0 do x-1
D. kolejne liczby od x do 0
Poprawna odpowiedź to 'kolejne liczby od 0 do x-1'. Kod PHP w pętli 'while' wyświetla kolejne liczby naturalne, zaczynając od 0. Pętla ta będzie kontynuowana, dopóki zmienna $licznik nie osiągnie wartości x, czyli dopóki $licznik < x. Wartością ostatniej liczby, jaką pętla wyświetli, będzie zatem x-1, ponieważ wartość x nie jest już spełnieniem warunku pętli. To ważne rozróżnienie w programowaniu, gdzie często stosuje się różne typy pętli i konstrukcje sterujące. W praktyce, zrozumienie tego mechanizmu jest kluczowe dla manipulowania danymi i tworzenia skryptów o różnych funkcjonalnościach. Pętle są jednym z podstawowych elementów kontroli przepływu w większości języków programowania, a różne ich typy i zastosowania pozwalają na realizację różnorodnych zadań, od prostych operacji na danych do skomplikowanych algorytmów.

Pytanie 28

Używa się zapytania z klauzulą JOIN, aby

A. określić klucz obcy dla tabeli
B. uzyskać dane z dwóch tabel, które są ze sobą powiązane
C. otrzymać wynik tylko z jednej tabeli
D. wykonać funkcję agregującą
Zapytanie z klauzulą JOIN jest kluczowym narzędziem w języku SQL, które umożliwia łączenie danych z dwóch lub więcej tabel na podstawie relacji między nimi. Używając JOIN, możemy uzyskać bardziej złożone i użyteczne zestawienia danych, które nie byłyby możliwe do uzyskania, gdybyśmy korzystali tylko z pojedynczej tabeli. Na przykład, jeśli mamy tabelę klientów oraz tabelę zamówień, możemy z łatwością połączyć je, aby uzyskać informacje o tym, jakie zamówienia złożył dany klient. Przykładowe zapytanie może wyglądać tak: "SELECT klienci.imie, zamowienia.data FROM klienci JOIN zamowienia ON klienci.id = zamowienia.klient_id;" W takim przypadku wykorzystanie JOIN pozwala na integrowanie danych z obu tabel w jedną spójną odpowiedź. Takie podejście jest szeroko stosowane w branży, ponieważ standardy relacyjnych baz danych wymagają efektywnej organizacji i analizy danych, a JOIN jest jednym z podstawowych mechanizmów umożliwiających realizację takich zadań.

Pytanie 29

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

A. polimorfizmu
B. przeładowania
C. hermetyzacji
D. rekurencji
Słowa private, protected i public określają, kto ma dostęp do składowych klasy - to mechanizm HERMETYZACJI, czyli ukrywania wewnętrznych danych obiektu. Dlatego definiują hermetyzację.

Pytanie 30

Który atrybut kolumny zapewnia automatyczne nadawanie kolejnych, unikalnych wartości (np. dla klucza głównego)?

A.
NOT NULL
B.
UNIQUE
C.
DEFAULT
D.
AUTO_INCREMENT
Atrybut AUTO_INCREMENT (w MySQL) sprawia, że przy dodaniu nowego wiersza baza sama wstawia do kolumny kolejną, większą o jeden liczbę. Stosuje się go najczęściej dla numerycznego klucza głównego (id), by nie trzeba było ręcznie pilnować unikalności identyfikatorów. Dlatego automatyczne nadawanie kolejnych wartości zapewnia AUTO_INCREMENT.

Pytanie 31

Jakie technologie są konieczne do uruchomienia systemu CMS Joomla!?

A. Apache, PHP i MySQL
B. PHP oraz MySQL
C. Apache oraz PHP
D. IIS, PERL i MySQL
Joomla! jest systemem zarządzania treścią, który wymaga specyficznych technologii do prawidłowego działania. Do uruchomienia Joomla! niezbędne jest środowisko, które obejmuje serwer WWW Apache, język skryptowy PHP oraz bazę danych MySQL. Apache jest najpopularniejszym serwerem WWW, który obsługuje wiele funkcji, takich jak obsługa dynamicznych treści oraz zarządzanie dużymi ilościami ruchu. PHP jest językiem skryptowym, który pozwala na interakcję z bazą danych oraz generowanie treści w czasie rzeczywistym, co jest kluczowe dla działania CMS-a. MySQL natomiast jest systemem zarządzania bazą danych, który przechowuje wszystkie dane dotyczące witryny, takie jak artykuły, ustawienia i użytkownicy. Przykładem zastosowania tych technologii może być stworzenie strony internetowej dla lokalnej organizacji non-profit, gdzie Joomla! umożliwia łatwe zarządzanie treścią przez osoby nieposiadające zaawansowanej wiedzy technicznej. Dobre praktyki w branży zalecają stosowanie najnowszych wersji tych technologii, aby zapewnić bezpieczeństwo oraz wydajność witryny.

Pytanie 32

Którego atrybutu należy użyć w miejscu trzech kropek w znaczniku HTML5 <blockquote>, aby zdefiniować źródło cytatu?

<blockquote ...="https://pl.wikipedia.org">
Pokojowa Nagroda Nobla jest przyznawana kandydatom, którzy wykonali największą lub najlepszą
pracę na rzecz braterstwa między narodami
</blockquote>
A. alt
B. src
C. cite
D. href
Niestety, twoja odpowiedź nie jest poprawna. Atrybut 'cite' w znaczniku <blockquote> jest używany do definiowania źródła cytatu, a nie 'alt', 'src' ani 'href'. Atrybut 'alt' jest używany w obrazach jako tekst alternatywny, który jest wyświetlany, gdy obraz nie może być ładowany lub jest odczytywany przez czytniki ekranowe. Z kolei 'src' jest atrybutem, który określa ścieżkę do obrazu lub innego zasobu multimedialnego. 'href' jest używany w znacznikach 'a' i 'link' do określenia URL strony lub innego zasobu, do którego prowadzi link. Pomyłka ta może wynikać z braku zrozumienia różnych zastosowań atrybutów w HTML. Pamiętaj, że każdy atrybut ma swoje specyficzne zastosowanie i nie są one zamienne.

Pytanie 33

Jak zabezpieczyć CREATE USER, aby nie utworzyć konta, gdy już istnieje?

A.
CREATE OR REPLACE USER 'anna'@'localhost' IDENTIFIED BY 'haslo';
B.
CREATE USER OR DROP 'anna'@'localhost' IDENTIFIED BY 'haslo';
C.
CREATE USER 'anna'@'localhost' IDENTIFIED BY 'haslo';
D.
CREATE USER IF NOT EXISTS 'anna'@'localhost' IDENTIFIED BY 'haslo';
Aby nie utworzyć konta, które już istnieje (i uniknąć błędu), używa się klauzuli IF NOT EXISTS: CREATE USER IF NOT EXISTS 'anna'@'localhost' IDENTIFIED BY 'haslo';. Gdy użytkownik istnieje, polecenie zostanie pominięte. Dlatego poprawny jest wariant z IF NOT EXISTS.

Pytanie 34

Który format NIE służy do publikacji grafiki lub animacji w internecie?

A. AIFF
B. SWF
C. PNG
D. SVG
AIFF (Audio Interchange File Format) to format pliku DŹWIĘKOWEGO, więc nie służy do publikacji grafiki ani animacji w internecie. Pozostałe wymienione formaty są graficzne lub animacyjne. Dlatego z grafiką nie ma związku AIFF.

Pytanie 35

Które wartości będą przechowywane w zmiennych po wykonaniu przedstawionej pętli języka PHP?

$i = 20;    $a = 0;
while($i) {
  $a += 2;
  $i--;
}
A. a = 0, i = 20
B. a = 20, i = 20
C. a = 40, i = 0
D. a = 40, i = 20
Odpowiedź jest poprawna, ponieważ zrozumienie jak działa pętla w języku PHP jest kluczowe dla efektywnej pracy z tym językiem. W tym przypadku mamy do czynienia z pętlą, która zaczyna się od wartości i = 20 i w każdej iteracji zmniejsza wartość i o 1, aż dojdzie do 0, kończąc pętlę. Zmienna 'a' jest zwiększana o 2 w każdej iteracji, co daje nam finalną wartość a = 40 po 20 iteracjach. To jest kluczowe dla zrozumienia, jak zmienne są aktualizowane i przechowywane w pętli PHP. Przykład ten pokazuje, jak można wykorzystać pętle do wykonywania powtarzalnych operacji na danych, co jest podstawowym elementem programowania. Pamiętaj, że zrozumienie, jak działa pętla, jest kluczowe do tworzenia efektywnych i wydajnych programów, nie tylko w PHP, ale w każdym języku programowania.

Pytanie 36

W języku HTML aby zdefiniować słowa kluczowe strony, należy użyć zapisu

A. <meta keywords = "psy, koty, gryzonie">
B. <meta name = "keywords" = "psy, koty, gryzonie">
C. <meta name = "keywords" content = "psy, koty, gryzonie">
D. <meta name = "description" content = "psy, koty, gryzonie">
Odpowiedzi, które nie spełniają standardów HTML, mogą prowadzić do nieporozumień i utraty efektywności w kontekście SEO. Przykładowo, zapis <meta name = "keywords" = "psy, koty, gryzonie"> jest niepoprawny z kilku powodów. Po pierwsze, atrybut 'name' i 'content' muszą być oddzielone spacją, a nie znakiem równości. Poprawna struktura wymaga, aby 'name' był atrybutem wskazującym na rodzaj metadanych, a 'content' dostarczał ich wartość. Kolejna odpowiedź, <meta name = "description" content = "psy, koty, gryzonie">, jest nieprawidłowa, ponieważ odnosi się do opisu strony, a nie słów kluczowych. Opis jest ważnym elementem, ale to nie on definiuje słowa kluczowe, które są stosowane do kategoryzacji treści. Z kolei zapis <meta keywords = "psy, koty, gryzonie"> pomija kluczowy atrybut 'name', co sprawia, że jest to niezgodne z zasadami HTML. Kluczową kwestią jest również to, że wiele wyszukiwarek, takich jak Google, zrezygnowało z brania pod uwagę metatagu 'keywords' w swoich algorytmach rankingowych, co sprawia, że jego stosowanie jest mniej efektywne. Użytkownicy powinni zrozumieć, że stosowanie poprawnych metatagów jest nie tylko kwestią formalną, ale również wpływa na sposób, w jaki ich strona jest postrzegana i indeksowana przez różne wyszukiwarki.

Pytanie 37

W tabeli artykuly (kolumna cena) chcemy wybrać artykuły, których cena NIE mieści się w przedziale od 1000 do 1500 zł. Którego warunku WHERE należy użyć?

A.
cena BETWEEN 1000 AND 1500
B.
cena NOT BETWEEN 1000 AND 1500
C.
cena < 1000 AND cena > 1500
D.
cena NOT IN (1000, 1500)
Aby wybrać wartości spoza zakresu, używa się NOT BETWEEN dolna AND górna. Warunek cena NOT BETWEEN 1000 AND 1500 zwróci artykuły tańsze niż 1000 lub droższe niż 1500 zł. To zwięzły odpowiednik cena < 1000 OR cena > 1500. Dlatego poprawny jest NOT BETWEEN.

Pytanie 38

Czego nie należy robić, aby zabezpieczyć serwer bazy danych przed atakami hakerów?

A. aktywacja zapory.
B. blokowanie portów związanych z bazą danych.
C. używanie skomplikowanych haseł do bazy.
D. defragmentacja dysków.
Defragmentacja dysków nie jest bezpośrednio związana z zabezpieczaniem serwera bazy danych przed atakami hakerskimi. Choć defragmentacja może poprawić wydajność systemu plików poprzez uporządkowanie fragmentów plików na dysku, nie ma wpływu na kwestie bezpieczeństwa. Przykłady skutecznych działań w zakresie zabezpieczeń obejmują włączenie zapory, co stanowi pierwszą linię obrony, blokowanie portów, które mogą być wykorzystywane przez potencjalnych intruzów, oraz stosowanie złożonych haseł, co minimalizuje ryzyko nieautoryzowanego dostępu. W kontekście zarządzania bezpieczeństwem baz danych, kluczowe jest przestrzeganie najlepszych praktyk, takich jak regularne aktualizacje oprogramowania, monitorowanie logów dostępu oraz stosowanie zasad minimalnych uprawnień. Właściwe zabezpieczenia powinny być wdrażane zgodnie z wytycznymi standardów takich jak ISO/IEC 27001.

Pytanie 39

Co robi funkcja przedstawiona w kodzie JavaScript?

function tekst() {
var h = location.hostname;
document.getElementById("info").innerHTML = h;
}
A. umożliwić przejście do wskazanej lokalizacji hosta
B. pokazać na przycisku lokalizację hosta, a po jego naciśnięciu umożliwić przejście do określonej lokalizacji
C. wyświetlić w elemencie o id = "info" adres hosta wskazany przez pierwszy odnośnik
D. wyświetlić w elemencie o id = "info" nazwę hosta, z którego pochodzi wyświetlona strona
Nieprawidłowe odpowiedzi wynikają z błędnego zrozumienia działania obiektu Location oraz manipulacji DOM w JavaScript. Jedna z odpowiedzi sugeruje, że funkcja umożliwia przejście do wskazanej lokalizacji hosta, co nie jest zgodne z działaniem location.hostname. Metoda ta jedynie pobiera nazwę hosta, nie wykonuje żadnych operacji nawigacyjnych. Innym błędnym założeniem jest twierdzenie, że funkcja wyświetla adres hosta wskazany pierwszym odnośnikiem. W rzeczywistości, location.hostname zwraca nazwę hosta aktualnej strony, a nie żadnego odnośnika w dokumencie. Kolejna błędna odpowiedź dotyczy umieszczenia tej nazwy na przycisku. Kod wyraźnie pokazuje, że manipulacja dotyczy elementu o id info, a nie przycisku, nie ma więc nic wspólnego z interakcją użytkownika poprzez kliknięcie. Takie nieporozumienia mogą wynikać z niedostatecznej znajomości specyfikacji obiektu Location oraz technik manipulacji DOM w JavaScript, co jest kluczowe dla efektywnego tworzenia dynamicznych i responsywnych stron internetowych. Poprawne zrozumienie pozwala tworzyć aplikacje, które są zarówno funkcjonalne, jak i bezpieczne dla użytkowników, co jest istotne w kontekście współczesnych standardów webowych.

Pytanie 40

Który znacznik sekcji <head> jest wymagany w HTML5, a jego brak walidator zgłasza jako błąd?

A.
link
B.
meta
C.
title
D.
style
Pozostałe znaczniki <head> są opcjonalne. <link> dołącza zasoby (np. CSS), <meta> podaje metadane, a <style> zawiera reguły CSS - żaden nie jest wymagany. Obowiązkowy jest <title>.