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 18:58
  • Data zakończenia: 8 czerwca 2026 19:20

Egzamin zdany!

Wynik: 23/40 punktów (57,5%)

Wymagane minimum: 20 punktów (50%)

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

Jak określa się część strukturalnego języka zapytań, która dotyczy tworzenia zapytań do bazy danych za pomocą polecenia SELECT?

A. SQL DML (ang. Data Manipulation Language)
B. SQL DCL (ang. Data Control Language)
C. SQL DQL (ang. Data Query Language)
D. SQL DDL (ang. Data Definition Language)
SQL DQL, czyli Data Query Language, to podzbiór SQL, który koncentruje się na formułowaniu zapytań do baz danych, w szczególności za pomocą polecenia SELECT. DQL umożliwia użytkownikom wydobywanie danych z bazy w sposób, który jest zarówno elastyczny, jak i wydajny. Przykładem zastosowania DQL jest zapytanie, które pozwala na wyciągnięcie informacji o klientach z tabeli 'Klienci', gdzie warunki mogą być określone przez klauzule WHERE, ORDER BY lub GROUP BY. Dzięki DQL, można również stosować różne funkcje agregujące, takie jak COUNT, SUM, AVG, co pozwala na analizę danych na bardziej zaawansowanym poziomie. W praktyce, umiejętność posługiwania się DQL jest kluczowa dla analityków danych oraz programistów, którzy pracują z bazami danych, ponieważ umożliwia efektywne zarządzanie i raportowanie wyników. Poznanie DQL jest niezbędne dla każdego, kto zamierza skutecznie korzystać z systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL czy Oracle.

Pytanie 2

Aby stworzyć relację jeden do wielu, w tabeli po stronie wiele, co należy zdefiniować?

A. klucz podstawowy wskazujący na klucz podstawowy tabeli po stronie jeden
B. klucz sztuczny odnoszący się do kluczy podstawowych obu tabel
C. klucz obcy wskazujący na klucz podstawowy tabeli po stronie jeden
D. klucz obcy wskazujący na klucz obcy tabeli po stronie jeden
W relacji jeden do wielu, klucz obcy w tabeli po stronie wiele jest kluczowym elementem, który wskazuje na klucz podstawowy tabeli po stronie jeden. Dzięki temu możliwe jest powiązanie wielu rekordów w tabeli 'wiele' z jednym rekordem w tabeli 'jeden', co jest fundamentalnym aspektem modelowania relacyjnych baz danych. Klucz obcy zapewnia integralność referencyjną, co oznacza, że każda wartość klucza obcego w tabeli 'wiele' musi odpowiadać istniejącemu kluczowi podstawowemu w tabeli 'jeden'. Przykładem może być sytuacja, w której mamy tabelę 'Klienci' i tabelę 'Zamówienia'. W tabeli 'Zamówienia' klucz obcy 'ID_Klienta' wskazuje na 'ID' w tabeli 'Klienci', co pozwala na przypisanie wielu zamówień do jednego klienta. Zgodnie z dobrymi praktykami branżowymi, klucze obce powinny być odpowiednio zindeksowane, co pozwala na szybsze zapytania oraz efektywniejsze przetwarzanie danych.

Pytanie 3

Jaką klauzulę należy wykorzystać w instrukcji CREATE TABLE w SQL, by dane pole rekordu pozostawało wypełnione?

A. NOT NULL
B. DEFAULT
C. NULL
D. CHECK
Odpowiedzi takie jak DEFAULT i CHECK sugerują nieporozumienia dotyczące funkcji tych klauzul. Klauzula DEFAULT jest używana do określenia wartości domyślnej dla pola, gdy nie została dostarczona żadna wartość. Nie rozwiązuje to problemu pustych danych, ponieważ nadal umożliwia dodawanie rekordów bez wartości, które są ostatecznie zastępowane przez wartość domyślną. Z kolei klauzula CHECK umożliwia wprowadzenie dodatkowych warunków walidacyjnych dla danych, ale nie blokuje możliwości wprowadzenia wartości NULL. Nie jest to zatem odpowiednie rozwiązanie, gdy celem jest zapewnienie, aby pole nigdy nie pozostawało puste. Klauzula NULL, z drugiej strony, nie ma zastosowania w kontekście tego pytania, gdyż definiuje ona, że pole może zawierać wartości NULL. W praktyce takie podejście prowadzi do braku wymuszenia wprowadzania danych, co może być szkodliwe dla integralności bazy danych. Te zrozumienia błędnie wpływają na jakość projektowania baz danych, gdyż niewłaściwe stosowanie klauzul może prowadzić do problemów z danymi, które są trudne do naprawienia w późniejszym etapie rozwoju systemu.

Pytanie 4

Jak wygląda prawidłowy zapis samozamykającego się znacznika w zgodzie ze standardem języka XHTML, który odpowiada za łamanie linii?

A. </br/>
B. <br> </br>
C. <br />
D. </ br>
Zapis </ br> jest niepoprawny, ponieważ nie przestrzega zasad składni XHTML. W XHTML nie używa się ukośnika przed znacznikiem, co powoduje, że znaczniki takie jak <br> są interpretowane jako błędne. Właściwie zapisany znacznik łamania linii zawsze powinien kończyć się ukośnikiem, co oznacza zgodność z regułami języka. Z kolei <br> </br> jest redundantny, ponieważ <br> jest znacznikiem samozamykającym się, a jego zamknięcie dodatkowymi znacznikami nie ma sensu i wprowadza niepotrzebny szum w kodzie. Odpowiedź </br/> również jest błędna, ponieważ kończy się niepoprawnym zapisem, gdzie nie jest dopuszczalne użycie ukośnika przed zamknięciem znacznika, co jest sprzeczne z zasadami XHTML. Użytkownicy często mylą składnię HTML z XHTML, co prowadzi do kodu, który może wydawać się poprawny, ale nie spełnia stricte określonych zasad składniowych. Dlatego korzystanie z poprawnych znaczników jest kluczowe dla zapewnienia, że dokumenty HTML/XHTML będą działać w różnych przeglądarkach i platformach, co jest niezbędne dla ich prawidłowego wyświetlania oraz przetwarzania.

Pytanie 5

Który z przedstawionych obrazów ma zastosowany poniższy styl CSS?

img {
    padding: 5px;
    border: 1px solid grey;
    border-radius: 10px;
}
Ilustracja do pytania
A. D.
B. A.
C. B.
D. C.
Stylizacja obrazów za pomocą CSS jest kluczowym aspektem w projektowaniu stron internetowych, ponieważ wpływa na estetykę i funkcjonalność interfejsu użytkownika. Wybierając nieodpowiednią odpowiedź, można nie uwzględnić, jak różne właściwości styli wpływają na wygląd elementu. Na przykład, pomijając właściwość padding, można nie zapewnić odpowiedniej przestrzeni wokół obrazu, co skutkuje mniej czytelnym wyglądem. Użycie border bez zrozumienia jego zastosowania może prowadzić do niekompatybilności wizualnej z resztą interfejsu, ponieważ zbyt gruba lub kontrastowa ramka może odciągać uwagę użytkownika. Border-radius to kolejna kluczowa właściwość często pomijana w projektach. Brak zaokrąglenia rogów może sprawić, że elementy będą wydawały się surowe i nieprzystępne. Pominięcie tych szczegółów może również wpłynąć na responsywność i dostępność strony, ponieważ nowe standardy UX/UI kładą duży nacisk na miękkie krawędzie i przestrzeń wokół wizualnych komponentów. Dlatego zrozumienie tych koncepcji jest niezbędne do skutecznego projektowania estetycznych i funkcjonalnych stron internetowych. Właściwe zastosowanie CSS pozwala na tworzenie spójnych wizualnie i przyjaznych dla użytkownika projektów.

Pytanie 6

W SQL polecenie INSERT INTO służy do

A. dodawania danych do tabeli
B. zmiany rekordów na wskazaną wartość
C. tworzenia nowej tabeli
D. wprowadzania nowych pól do tabeli
Wprowadzenie do polecenia INSERT INTO często prowadzi do nieporozumień, szczególnie w kontekście funkcji, jakie pełni w SQL. Nieodpowiednie rozumienie tego polecenia może skutkować błędami w projektowaniu baz danych oraz w wykonywaniu operacji na danych. Na przykład, stwierdzenie, że INSERT INTO aktualizuje rekordy, jest nieprecyzyjne. W rzeczywistości, do aktualizacji istniejących danych używa się polecenia UPDATE, które zmienia wartości w określonych rekordach na podstawie podanych kryteriów. Ponadto, w SQL nie można dodawać nowych pól do tabeli za pomocą INSERT INTO; do tego służy polecenie ALTER TABLE. To ostatnie jest niezbędne, gdyż pozwala na modyfikację struktury tabeli, co jest kluczowe w przypadku zmieniających się wymagań aplikacji. Podobnie, stwierdzenie, że INSERT INTO dodaje tabelę, jest również błędne, ponieważ do tego używa się polecenia CREATE TABLE. Ważne jest, aby zrozumieć, że różne polecenia SQL mają swoje specyficzne zastosowania i nie można ich ze sobą mylić. Typowe błędy myślowe w tym zakresie mogą wynikać z nieznajomości języka SQL lub z braku zrozumienia różnicy pomiędzy operacjami na danych a operacjami na strukturze bazy danych. Zrozumienie tych podstawowych różnic jest kluczowe dla efektywnego zarządzania danymi oraz dla poprawnego projektowania baz danych.

Pytanie 7

Dostępna jest tabela ksiazki z kolumnami: tytul (typ tekstowy) oraz cena (typ liczbowy). W celu uzyskania z kwerendy SELECT jedynie tytułów, dla których cena jest mniejsza od 50 zł, należy użyć następującego zapisu:

A. SELECT tytul FROM ksiazki WHERE cena>'50 zł';
B. SELECT ksiazki FROM tytul WHERE cena<'50 zł';
C. SELECT tytul FROM ksiazki WHERE cena<50;
D. SELECT * FROM ksiazki WHERE cena<50;
Wybrana odpowiedź jest poprawna, ponieważ zapytanie SQL "SELECT tytul FROM ksiazki WHERE cena<50;" prawidłowo zwraca tylko kolumnę z tytułami książek, gdzie cena jest mniejsza od 50 zł. W kontekście pracy z bazami danych, kluczowe jest umiejętne formułowanie zapytań, które ograniczają zwracane dane do tych istotnych dla użytkownika. Użycie operatora porównania '<' w klauzuli WHERE jest zgodne z typowymi praktykami w SQL, a przy tym umożliwia precyzyjne filtrowanie danych. Warto również zwrócić uwagę, że w SQL nie potrzebujemy podawać jednostki walutowej, dlatego zapis '50 zł' jest błędny. Właściwa analityka zapytań pozwala na efektywne pozyskiwanie informacji, co ma kluczowe znaczenie w aplikacjach bazodanowych. W praktyce, umiejętność selekcji danych za pomocą zapytań jest podstawą pracy analityka danych oraz programisty.

Pytanie 8

Czemu odpowiada pojęcie „krotka” w relacyjnej bazie danych?

A. tabeli
B. kolumnie
C. relacji
D. wierszowi
Pozostałe pojęcia to inne elementy. Relacja (tabela) to cały zbiór krotek, a kolumna (atrybut) opisuje pojedynczą cechę. Pojedynczy rekord, czyli krotka, odpowiada wierszowi.

Pytanie 9

Jak nazywa się sposób udostępniania bazy danych w Microsoft Access, który obejmuje wszystkie obiekty bazy znajdujące się na dysku sieciowym i używane jednocześnie przez różne osoby?

A. folderu sieciowego
B. witryny programu SharePoint
C. dzielonej bazy danych
D. serwera bazy danych
Wybór innych opcji, takich jak serwer bazy danych, dzielona baza danych czy witryna programu SharePoint, może prowadzić do nieporozumień na temat tego, jak działają mechanizmy udostępniania w Microsoft Access. Serwer bazy danych, na przykład, odnosi się do systemu zarządzania bazami danych, który obsługuje skomplikowane operacje i dużą ilość danych, ale nie jest tożsamy z lokalizacją danych na dysku sieciowym, co ogranicza jego zastosowanie w prostych zespołowych projektach. Z kolei dzielona baza danych to termin ogólny, który może być mylony z udostępnianiem danych na poziomie lokalnym lub zdalnym, ale nie precyzuje, jak obiekty są współdzielone przez użytkowników. Witryna programu SharePoint z kolei służy do przechowywania dokumentów i zarządzania projektami w chmurze, co jest innym podejściem niż tradycyjne foldery sieciowe. W praktyce, wybierając folder sieciowy, użytkownicy mogą łatwiej współpracować, dzielić się plikami i korzystać z prostoty, jaką zapewnia dostęp bez konieczności zaawansowanego konfigurowania serwerów czy baz danych. Kluczowe jest zrozumienie, że odpowiednie podejście do udostępniania danych powinno być zgodne z potrzebami zespołu i charakterem realizowanych projektów.

Pytanie 10

Pętla zapisana w języku PHP wstawi do tablicy liczby:

$x = 0;
for ($i = 0; $i < 10; $i++)
{
    $tabl[$i] = $x;
    $x = $x + 10;
}
A. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
B. 0, 10, 20, 30, 40, 50, 60, 70, 80, 90
C. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
D. 10, 20, 30, 40, 50, 60, 70, 80, 90, 100
Gratulacje, Twoja odpowiedź jest poprawna. Pętla zaczyna się od $x = 0 i wykonuje się 10 razy ($i od 0 do 9). W każdej rundzie pętli, do tablicy $tabl dodawana jest aktualna wartość $x, a następnie $x jest zwiększane o 10. To jest tzw. pętla for, która jest jednym z najbardziej podstawowych mechanizmów programowania. Dzięki tej pętli możemy kontrolować ilość iteracji, które chcemy wykonać. W tym przypadku, iteracja odbywa się 10 razy, za każdym razem inkrementując $x o 10. Niezależnie od tego, czy korzystasz z PHP, czy innego języka, konstrukcje pętli są niezwykle ważne i warto zrozumieć ich działanie. PHP, jak wiele innych języków programowania, posiada wiele różnych typów pętli - for, while, do-while, each, które mają swoje szczególne zastosowania w zależności od kontekstu.

Pytanie 11

W programie do edytowania grafiki rastrowej zmieniono krzywe kolorów w sposób zaznaczony ramką na pokazanym obrazie. Jakie jest to działanie?

Ilustracja do pytania
A. rozjaśnienie całego obrazu
B. przyciemnienie całego obrazu
C. wygładzenie krawędzi na obrazie
D. modyfikację najjaśniejszych i najciemniejszych kolorów obrazu
Rozjaśnienie całego obrazu za pomocą krzywych kolorów polegałoby na proporcjonalnym przesunięciu całej krzywej w górę, co nie jest widoczne na załączonym obrazie. W rzeczywistości, rozjaśnianie zmienia globalnie wartości tonów, co może prowadzić do utraty szczegółów w jasnych partiach, jeśli nie zostanie wykonane z należytą uwagą. Z kolei przyciemnienie obrazu wymagałoby przesunięcia krzywej w dół, co również nie jest widoczne w przypadku opisanym na obrazku. Przyciemnianie może skutkować zanikaniem szczegółów w cieniach, co jest niepożądane w profesjonalnej obróbce obrazu. Wygładzenie krawędzi na obrazie odnosi się do operacji takich jak rozmycie czy redukcja szumów, które nie są realizowane poprzez modyfikację krzywych kolorów. Wygładzanie to operacja stosowana w celu zmniejszenia szumów czy zmiękczenia szczegółów, często realizowana przy użyciu filtrów i narzędzi takich jak maski wyostrzające. Krzywe kolorów służą do manipulacji tonalnych i kolorystycznych, co jest zupełnie inną operacją. Typowym błędem jest mylenie narzędzi służących do ogólnej edycji obrazu z bardziej precyzyjnymi narzędziami tonalnymi. Wiedza o tym, jak każde narzędzie wpływa na obraz, jest kluczowa w profesjonalnej edycji graficznej, a niepoprawne zrozumienie ich funkcji może prowadzić do niepożądanych efektów wizualnych oraz strat w jakości obrazu.

Pytanie 12

Jak można zmodyfikować nałożone na siebie fragmenty obrazu, nie zmieniając innych elementów?

A. Kanał przezroczystości
B. Warstwy
C. Wykres histogramu
D. Przycinanie
Warstwy są kluczowym elementem w edycji grafiki komputerowej, umożliwiając precyzyjne zarządzanie różnymi elementami obrazu. Dzięki zastosowaniu warstw, użytkownik może na przykład oddzielić tło od obiektów na pierwszym planie, co pozwala na edytowanie jednego z tych elementów bez wpływu na resztę kompozycji. Zastosowanie warstw jest szczególnie przydatne w programach graficznych, takich jak Adobe Photoshop, GIMP czy CorelDRAW, gdzie umożliwia łatwą manipulację oraz efektywną organizację projektu. Dzięki warstwom można również stosować różne efekty i style, takie jak cienie, przezroczystości czy gradienty, co pozwala na stworzenie bardziej złożonych i interesujących grafik. Warto również zauważyć, że korzystanie z warstw jest zgodne z najlepszymi praktykami w branży, jako że sprzyja to lepszej organizacji pracy oraz ułatwia wprowadzanie zmian w projekcie. Uczy to również umiejętności przydatnych w pracy zespołowej, gdzie różne osoby mogą pracować nad różnymi warstwami równocześnie, co zwiększa efektywność i kreatywność procesu twórczego.

Pytanie 13

Wskaż polecenie, które zostało opisane w ramce.

Dla każdego przebiegu pętli aktualna wartość elementu tablicy jest przypisywana do zmiennej, a wskaźnik tablicy jest przesuwany o jeden, aż do osiągnięcia ostatniego elementu tablicy
A. foreach
B. next
C. while
D. for
Instrukcja 'foreach' jest używana do iteracji po elementach zbioru, takich jak tablice lub kolekcje, w sposób bardziej deklaratywny i zwięzły niż tradycyjne pętle 'for'. W wielu językach programowania, takich jak C#, Java czy PHP, pętla 'foreach' pozwala automatycznie przechodzić przez każdy element kolekcji, przypisując go do zmiennej tymczasowej bez konieczności jawnego zarządzania indeksem. Jest to szczególnie przydatne, gdy chcemy po prostu przetwarzać elementy jednej po drugiej, nie martwiąc się o ich indeksy. Przykładowo, w C# można użyć składni: 'foreach (var item in collection)', gdzie 'collection' jest kolekcją, a 'item' to zmienna reprezentująca aktualny element. Takie podejście jest uważane za standardową praktykę w sytuacjach, gdzie chcemy tylko odczytywać wartości. Korzystanie z 'foreach' sprzyja czytelności kodu i minimalizuje ryzyko błędów związanych z obsługą indeksów, co jest zgodne z dobrymi praktykami programistycznymi.

Pytanie 14

char str1[30] = 'Ala ma kota';
printf("%s", str1); 
Jakie jest źródło błędu w prezentowanym kodzie napisanym w języku C++?
A. W funkcji printf nie można używać formatowania %s.
B. Napis powinien być umieszczony w cudzysłowie.
C. Napis powinien mieć dokładnie 30 znaków.
D. Do funkcji printf przekazano za mało argumentów.
Odpowiedź wskazująca, że napis powinien być ujęty w cudzysłów jest poprawna, ponieważ w języku C/C++ napisy (łańcuchy znaków) muszą być ujęte w podwójne cudzysłowy, aby zostały prawidłowo zinterpretowane przez kompilator. W przedstawionym kodzie, zamiast użycia pojedynczych cudzysłowów, które są przeznaczone do definiowania pojedynczych znaków (char), należy użyć podwójnych, aby zdefiniować napis jako tablicę znaków. Takie podejście jest zgodne z standardami języka C i C++, gdzie łańcuchy znaków są implementowane jako tablice znaków zakończone znakiem null ('\0'). Przykładowo, poprawny sposób zapisu to: char str1[30] = "Ala ma kota";. Stosowanie odpowiednich cudzysłowów jest kluczowe w programowaniu, ponieważ może zapobiegać wielu błędom kompilacji oraz ułatwiać późniejszą edycję i zarządzanie kodem. Warto również pamiętać, że dobrym zwyczajem jest stosowanie tablic odpowiedniej wielkości, aby uniknąć nadpisywania pamięci, co może prowadzić do nieprzewidywalnych zachowań programu.

Pytanie 15

Program FileZilla może być użyty do

A. zmiany domyślnych ustawień hostingu dla strony internetowej
B. walidacji strony internetowej
C. publikacji strony internetowej na serwerze
D. zarządzania bazami danych strony internetowej
Wybór odpowiedzi, która nie odnosi się do publikacji strony internetowej na serwerze, jest typowym błędem związanym z myleniem różnych funkcji i zastosowań technologii internetowych. Walidacja strony internetowej, choć ważna, odnosi się do sprawdzania poprawności kodu HTML oraz zgodności z standardami W3C, co nie ma bezpośredniego związku z przesyłaniem plików na serwer. Użytkownicy często zakładają, że weryfikacja poprawności ich kodu jest wystarczająca do publikacji, co jest nieścisłe, ponieważ nawet poprawny kod nie będzie dostępny online bez przesłania na serwer. Zmiana domyślnych ustawień hostingu również nie ma związku z funkcjonalnością FileZilla, ponieważ takie zmiany zazwyczaj dokonuje się w panelu zarządzania hostingiem, a nie przez klienta FTP. Ponadto zarządzanie bazami danych, które jest inną kluczową częścią rozwoju aplikacji webowych, wymaga użycia narzędzi takich jak PHPMyAdmin czy konsola SQL, a nie narzędzi do przesyłania plików. Zrozumienie tych różnic jest niezbędne dla efektywnego korzystania z technologii webowych i unikania typowych pułapek, które mogą prowadzić do błędnych wniosków oraz problemów w procesie publikacji stron internetowych.

Pytanie 16

W tabeli artykuly (kolumny: nazwa, typ, producent, cena) chcemy wypisać nazwy artykułów typu „pralka” o cenie od 1000 do 1500 zł. Które zapytanie jest poprawne?

A.
SELECT nazwa FROM artykuly WHERE typ="pralka" OR cena BETWEEN 1000 AND 1500
B.
SELECT nazwa FROM artykuly WHERE typ="pralka" OR cena BETWEEN 1000 OR 1500
C.
SELECT nazwa FROM artykuly WHERE typ="pralka" AND cena BETWEEN 1000 AND 1500
D.
SELECT nazwa FROM artykuly WHERE typ="pralka" AND cena FROM 1000 TO 1500
Aby spełnione były oba wymagania naraz - typ i zakres ceny - warunki łączy się operatorem AND. Zakres wartości zapisuje się przez BETWEEN dolna AND górna, która obejmuje też końce przedziału. Poprawne zapytanie to więc SELECT nazwa FROM artykuly WHERE typ="pralka" AND cena BETWEEN 1000 AND 1500. Dlatego ta odpowiedź jest właściwa.

Pytanie 17

Element <meta charset="utf-8"> definiuje metadane odnoszące się do strony internetowej dotyczące

A. języka używanego na stronie
B. słów kluczowych
C. opisu witryny
D. kodowania znaków
Element <meta charset="utf-8"> jest kluczowym składnikiem metadanych w dokumentach HTML, który określa sposób kodowania znaków używanych na stronie internetowej. Użycie kodowania UTF-8, które jest najczęściej stosowanym standardem, pozwala na wyświetlanie różnorodnych znaków z różnych języków, w tym znaków diakrytycznych. Dzięki temu, strony internetowe mogą być dostępne dla szerokiego grona użytkowników bez obaw o błędy związane z wyświetlaniem tekstu. Kiedy przeglądarka internetowa napotyka ten element, wie, że powinna interpretować zawartość dokumentu zgodnie z określonym kodowaniem. Jest to szczególnie ważne w kontekście globalizacji internetu, gdzie treści mogą być tworzone w wielu językach. Ustalając odpowiednie kodowanie, programiści minimalizują ryzyko wystąpienia problemów z wyświetlaniem, takich jak zamienione znaki czy nieczytelne fragmenty tekstu. Właściwe ustawienie metadanych jest zgodne z wytycznymi W3C oraz zaleceniami dla twórców stron internetowych, co czyni ten element niezbędnym w każdej współczesnej witrynie.

Pytanie 18

Kolor zapisany w notacji szesnastkowej #0000FF to:

A. niebieski
B. czerwony
C. czarny
D. zielony
Zapis szesnastkowy koloru ma postać #RRGGBB, gdzie każda para cyfr (00-FF) to składowa: czerwona, zielona i niebieska. W #0000FF składowe R i G są zerowe (00), a niebieska maksymalna (FF = 255), więc powstaje czysty niebieski. To odpowiednik zapisu rgb(0, 0, 255). Znajomość skrajnych wartości (00 i FF) pozwala szybko rozpoznać kolory podstawowe. Dlatego #0000FF to niebieski.

Pytanie 19

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. kolejne liczby od x do 0
B. liczby wprowadzane z klawiatury, aż do momentu wprowadzenia wartości x
C. kolejne liczby od 0 do x-1
D. przypadkowe liczby z zakresu (0, x)
Analizując niepoprawne odpowiedzi, można zauważyć kilka błędnych założeń. Pierwsze z nich zakłada, że kod ma za zadanie wyświetlać liczby wczytywane z klawiatury, aż wczytana zostanie wartość x. Nie jest to poprawne, ponieważ nie ma tu żadnej interakcji z użytkownikiem - wszystko odbywa się automatycznie na podstawie zadeklarowanej wartości x. Druga błędna odpowiedź sugeruje, że liczby są wyświetlane od x do 0, co jest nieprawidłowe, ponieważ pętla zaczyna od 0 i kończy na x-1. Trzecia niepoprawna odpowiedź sugeruje, że kod generuje losowe liczby z przedziału (0, x). Nie jest to prawda, ponieważ nie ma tu żadnego mechanizmu generowania liczb losowych. To błędne przypuszczenie wynika prawdopodobnie z niewłaściwego zrozumienia mechanizmu pętli i operacji na zmiennych. Wszystkie te błędne odpowiedzi pokazują, jak ważne jest prawidłowe rozumienie podstawowych konstrukcji języka programowania i mechanizmów sterowania przepływem danych.

Pytanie 20

W języku PHP znak "//" wskazuje na

A. operator dzielenia całkowitego
B. początek komentarza jednoliniowego
C. operator alternatywny
D. początek skryptu
W języku PHP znak '//' oznacza początek komentarza jednoliniowego. Komentarze w PHP są istotnym elementem kodu, pozwalającym programistom na dodawanie adnotacji, które nie wpływają na wykonywanie skryptu. Komentarze są niezwykle pomocne, gdyż umożliwiają wyjaśnienie złożonych fragmentów kodu, co ułatwia jego dalsze utrzymanie i rozwijanie. Dzięki używaniu '//', programista może opisać, co dany fragment kodu robi, dla siebie lub innych osób przeglądających kod w przyszłości. Przykład zastosowania: jeśli mamy kod 'echo "Hello World!";', możemy dodać komentarz wyjaśniający: '// Wyświetla tekst Hello World!'. Warto zaznaczyć, że PHP pozwala także na korzystanie z komentarzy wieloliniowych, które zaczynają się od '/**' i kończą na '*/'. Stosowanie komentarzy jest zgodne z najlepszymi praktykami programistycznymi, które zalecają dokumentowanie kodu oraz poprawne jego komentowanie, co jest częścią standardów kodowania, takich jak PSR-1 oraz PSR-2, promujących czytelność i spójność w kodzie.

Pytanie 21

Przy założeniu, że nie istnieją inne definicje, jakie skutki będzie miało poniższe formatowanie CSS?

<style> td {padding: 30px; } </style>

<td style="padding: 10px;">Anna</td>
<td>Ewa</td>
A. marginesy wewnętrzne wszystkich komórek wyniosą 30 px
B. margines wewnętrzny komórki z napisem Anna wyniesie 10 px, a z napisem Ewa – 30 px
C. marginesy wewnętrzne wszystkich komórek wyniosą 10 px
D. margines wewnętrzny komórki z napisem Anna wyniesie 30 px, a z napisem Ewa – 10 px
Odpowiedź jest poprawna, ponieważ w kodzie HTML zastosowano bezpośrednie nadpisanie stylu dla komórki z napisem Anna. Chociaż w sekcji style zdefiniowano, że wszystkie komórki td mają padding 30px, to w przypadku komórki Anna zastosowano style inline, które mają wyższy priorytet i nadpisują ustalone wcześniej wartości. W rezultacie padding dla komórki Anna wynosi 10px. Natomiast dla pozostałych komórek, w tym komórki z napisem Ewa, obowiązuje reguła zdefiniowana globalnie w sekcji style, czyli padding wynosi 30px. Jest to przykład specyficzności w CSS, gdzie style inline są bardziej specyficzne niż style w sekcji style. W praktyce ważne jest, aby rozumieć hierarchię i specyficzność CSS, ponieważ pozwala to na skuteczne zarządzanie stylami i unikanie niezamierzonych zmian w wyglądzie strony. Dobra praktyka nakazuje unikać styli inline na rzecz zewnętrznych arkuszy stylów, co ułatwia zarządzanie kodem i czyni go bardziej czytelnym oraz łatwiejszym w utrzymaniu. Warto też stosować metodologie takie jak BEM, które pomagają w organizacji kodu CSS.

Pytanie 22

Jakiego rodzaju oprogramowanie narzędziowe jest wymagane, aby użytkownik mógł przeprowadzać operacje na zebranych danych?

A. Klucz obcy
B. Otwarty mechanizm komunikacji bazy danych
C. System Zarządzania Bazą Danych (SZBD)
D. Obiektowy System Zarządzania Bazą Danych
Obiektowy System Zarządzania Bazą Danych, klucz obcy oraz otwarty mechanizm komunikacji bazy danych to pojęcia związane z zarządzaniem danymi, jednak nie spełniają one roli SZBD. Obiektowe systemy zarządzania bazą danych (OODBMS) różnią się od tradycyjnych SZBD tym, że przechowują dane w formie obiektów zgodnych z paradygmatem programowania obiektowego. Choć OODBMS mogą być użyteczne w specyficznych zastosowaniach, ich zastosowanie nie jest uniwersalne jak w przypadku SZBD. Klucz obcy to natomiast termin odnoszący się do atrybutu w tabeli, który wskazuje na klucz główny innej tabeli, co pozwala na tworzenie relacji między danymi, ale klucz obcy nie jest oprogramowaniem i nie umożliwia samodzielnego zarządzania danymi. Z kolei otwarty mechanizm komunikacji bazy danych odnosi się do protokołów i standardów, które umożliwiają współpracę między różnymi systemami, jednak również nie spełnia funkcji SZBD. Typowe błędy myślowe prowadzące do takich wniosków to brak zrozumienia różnicy między pojęciem systemu zarządzania bazą danych a specyficznymi elementami, takimi jak klucze czy mechanizmy komunikacji. W tej sytuacji kluczowe jest zrozumienie, że aby móc wykonywać operacje na danych, konieczne jest zainstalowanie odpowiedniego SZBD, które zapewnia pełną funkcjonalność w zarządzaniu danymi.

Pytanie 23

Jaką funkcję w języku PHP należy wykorzystać, aby nawiązać połączenie z bazą danych o nazwie zwierzaki?

A. $polacz = server_connect('localhost', 'root','','zwierzaki');
B. $polacz = sql_connect('localhost', 'root','','zwierzaki');
C. $polacz = db_connect('localhost', 'root','','zwierzaki');
D. $polacz = mysqli_connect('localhost', 'root','','zwierzaki');
Odpowiedzi, które nie korzystają z funkcji mysqli_connect, bazują na nieaktualnych lub niepoprawnych założeniach dotyczących połączeń z bazą danych w PHP. Na przykład, funkcja db_connect nie jest standardową funkcją dostępną w PHP, co sprawia, że jej użycie prowadzi do błędu. Użytkownicy mogą sądzić, że ta funkcja działa w podobny sposób jak mysqli_connect, lecz w rzeczywistości jest to wytwór nieformalny lub nieprawidłowy, który nie odpowiada standardom języka PHP. Z kolei sql_connect jest często mylona z mysqli_connect, jednak również nie istnieje w dokumentacji PHP jako wbudowana funkcja, co czyni jej stosowanie błędnym. Co więcej, server_connect to kolejna niepoprawna koncepcja, ponieważ nie ma takiej funkcji w PHP. Użytkownicy mogą myśleć, że nazewnictwo funkcji jest dowolne, ale w rzeczywistości język PHP ma ustalone standardy, które muszą być przestrzegane. Dlatego właściwe zrozumienie narzędzi i funkcji dostępnych w PHP jest kluczowe dla efektywnego programowania i unikania typowych błędów, które mogą wynikać z nieznajomości dokumentacji oraz z zastosowania niepoprawnych funkcji.

Pytanie 24

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

A.
int fun1(float a);
B.
void fun1(int a);
C.
float fun1(void a);
D.
float fun1(int a);
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 25

W formularzu wartość z pola input o typie number została przypisana do zmiennej a, a następnie przetworzona w skrypcie JavaScript w sposób poniższy

var x = parseInt(a);

Jakiego typu jest zmienna x?

A. napisowego.
B. zmiennoprzecinkowego.
C. liczbowe, całkowite.
D. NaN
Wybór odpowiedzi związanej z NaN jest wynikiem nieporozumienia dotyczącego działania funkcji <span>parseInt()</span> oraz podstawowych typów danych w JavaScript. Kiedy wartość wprowadzona do zmiennej <span>a</span> jest liczbą, a funkcja <span>parseInt()</span> jest używana, to jest mało prawdopodobne, aby wynik był <span>NaN</span>. <span>NaN</span> (Not-a-Number) zwracane jest wtedy, gdy próbujemy przekonwertować na liczbę coś, co nie jest liczbowym ciągiem znaków, jak np. tekst. Na przykład, jeśli użytkownik wpisze "abc" do pola <span>input</span>, wówczas <span>parseInt("abc")</span> zwróci <span>NaN</span>, co jest właściwe. Odpowiedzi dotyczące typów napisowych oraz zmiennoprzecinkowych są również błędne, ponieważ <span>parseInt()</span> nigdy nie zwraca wartości napisowej, a jego celem jest zwrócenie liczby całkowitej. W kontekście zmiennoprzecinkowym, używamy funkcji <span>parseFloat()</span>, aby uzyskać liczbę z ułamkiem. Zdarzenia te często prowadzą do błędnego rozumienia typów danych w JavaScript. Warto zatem zwrócić uwagę na to, że typ danych (w tym przypadku liczba całkowita) jest kluczowym elementem programowania, a dobre praktyki wymagają ścisłego przestrzegania typowania i konwersji danych w celu uniknięcia nieoczekiwanych wyników w kodzie.

Pytanie 26

Aby zmienić strukturę już istniejącej tabeli przy użyciu zapytania SQL, należy użyć kwerendy

A. CREATE TABLE
B. UPDATE
C. ALTER TABLE
D. INSERT INTO
Odpowiedź 'ALTER TABLE' jest poprawna, ponieważ ta kwerenda jest używana do modyfikacji struktury istniejącej tabeli w bazach danych SQL. Dzięki komendzie ALTER TABLE można dodawać nowe kolumny, usuwać istniejące kolumny, zmieniać typy danych kolumn, a także modyfikować ograniczenia (constraints) dotyczące tabeli. Dla przykładu, aby dodać nową kolumnę 'wiek' do tabeli 'pracownicy', można użyć następującej kwerendy: 'ALTER TABLE pracownicy ADD wiek INT;'. Warto również wspomnieć, że ALTER TABLE może być używane w różnych systemach zarządzania bazami danych, takich jak MySQL, PostgreSQL czy SQL Server, co czyni go uniwersalnym narzędziem w pracy z bazami danych. Podczas modyfikacji tabeli należy jednak zachować ostrożność, aby nie wprowadzić niezgodności w aplikacjach korzystających z tej tabeli. Praktyką zalecaną jest wykonywanie kopii zapasowej danych przed wprowadzeniem większych zmian. Zrozumienie tej komendy i jej zastosowania jest kluczowe dla efektywnego zarządzania danymi w systemach bazodanowych.

Pytanie 27

Po wykonaniu instrukcji języka JavaScript  x = Math.ceil(2.4); wartość zmiennej x będzie wynosić

A. 4
B. 2
C. 3
D. 8
W tym przykładzie kluczowe jest zrozumienie, co dokładnie robi funkcja Math.ceil() w JavaScript. Ta funkcja zawsze zaokrągla liczbę w górę do najbliższej liczby całkowitej, i to niezależnie od tego, jak mała jest część ułamkowa. Dla wartości 2.4 najbliższa liczba całkowita „w górę” to 3, więc po wykonaniu instrukcji x = Math.ceil(2.4); zmienna x przyjmie wartość 3. Nie interesuje nas tu klasyczne zaokrąglanie matematyczne do „najbliższej” liczby, tylko zawsze w stronę dodatniej nieskończoności.
W standardzie ECMAScript Math.ceil() jest jedną z podstawowych funkcji do pracy z liczbami, obok Math.floor() (zaokrąglenie w dół) i Math.round() (zaokrąglenie do najbliższej liczby całkowitej). Dla porównania: Math.floor(2.4) da 2, Math.round(2.4) też da 2, a tylko Math.ceil(2.4) zwróci 3. W praktyce webowej takie funkcje są często używane np. przy dzieleniu elementów na strony (paginacja), liczeniu ilości stron w wynikach wyszukiwania, obliczaniu liczby wierszy w siatce (grid), czy przy przeliczaniu miejsc w koszyku, kiedy musisz zawsze „doliczyć” pełną jednostkę.
Moim zdaniem warto od razu wyrobić sobie nawyk, żeby przy liczbach zmiennoprzecinkowych w JavaScript pamiętać o różnicach między ceil, floor i round, bo to są podstawowe narzędzia przy każdym kalkulatorze, module cenowym, przeliczaniu czasu trwania, dzieleniu zadań na porcje itd. Dobra praktyka jest też taka, żeby zawsze jasno nazywać zmienne, np. totalPages = Math.ceil(itemsCount / itemsPerPage); – od razu widać, że chodzi o zaokrąglenie w górę.
Podsumowując: poprawna odpowiedź to 3, bo Math.ceil() zawsze przesuwa wynik do najbliższej większej lub równej liczby całkowitej. Dla 2.4 jest to właśnie 3.

Pytanie 28

Jakie jest odstępstwo pomiędzy poleceniem DROP TABLE a TRUNCATE TABLE?

A. Obydwa polecenia usuwają tabelę wraz z jej zawartością, jednak tylko TRUNCATE TABLE można cofnąć
B. DROP TABLE usuwa tabelę, a TRUNCATE TABLE eliminuje wszystkie dane, zostawiając pustą tabelę
C. Obydwa polecenia usuwają tylko zawartość tabeli, ale tylko DROP TABLE może być przywrócone
D. DROP TABLE usuwa tabelę, natomiast TRUNCATE TABLE modyfikuje dane w niej spełniające określony warunek
Odpowiedź jest prawidłowa, ponieważ polecenie DROP TABLE całkowicie usuwa tabelę z bazy danych, łącznie z jej strukturą i danymi. Nie można jej później przywrócić, co oznacza, że wszelkie dane w niej zawarte zostaną na stałe utracone. Z kolei TRUNCATE TABLE jest poleceniem, które usuwa jedynie dane wewnątrz tabeli, ale sama tabela i jej struktura pozostają nienaruszone. Po wykonaniu TRUNCATE TABLE tabela staje się pusta, a jej definicja oraz wszystkie indeksy pozostają w bazie danych. Przykładowo, jeśli mamy tabelę 'Klienci' z danymi klientów, wykonanie TRUNCATE TABLE Klienci spowoduje, że tabela pozostanie, ale wszystkie rekordy zostaną usunięte. Wywołanie tych poleceń ma różne zastosowanie w praktyce; DROP TABLE można wykorzystać, gdy nie potrzebujemy tabeli, natomiast TRUNCATE TABLE jest przydatne, gdy chcemy szybko usunąć wszystkie dane z tabeli, zachowując jej strukturę dla przyszłych operacji.

Pytanie 29

Której właściwości CSS użyć, aby ustawić WYSOKOŚĆ grafiki na stronie?

A.
width
B.
margin
C.
padding
D.
height
Wysokość elementu (w tym grafiki) ustawia w CSS właściwość height, np. height: 200px;. Dlatego wysokość grafiki ustawia height.

Pytanie 30

Podczas przygotowywania grafiki do umieszczenia na stronie internetowej konieczne jest wycięcie tylko pewnego fragmentu. Jak nazywa się ta czynność?

A. zmiana rozmiaru.
B. kadrowanie.
C. łączanie warstw.
D. odwracanie obrazu.
Kadrowanie to taka technika, która pomaga nam lepiej uchwycić to, co najważniejsze w obrazie. Wycinając niektóre fragmenty grafiki, skupiamy uwagę na tym, co naprawdę się liczy. Dobrze jest to mieć na uwadze, zwłaszcza przy zdjęciach portretowych, gdzie chcemy, żeby wzrok przyciągała twarz modela, a nie jakieś niepotrzebne tło. Kiedy kadrujemy, warto pamiętać o takich zasadach jak zasada trzecich, bo to pomaga zrobić fajną kompozycję. Można to robić w wielu programach graficznych, jak na przykład Adobe Photoshop czy GIMP. Tak w ogóle, dobrze jest dbać o proporcje i rozdzielczość, żeby obraz nie stracił na jakości. Gadżetem kadrowania można się też posługiwać w projektowaniu stron www, bo odpowiednie wybory graficzne poprawiają estetykę i funkcjonalność strony.

Pytanie 31

Której kwerendy SQL należy użyć, aby utworzyć tabelę samochod z atrybutami marka, model, cena, gdzie marka i model są typu tekstowego, natomiast cena jest liczbą rzeczywistą typu stałoprzecinkowego?

A. CREATE TABLE samochod VALUES (marka CHAR(30), model CHAR(30), cena DOUBLE);
B. CREATE TABLE samochod (marka INT(30), model INT(30), cena DECIMAL(2,15));
C. CREATE TABLE samochod (marka CHAR(30), model CHAR(30), cena DECIMAL(15,2));
D. CREATE TABLE samochod VALUES (marka CHAR(30), model CHAR(30), cena FLOAT);
W niepoprawnych propozycjach odpowiedzi widać kilka typowych nieporozumień związanych z SQL-em i typami danych. Po pierwsze, składnia CREATE TABLE nie używa słowa VALUES do definiowania struktury tabeli. VALUES pojawia się przy wstawianiu danych (INSERT INTO ... VALUES ...), a nie przy tworzeniu tabeli. Jeśli po nazwie tabeli pojawia się VALUES, to jest to od razu czerwone światełko, że ktoś pomieszał tworzenie struktury z wstawianiem rekordów. Z mojego doświadczenia to bardzo częsty błąd u osób, które dopiero zaczynają i próbują intuicyjnie łączyć znane słowa kluczowe.
Druga sprawa to dobór typów danych. W zadaniu wyraźnie jest mowa o atrybutach tekstowych dla marka i model. Zastosowanie INT(30) oznacza typ liczbowy całkowity, a nie tekstowy. Nawet jeśli ktoś myśli, że w nawiasie wpisuje się „ilość znaków”, to w przypadku INT(30) tak to nie działa – ten nawias w MySQL ma inne znaczenie (szerokość wyświetlania), a w nowoczesnych wersjach i tak jest ignorowany. Marka samochodu typu „Audi” czy „Toyota” po prostu nie zmieści się w typie liczbowym, bo to nie jest reprezentacja tekstowa.
Trzeci istotny błąd dotyczy kolumny cena. Zadanie wymaga liczby rzeczywistej typu stałoprzecinkowego. Typy FLOAT czy DOUBLE są typami zmiennoprzecinkowymi binarnymi, które przechowują przybliżone wartości i mogą wprowadzać drobne błędy zaokrągleń. To jest nieakceptowalne przy pieniądzach, bo kwoty muszą się dokładnie zgadzać co do grosza. Dlatego stosuje się DECIMAL lub NUMERIC, gdzie jawnie podajemy precyzję i skalę, np. DECIMAL(15,2). Odwrócenie tych wartości, jak w DECIMAL(2,15), jest bez sensu w kontekście cen – oznaczałoby maksymalnie dwie cyfry łącznie i piętnaście po przecinku, co w praktyce nie ma zastosowania. Takie konstrukcje biorą się zwykle z mechanicznego wpisywania liczb bez zrozumienia, co oznacza precyzja i skala. Dobra praktyka w branży jest taka, że dla kwot pieniężnych używa się DECIMAL z 2 miejscami po przecinku, ewentualnie 3–4 w specyficznych zastosowaniach, a tekst przechowuje się w typach znakowych, nie liczbowych. Rozumienie tych zasad bardzo ułatwia późniejsze projektowanie sensownych schematów baz danych.

Pytanie 32

W CSS zapis selektora

p > i { color: red;} 
wskazuje, że kolorem czerwonym będzie wyróżniony
A. tylko ten tekst znacznika <p>, który ma przypisaną klasę o nazwie i
B. jedynie tekst w znaczniku <i>, który znajduje się bezpośrednio wewnątrz znacznika <p>
C. każdy tekst w znaczniku <p> z wyjątkiem tych w znaczniku <i>
D. wszystkie teksty w znaczniku <p> lub każdy tekst w znaczniku <i>
Odpowiedzi, które nie uznają znaczenia operatora > oraz kontekstu, w jakim elementy <i> są umieszczone, mogą prowadzić do błędnych wniosków. Przykładowo, stwierdzenie, że każdy tekst w znaczniku <p> za wyjątkiem tych w znaczniku <i> zostanie sformatowany, jest niezgodne z zasadami działania CSS, ponieważ selektor ten nie wyklucza jedynie <i>, lecz odnosi się do hierarchii struktury DOM. W praktyce, jeśli <i> nie jest bezpośrednim dzieckiem <p>, to nie będzie objęte regułą. Z kolei pomylenie selektorów może skutkować tym, że nie osiągniemy zamierzonych efektów stylizacji, co jest częstym problemem w projektach webowych. Ponadto, odpowiedzi sugerujące, że selektor dotyczy wszystkich elementów <p> lub że dotyczy on klasy <i>, wynikają z niepełnego zrozumienia podstaw CSS. Należy pamiętać, że klasy są definiowane w osnowie HTML, a nie w kontekście selektorów bezpośrednich. Właściwe zrozumienie selektorów jest kluczowe dla efektywnego stylizowania i organizacji kodu, a także dla osiągnięcia zamierzonych efektów wizualnych na stronach internetowych.

Pytanie 33

bool gotowe=true;
cout<<gotowe;
Jakie będzie wyjście w wyniku wykonania podanych poleceń?

A. 1
B. Tak
C. 0
D. Nie
Po wykonaniu poleceń na ekranie zobaczysz '1'. Zmienna 'gotowe' jest ustawiona jako typ bool i ma wartość true. W C++ typ bool może mieć dwie wartości: true lub false. Kiedy zmienną bool wyświetlamy przy użyciu cout, to 'true' pokazuje się jako '1', a 'false' jako '0'. To jest zgodne z zasadami C++, które mówią, że wartości logiczne są traktowane jako liczby całkowite. Z mojego doświadczenia, zrozumienie tego, jak C++ interpretuje różne typy danych, jest naprawdę istotne w programowaniu, bo pomaga lepiej ogarnąć działanie kodu, a także poprawić algorytmy. Na przykład, jeśli programista ma świadomość, że true to 1, może wykorzystać tę wiedzę przy operacjach na liczbach lub podczas tworzenia warunków. To fajnie działa, zwłaszcza gdy zaczynamy tworzyć bardziej złożone struktury danych.

Pytanie 34

Którą jednostką wyraża się rozdzielczość obrazu na ekranie monitora (liczba pikseli na cal)?

A. spi
B. lpi
C. dpi
D. ppi
Pozostałe jednostki dotyczą innych dziedzin. dpi (dots per inch) opisuje rozdzielczość DRUKU (punkty drukarki). lpi (lines per inch) to gęstość rastra w poligrafii. spi (samples per inch) odnosi się do skanowania. Piksele na cal na ekranie to ppi.

Pytanie 35

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. tr:hover { background-color: Pink; }
B. tr { background-color: Pink; }
C. td, th { background-color: Pink; }
D. tr:active { background-color: Pink; }
Poprawny selektor to tr:hover { background-color: Pink; }, bo dokładnie opisuje sytuację pokazaną na filmie: efekt pojawia się dopiero po najechaniu kursorem na cały wiersz tabeli. Pseudo-klasa :hover w CSS służy właśnie do definiowania stylów w momencie, gdy użytkownik „najeżdża” myszką na dany element. Jeśli więc chcemy, żeby podświetlał się cały rząd tabeli, logiczne i zgodne z dobrymi praktykami jest przypięcie efektu do znacznika tr, a nie do pojedynczych komórek.

W praktyce taki zapis stosuje się bardzo często w interfejsach webowych: w panelach administracyjnych, listach zamówień, tabelach z uczniami, produktami, logami systemowymi itd. Dzięki temu użytkownik łatwiej śledzi, który wiersz właśnie ogląda. To niby detal, ale z punktu widzenia UX robi sporą różnicę. Z mojego doświadczenia to jeden z tych prostych trików CSS, które od razu poprawiają „odczuwalną” jakość strony.

Ważne jest też to, że :hover jest częścią standardu CSS (opisane m.in. w specyfikacji CSS Selectors Level 3/4) i działa w praktycznie wszystkich współczesnych przeglądarkach. Nie trzeba do tego żadnego JavaScriptu, żadnych skomplikowanych skryptów – czysty CSS. Dobrą praktyką jest również używanie bardziej stonowanych kolorów niż Pink w prawdziwych projektach, np. #f5f5f5 albo lekki odcień niebieskiego, tak żeby kontrast był czytelny i nie męczył wzroku. Warto też pamiętać, że podobny mechanizm możesz zastosować na innych elementach: np. a:hover dla linków, button:hover dla przycisków czy nawet div:hover dla całych kafelków w layoutach. Kluczowe jest to, żeby pseudo-klasa :hover była przypięta dokładnie do tego elementu, który ma reagować na interakcję użytkownika.

Pytanie 36

Jakim zapisem w dokumencie HTML można stworzyć element, który wyświetli obrazek kotek.jpg z tekstem alternatywnym "obrazek kotka"?

A. <img src="kotek.jpg" title="obrazek kotka">
B. <img src="kotek.jpg" alt="obrazek kotka">
C. <img href="kotek.jpg" alt="obrazek kotka">
D. <img href="kotek.jpg" title="obrazek kotka">
Odpowiedź <img src="kotek.jpg" alt="obrazek kotka"> jest poprawna, ponieważ zgodnie z standardem HTML do wyświetlania obrazów należy używać atrybutu 'src', który wskazuje źródło obrazu. Atrybut 'alt' jest również niezbędny, ponieważ zapewnia tekst alternatywny dla obrazów, co jest kluczowe dla dostępności strony internetowej. Użytkownicy, którzy korzystają z technologii wspomagających, takich jak czytniki ekranu, będą mogli zrozumieć zawartość obrazu poprzez ten tekst. Dobrą praktyką jest również stosowanie odpowiednich nazw plików obrazów oraz opisowych tekstów alternatywnych, co poprawia SEO i użyteczność strony. Na przykład, jeśli w przyszłości planujesz dodać więcej obrazów kotów, warto, aby każdy z nich miał unikalny opis w atrybucie 'alt', co pomoże w lepszym zrozumieniu kontekstu przez użytkowników i roboty wyszukiwarek. W ten sposób poprawiasz zarówno dostępność, jak i indeksowalność swojej strony.

Pytanie 37

Jaką funkcję w języku PHP należy wykorzystać, aby nawiązać połączenie z bazą danych o nazwie zwierzaki?

A. $polacz = db_connect('localhost', 'root','','zwierzaki')
B. $polacz = sql_connect('localhost', 'root','','zwierzaki')
C. $polacz = server_connect('localhost', 'root','','zwierzaki')
D. $polacz = mysqli_connect('localhost', 'root','','zwierzaki')
Odpowiedzi takie jak $polacz = db_connect('localhost', 'root','','zwierzaki'); oraz $polacz = sql_connect('localhost', 'root','','zwierzaki'); są niepoprawne, ponieważ nie istnieją takie funkcje w standardowym zestawie funkcji PHP. Użycie nieodpowiednich nazw funkcji może prowadzić do nieporozumień oraz błędów w kodzie, które mogą być trudne do zdiagnozowania, zwłaszcza dla nowicjuszy. Dodatkowo, funkcja db_connect sugeruje, że mogłaby być częścią jakiegoś frameworka lub biblioteki, co wprowadza w błąd, gdyż w standardowym PHP nie są one dostępne. Podobna sytuacja ma miejsce z sql_connect, która również nie jest częścią standardowej biblioteki PHP. Użycie tych funkcji w kodzie bez zaimplementowania ich definicji spowoduje błąd wykonania. Z kolei $polacz = server_connect('localhost', 'root','','zwierzaki'); również nie jest poprawną odpowiedzią, ponieważ server_connect nie jest zdefiniowaną funkcją w PHP. Kluczowym błędem, jaki można popełnić, jest poleganie na przestarzałych metodach lub funkcjach, które nie są już wspierane przez PHP, co może prowadzić do problemów z bezpieczeństwem i wydajnością aplikacji. Programiści powinni być świadomi aktualnych standardów i korzystać z obiektowych interfejsów, takich jak MySQLi lub PDO, które oferują większe bezpieczeństwo i elastyczność w zarządzaniu połączeniami z bazą danych.

Pytanie 38

Funkcja zapisana w języku PHP wygląda tak patrz ramka): Jej celem jest

Ilustracja do pytania
A. wypisanie liczby parzystej
B. zwrócenie wartości 1, gdy liczba jest parzysta
C. wypisanie liczby nieparzystej
D. zwrócenie wartości 0, gdy liczba jest parzysta
Funkcja w języku PHP jest zapisana w taki sposób że przyjmuje jeden argument liczba i sprawdza czy jest on parzysty. Używa operatora modulo % który zwraca resztę z dzielenia. Jeśli liczba podzielona przez 2 daje resztę równą 0 oznacza to że jest parzysta. W takim przypadku funkcja zwraca wartość 1. W przeciwnym razie czyli gdy liczba jest nieparzysta funkcja zwraca 0. Takie podejście jest częstym wzorcem w programowaniu gdyż pozwala na szybkie i efektywne sprawdzenie parzystości liczby. Stosowanie operatora modulo jest standardem w wielu językach programowania dzięki czemu kod jest zrozumiały i łatwo go przenieść między różnymi platformami. W praktyce takie funkcje mogą być używane w algorytmach gdzie konieczne jest filtrowanie danych na podstawie parzystości lub innych podobnych kryteriów. Dobre praktyki w kodowaniu w PHP obejmują również jasne nazywanie funkcji i zmiennych co poprawia czytelność i utrzymanie kodu. Można także zastanowić się nad rozszerzeniem funkcji o dodatkowe sprawdzania lub logikę w zależności od potrzeb projektu.

Pytanie 39

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

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

Pytanie 40

Aby zmienić wartość atrybutu elementu opisanego w CSS przy użyciu skryptu JavaScript, należy zastosować następujący zapis

A. document.getElementById(id).innerHTML = <nowa wartość>
B. document.getElementById(id).style.<nazwa właściwości> = <nowa wartość>
C. document.getElementById(id).<nazwa-atrybutu> = <nowa wartość>
D. document.getElementById(id).<nazwa właściwości> = <nowa wartość>
Odpowiedź "document.getElementById(id).style.<nazwa właściwości> = <nowa wartość>;" jest poprawna, ponieważ umożliwia bezpośrednią modyfikację stylu CSS elementu HTML o określonym identyfikatorze. Przy użyciu metody getElementById() uzyskujemy dostęp do konkretnego elementu w DOM (Document Object Model), a następnie poprzez właściwość style, możemy zmieniać różne atrybuty CSS. Na przykład, aby zmienić kolor tła elementu, możemy napisać: document.getElementById('myElement').style.backgroundColor = 'red';. Wartością, którą przypisujemy, jest odpowiednia właściwość CSS, co czyni ten sposób zgodnym z dobrymi praktykami w programowaniu JavaScript. Dodatkowo, korzystając z tej metody, możemy dynamicznie dostosowywać styl elementów na stronie w odpowiedzi na interakcje użytkownika, co jest kluczowe w nowoczesnych aplikacjach webowych. Warto też zauważyć, że zmiany dokonane w ten sposób są natychmiast widoczne na stronie, co przyczynia się do lepszego doświadczenia użytkownika.