Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 grudnia 2025 14:37
  • Data zakończenia: 8 grudnia 2025 15:15

Egzamin niezdany

Wynik: 11/40 punktów (27,5%)

Wymagane minimum: 20 punktów (50%)

Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

W systemie PHP złożono zapytanie SELECT do bazy przy pomocy funkcji mysqli_query. Jaką funkcję powinien wykorzystać użytkownik, aby ustalić liczbę rekordów, które zwróciło to zapytanie?

A. mysqli_query
B. mysqli_fetch_row
C. mysqli_connect
D. mysqli_num_rows
Wybór innych funkcji jako odpowiedzi na pytanie jest niezgodny z ich rzeczywistym przeznaczeniem w kontekście analizy wyników zapytań w PHP. Funkcje takie jak mysqli_fetch_row służą do pobierania pojedynczego wiersza z zestawu wyników i nie dostarczają informacji o łącznej liczbie rekordów. Użycie tej funkcji może prowadzić do błędnych wniosków, gdyż zamiast podać liczbę wyników, zwraca jedynie dane jednego wiersza. Innym przykładem jest mysqli_query, która jest odpowiedzialna za wykonanie zapytania, ale nie oferuje metody na określenie ilości zwróconych rekordów. Podobnie, mysqli_connect jest funkcją do nawiązywania połączenia z bazą danych, co jest zupełnie nieadekwatne w kontekście analizy wyników zapytań. Użytkownicy często mylą te funkcje, ponieważ wszystkie są częścią pakietu MySQLi, jednak każda z nich ma swoje specyficzne zastosowanie. Właściwe zrozumienie roli poszczególnych funkcji jest kluczowe dla efektywnej pracy z bazami danych w PHP. Ignorowanie tego może prowadzić do nieefektywnego kodu oraz problemów z wydajnością aplikacji. Dlatego ważne jest, aby przed przystąpieniem do pisania zapytań zrozumieć, jakie funkcje będą potrzebne i jakie dane chcemy uzyskać.

Pytanie 2

Jak można w języku CSS ustawić kolor czerwony dla tekstu?

A. text-color: rgb(#FF0000);
B. color: rgb(255,0,0);
C. color: rgb(#FF0000);
D. text-color: rgb(255,0,0);
Odpowiedzi z 'color: rgb(#FF0000);', 'text-color: rgb(255,0,0);' oraz 'text-color: rgb(#FF0000);' są błędne z różnych powodów. W pierwszej odpowiedzi masz problem z tym, że '#' nie powinno być w funkcji rgb(). W RGB nie używamy znaku '#', bo to jest zarezerwowane dla notacji HEX, która nie podaje wartości liczbowych, tylko szesnastkowe znaki, takie jak '#FF0000'. Co do 'text-color', to niestety nie jest to poprawna właściwość CSS do zmiany koloru tekstu. Powinieneś używać 'color', która jest tym, co tak naprawdę definiuje kolor tekstu w CSS. Takie coś jak 'text-color' po prostu nie istnieje w CSS, co powoduje, że przeglądarki mogą mieć problemy z interpretacją stylów. Jeśli nie rozumiesz podstaw składni CSS, może to naprawdę frustrować, gdy pracujesz nad projektami webowymi, bo nieuzasadnione używanie właściwości nie przynosi efektów wizualnych, które chciałbyś uzyskać. Dlatego warto znać te zasady, żeby unikać pułapek w stylizacji stron.

Pytanie 3

Aby zrealizować opisane czynności w JavaScript, konieczne jest umieszczenie poniższego kodu w znaczniku <script>

Ilustracja do pytania
A. A = prompt("Podaj kwalifikację: "); document.write("Kwalifikacja: ".A)
B. A << prompt("Podaj kwalifikację: "); document.write("Kwalifikacja: "+A)
C. A = prompt("Podaj kwalifikację: "); document.write("Kwalifikacja: "+A)
D. A = alert("Podaj kwalifikację: "); document.write("Kwalifikacja: "+A)
Rozważając podane odpowiedzi warto zauważyć kilka typowych błędów koncepcyjnych związanych z używaniem funkcji w JavaScript. Po pierwsze, w jednej odpowiedzi użyto kropki zamiast operatora konkatenacji przy próbie łączenia łańcuchów znaków, co jest błędne w JavaScript. W tym języku operator + jest standardowym sposobem na łączenie tekstu z wartościami zmiennych. Użycie kropki w tym kontekście jest błędne, ponieważ odnosi się do operacji obiektowych, nie do konkatenacji łańcuchów. Innym błędem jest wykorzystanie operatora <<, który w rzeczywistości służy do przesunięć bitowych, a nie do przypisywania wartości czy wywoływania funkcji. Takie pomyłki mogą wynikać z niezrozumienia różnic między operacjami bitowymi a przypisaniem wartości. Kolejna opcja sugerowała użycie alert() zamiast prompt(), co oznaczałoby wyświetlenie jedynie komunikatu bez możliwości wprowadzenia danych przez użytkownika, co nie spełnia założeń zadania polegających na pobraniu wartości od użytkownika. Wszystkie te błędne odpowiedzi wynikają z nieznajomości lub niepoprawnego użycia podstawowych funkcji i operatorów języka JavaScript co podkreśla znaczenie dokładnego zrozumienia podstaw języka oraz ich praktycznego zastosowania. Poprawne użycie prompt() i document.write() jest kluczowe w implementacji interaktywnych elementów na stronach internetowych, co pozwala na dynamiczne przetwarzanie danych użytkowników w aplikacjach webowych. Dobrze jest stosować się do standardów i dobrych praktyk, aby unikać podobnych błędów w przyszłości oraz by tworzyć aplikacje, które są zarówno funkcjonalne, jak i bezpieczne.

Pytanie 4

Jaką rolę pełni funkcja PHP o nazwie mysql_select_db()?

A. określić bazę, z której będą pobierane dane
B. nawiązać połączenie bazy danych z serwerem SQL
C. określić tabelę, z której będą pobierane informacje
D. pobrać dane z bazy danych na podstawie zapytania
Istnieje kilka powszechnych nieporozumień dotyczących funkcji mysql_select_db(), które mogą prowadzić do błędnych wniosków. Niewłaściwe jest myślenie, że ta funkcja służy do określenia tabeli, z której będą pobierane dane. W rzeczywistości, mysql_select_db() nie odnosi się bezpośrednio do tabel; zamiast tego, definiuje bazę, w której te tabele się znajdują. Kolejnym błędem jest przekonanie, że mysql_select_db() odpowiada za połączenie bazy danych z serwerem SQL. To zadanie należy do mysql_connect(), która tworzy połączenie z serwerem. Istnieje również mylne założenie, że funkcja ta pobiera dane z bazy danych. W rzeczywistości, pobieranie danych odbywa się za pomocą osobnych zapytań SQL, które są wykonywane po wcześniejszym wybraniu odpowiedniej bazy danych. Takie nieporozumienia mogą prowadzić do błędów w kodzie, gdzie programista usiłuje używać mysql_select_db() do operacji, które nie są jej przeznaczone. Niezrozumienie roli bazy danych i tabel w kontekście SQL oraz funkcji PHP może skutkować nieefektywnym kodem oraz problemami z jego debugowaniem. Ważne jest, aby mieć jasność co do roli różnych funkcji w interakcji z bazą danych, co pozwala na bardziej efektywne i bezpieczne programowanie.

Pytanie 5

Która z definicji tablicy asocjacyjnej w PHP jest składniowo poprawna?

A. $wiek = array({"Anna", "35"}, {"Ewa", "37"}, {"Oliwia", "43"});
B. $wiek = array("Anna"=>"35", "Ewa"=>"37", "Oliwia"=>"43");
C. $wiek = array([Anna, 35], [Ewa, 37], [Oliwia, 43]);
D. $wiek = array("Anna"=35, "Ewa"=37, "Oliwia"=43);
W analizowanych odpowiedziach można zauważyć kilka istotnych błędów składniowych, które uniemożliwiają prawidłowe zdefiniowanie tablicy asocjacyjnej w PHP. Pierwsza opcja, $wiek = array("Anna"=35, "Ewa"=37, "Oliwia"=43);, myli operator przypisania z operatorem asocjacyjnym. Użycie znaku = zamiast => jest kluczowe, ponieważ PHP wymaga użycia operatora => do parowania kluczy z wartościami. W drugiej opcji, $wiek = array([Anna, 35], [Ewa, 37], [Oliwia, 43]);, zastosowano niepoprawną składnię tablicy, gdzie zewnętrzne nawiasy kwadratowe powinny być zastąpione funkcją array() lub nawiasami klamrowymi, a także brakuje kluczy. Trzecia odpowiedź, $wiek = array({"Anna", "35"}, {"Ewa", "37"}, {"Oliwia", "43"});, również jest niepoprawna, ponieważ użyto nawiasów klamrowych, które nie są stosowane w definicji tablic asocjacyjnych w PHP. Nawiasy klamrowe mogą być używane do tworzenia tablic wielowymiarowych, ale w tym kontekście są nieodpowiednie. Typowe błędy myślowe, które prowadzą do takich pomyłek, to mylenie różnych typów struktur danych oraz niewłaściwe zrozumienie zasad parowania kluczy i wartości, co w rezultacie skutkuje błędami w składni i logice kodu.

Pytanie 6

Grafik pragnie przekształcić obraz JPG na format PNG bez utraty jakości, tak aby wszędzie tam, gdzie w oryginalnym obrazie występuje kolor biały, w docelowej wersji była przezroczystość. W tym celu powinien

A. przekształcić obraz w odcienie szarości
B. dodać kanał alfa
C. zaimportować obraz do edytora grafiki wektorowej
D. obniżyć rozdzielczość obrazu
Zmniejszenie rozdzielczości obrazu nie ma na celu dodania przezroczystości ani przekształcenia białych obszarów w przezroczyste. Zmiana rozdzielczości wpływa jedynie na liczbę pikseli w obrazie, co może prowadzić do utraty szczegółów, ale nie rozwiązuje problemu z białym tłem. Przekształcenie obrazu w odcienie szarości również nie jest odpowiednie w tym kontekście. Taki proces konwertuje kolory na odcienie szarości, co skutkuje utratą kolorów, a nie dodaniem przezroczystości. Z kolei importowanie obrazu do edytora grafiki wektorowej nie jest wystarczającym działaniem, ponieważ format JPEG jest rastrami, a nie wektorami, co oznacza, że nie można bezpośrednio edytować poszczególnych pikseli w ten sposób, by osiągnąć żądany efekt. Typowym błędem jest zakładanie, że zmiana formatu lub rozdzielczości rozwiąże problem przezroczystości. W rzeczywistości, aby uzyskać przezroczystość w obrazie, należy pracować bezpośrednio z pikselami i ich właściwościami, co wymaga użycia odpowiednich narzędzi i technik, takich jak dodanie kanału alfa.

Pytanie 7

Po wydaniu polecenia użytkownik Jacek będzie mógł

GRANT SELECT, INSERT ON baza1.mojaTabela TO 'Jacek'@'localhost';
A. zmieniać strukturę tabeli i wstawiać nowe dane.
B. usuwać tabelę i tworzyć nową.
C. usuwać dane z tabeli i przeglądać dane.
D. przeglądać dane w tabeli i wstawiać nowe dane.
Twoja odpowiedź jest nieprawidłowa. Po wydaniu polecenia SQL 'GRANT SELECT, INSERT ON baza1.mojaTabela TO 'Jacek'@'localhost';', użytkownik Jacek zyskuje jedynie uprawnienia do przeglądania (SELECT) i wstawiania (INSERT) danych w tabeli 'mojaTabela' w bazie danych 'baza1'. Nie ma jednak możliwości usuwania danych (co wymagałoby uprawnienia DELETE), zmieniania struktury tabeli (co wymagałoby uprawnienia ALTER) czy usuwania i tworzenia nowej tabeli (co wymagałoby uprawnienia DROP). Misinterpretacja rodzaju nadanych uprawnień może prowadzić do błędów, niewłaściwego zarządzania bazą danych i potencjalnych problemów z bezpieczeństwem. Ważne jest, aby zrozumieć i prawidłowo interpretować polecenia SQL dotyczące nadawania uprawnień, aby zapewnić prawidłowe i bezpieczne zarządzanie danymi.

Pytanie 8

Aby przeprowadzić walidację kontrolek formularza w momencie, gdy użytkownik wprowadza dane, można wykorzystać zdarzenie

A. onKeyDown
B. onFocusOut
C. onLoad
D. onClick
Odpowiedź 'onKeyDown' jest poprawna, ponieważ jest to zdarzenie, które jest wywoływane, gdy użytkownik naciśnie klawisz podczas interakcji z polem formularza. Użycie tego zdarzenia pozwala na walidację danych w czasie rzeczywistym, co oznacza, że programista może natychmiast reagować na wprowadzone znaki. Dzięki temu można na przykład sprawdzić, czy wprowadzone dane spełniają określone kryteria, takie jak format e-maila, długość hasła czy obecność cyfr. Praktyczne zastosowanie zdarzenia onKeyDown polega na tym, że można wprowadzić logikę walidacji bez konieczności czekania na zakończenie wprowadzania danych. Zamiast tego, możemy w realnym czasie informować użytkowników o ewentualnych błędach, co znacznie poprawia doświadczenia użytkowników. Ponadto, zgodnie z dobrymi praktykami, zaleca się używanie zdarzeń związanych z klawiaturą, takich jak onKeyDown czy onInput, które są bardziej odpowiednie dla dynamicznych interakcji niż na przykład onBlur, które może być mniej responsywne. Warto również zauważyć, że onKeyDown działa przed onKeyUp, co umożliwia szybsze reagowanie na wprowadzane dane, co jest kluczowe w kontekście walidacji w czasie rzeczywistym.

Pytanie 9

Sprawdzanie poprawności wypełnienia formularza, które ma przebiegać po stronie klienta, powinno być wykonane w języku

A. JavaScript
B. CSS
C. PHP
D. Ruby on Rails
Zastosowanie CSS do weryfikacji formularzy jest nieodpowiednie, ponieważ CSS jest językiem stylizacji, a nie programowania. Jego głównym zadaniem jest określenie wyglądu i układu elementów na stronie, a nie logika operacji lub przetwarzanie danych. CSS nie ma możliwości interakcji z danymi użytkownika ani przeprowadzania jakichkolwiek obliczeń, co czyni go całkowicie nieadekwatnym narzędziem do walidacji formularzy. Z kolei PHP jest językiem skryptowym działającym po stronie serwera, co oznacza, że wszelkie operacje związane z weryfikacją danych musiałyby odbywać się po przesłaniu formularza, co prowadzi do złego doświadczenia użytkownika. Użytkownik musiałby czekać na odpowiedź serwera, co często wiąże się z opóźnieniami i frustracją. Ruby on Rails, jako framework do rozwijania aplikacji webowych, również nie jest odpowiednim rozwiązaniem do realizacji walidacji po stronie klienta. Jego zastosowanie koncentruje się głównie na logice po stronie serwera i tworzeniu aplikacji, a nie na interakcji użytkownika z interfejsem. Tym samym zarówno PHP, jak i Ruby on Rails nie są w stanie efektywnie zrealizować wymogu weryfikacji formularzy przed ich przesłaniem.

Pytanie 10

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

SELECT imie FROM mieszkancy WHERE imie LIKE '_r%';
A. Krzysztof, Krystyna, Romuald
B. Arleta, Krzysztof, Krystyna, Tristan
C. Rafał, Rebeka, Renata, Roksana
D. Gerald, Jarosław, Marek, Tamara
Zapytanie SQL wykorzystuje klauzulę LIKE, która pozwala na wyszukiwanie wzorców w danych tekstowych. W tym przypadku wzór '_r%' oznacza, że szukamy imion, które mają na drugiej pozycji literę 'r' i mogą mieć dowolne znaki po tej literze. W analizowanych imionach, Arleta, Krzysztof, Krystyna oraz Tristan spełniają ten warunek, ponieważ: Arleta ma 'r' na drugiej pozycji, Krzysztof również, Krystyna także, a Tristan ma 'r' na drugiej pozycji. Przykład użycia klauzuli LIKE jest szczególnie przydatny w systemach, gdzie często zachodzi potrzeba filtrowania danych tekstowych na podstawie określonych wzorców. W praktyce, stosowanie klauzuli LIKE w zapytaniach SQL powinno być zgodne z najlepszymi praktykami, takimi jak optymalizacja indeksów i unikanie nadmiernego używania znaków wieloznacznych, które mogą prowadzić do spadku wydajności. Warto również pamiętać, że w wielu systemach baz danych klauzula LIKE jest czuła na wielkość liter, co może wpływać na wyniki zapytań.

Pytanie 11

Tablica tab[] jest wypełniona losowymi liczbami całkowitymi. Jaka będzie wartość zmiennej zm2 po wykonaniu poniższego fragmentu kodu?

int tab[10];
int zm1 = 0;
double zm2 = 0;

for (int i=0; i < 10; i++)
{
    zm1 = zm1 + tab[i];
}
zm2 = zm1 / 10;
A. Średnia arytmetyczna liczb z tablicy
B. Średnia geometryczna liczb od 0 do 9
C. Suma elementów z tablicy
D. Suma liczb od 1 do 10
W tym kodzie jest trochę do zrozumienia, zwłaszcza w kontekście pętli for i operacji matematycznych. Mylisz się, myśląc, że zm2 to średnia geometryczna liczb od 0 do 9, bo w tym kodzie nie ma ani mnożenia, ani pierwiastkowania, które są konieczne do obliczenia średniej geometrycznej. Zmienna zm2 odnosi się do liczb w tablicy tab[], a nie do tych od 0 do 9. Ponadto, twierdzenie, że zm2 to suma liczb od 1 do 10, jest błędne, bo kod nie operuje na takich liczbach. Sumowanie dotyczy tylko wartości w tablicy. Mylna jest też informacja, że zm2 to suma z tablicy – to zm1 przechowuje tę sumę, a zm2 to średnia po podzieleniu przez 10. Błędy takie mogą wynikać z braku zrozumienia działania pętli i operacji matematyk. Ważne, żeby zawsze śledzić, co się dzieje z danymi w kodzie i jakie operacje są wykonywane, bo to klucz do rozwiązywania problemów w programowaniu. Warto dokładnie zrozumieć strukturę kodu i rolę zmiennych, aby unikać błędów logicznych.

Pytanie 12

W języku HTML kolor biały można przedstawić przy użyciu wartości

A. #255255
B. rgb(FFFF,FF)
C. #000000
D. rgb(255,255,255)
Kolory w HTML można zapisać na kilka sposobów, ale nie każda opcja jest dobra. Zobaczmy błędne odpowiedzi. Pierwsza, #255255, jest zła, bo w systemie szesnastkowym (hex) kolory powinno się zapisywać w formacie #RRGGBB. Tutaj brakuje cyfr, więc to jest błędny zapis. Druga opcja, #000000, to kolor czarny. Wszędzie mamy 0, czyli brak światła w trzech kanałach RGB, co daje nam czarny, a nie biały. Ostatnia odpowiedź, rgb(FFFF,FF), też jest niepoprawna, ponieważ w rgb muszą być liczby całkowite od 0 do 255. Używanie szesnastkowych wartości tutaj to zły pomysł. Generalnie, zrozumienie jak poprawnie zapisywać kolory w HTML jest kluczowe, jeśli chcesz robić fajne i funkcjonalne projekty w sieci.

Pytanie 13

Jakie znaczniki <header>, <article>, <section>, <footer> są typowe dla języka

A. HTML 4.01 Transitional
B. style="margin-bottom: 0cm;">XHTML 1.1
C. style="margin-bottom: 0cm;">HTML 4.01 Strict
D. style="margin-bottom: 0cm;">HTML 5
Wybierając XHTML 1.1, HTML 4.01 Strict lub HTML 4.01 Transitional, można nie dostrzegać kluczowych różnic między tymi standardami a HTML5. XHTML 1.1 jest bardziej restrykcyjną wersją HTML, która wprowadza zasady XML, co skutkuje tym, że wszystkie elementy muszą być poprawnie zagnieżdżone i zamknięte. Choć XHTML wprowadza pewne nowe możliwości, nie oferuje semantycznych znaczników, które są dostępne w HTML5, co ogranicza jego użyteczność w kontekście nowoczesnych aplikacji webowych. HTML 4.01 Strict i HTML 4.01 Transitional to starsze standardy, które również nie zawierają semantycznych znaczników. Standard Strict wymagał ścisłego przestrzegania reguł HTML, co mogło być uciążliwe dla deweloperów, natomiast Transitional wprowadzał pewne elementy przestarzałe, co nie sprzyjało dążeniu do czystego i nowoczesnego kodu. Użycie starszych standardów skutkuje brakiem możliwości implementacji nowoczesnych funkcji i ogranicza dostępność treści dla użytkowników oraz robotów wyszukiwarek. W związku z tym, opieranie się na tych technologiach jest nieadekwatne w kontekście obecnych wymagań webowych, które preferują semantykę, dostępność i zgodność z nowoczesnymi standardami. Brak zrozumienia ewolucji HTML może prowadzić do błędnych praktyk w tworzeniu stron internetowych, co w dłuższej perspektywie może wpłynąć na ich użyteczność oraz widoczność w wyszukiwarkach.

Pytanie 14

Wskaż konstrukcję pętli w języku JavaScript, która wyświetli sześć kolejnych liczb parzystych

A. for(i=2;i<12;i++) {i++; document.write(i);}
B. for(i=2;i<=12;i++) {i=i+2; document.write(i);}
C. for(i=2;i<12;i+=2) {document.write(i);}
D. for(i=2;i<=12;i+=2) {document.write(i);}
Odpowiedź for(i=2;i<=12;i+=2) {document.write(i);} jest prawidłowa, ponieważ prawidłowo implementuje pętlę for w języku JavaScript, aby wydrukować sześć kolejnych liczb parzystych, zaczynając od 2 i kończąc na 12. Pętla ta inicjuje zmienną i na wartość 2, a następnie kontynuuje iterację, aż do osiągnięcia wartości 12, zwiększając i o 2 w każdej iteracji. Dzięki temu osiągamy pożądane liczby: 2, 4, 6, 8, 10 i 12. Użycie operatora inkrementacji (i+=2) jest zgodne z dobrymi praktykami programistycznymi, ponieważ jest bardziej zwięzłe i jednoznaczne w porównaniu do zwiększania zmiennej w każdej iteracji o 1, a następnie dodawania 1 w ciele pętli. W praktyce, można stosować takie podejście do generowania sekwencji liczb w różnych zastosowaniach, na przykład w wizualizacji danych lub grach, gdzie potrzebujemy pracować z parametrami o określonej wartości. Ponadto, pętle w JavaScript są fundamentalnym elementem skryptów, pozwalającym na automatyzację powtarzalnych zadań, co czyni programowanie bardziej efektywnym.

Pytanie 15

Jakie rozwiązanie powinno być wdrożone w organizacji danych, aby przyspieszyć wykonanie zapytań w bazie danych?

A. Wartości domyślne
B. Klucze podstawowe
C. Indeksy
D. Reguły
Indeksy w bazach danych są kluczowym narzędziem przyspieszającym wykonywanie zapytań, ponieważ pozwalają na szybsze odnajdywanie danych. Indeks działa jak spis treści w książce, umożliwiając systemowi zarządzania bazą danych (DBMS) szybkie zlokalizowanie konkretnych wierszy w tabelach. W praktyce, dodanie indeksu do kolumny, po której często są przeprowadzane wyszukiwania, może znacząco poprawić wydajność zapytań SELECT. Na przykład, jeśli mamy dużą tabelę z danymi o klientach i często wyszukujemy klientów według nazwiska, stworzenie indeksu na kolumnie 'nazwisko' pozwoli na zredukowanie czasu potrzebnego na wyszukiwanie z kilku sekund do milisekund. Warto również wspomnieć o dobrych praktykach związanych z używaniem indeksów, takich jak unikanie nadmiernego indeksowania, które może prowadzić do obniżenia wydajności operacji INSERT, UPDATE czy DELETE, ponieważ każdy z tych procesów musi również aktualizować odpowiednie indeksy. Dlatego kluczowe jest staranne planowanie i zastosowanie indeksów tam, gdzie przynoszą największe korzyści.

Pytanie 16

CMYK to zestaw czterech podstawowych kolorów używanych w druku:

A. turkusowego, purpurowego, białego, czarnego
B. turkusowego, purpurowego, żółtego, czarnego
C. czerwonego, purpurowego, żółtego, szarego
D. turkusowego, błękitnego, białego, różowego
CMYK to model kolorów wykorzystywany w druku, który opiera się na czterech podstawowych kolorach: cyjan (turkusowy), magenta (purpurowy), żółty i czarny. Model ten jest kluczowy w procesach drukarskich, ponieważ wykorzystuje technikę subtraktywnego mieszania kolorów, co oznacza, że kolory powstają przez odejmowanie światła od białego tła. Każdy z kolorów w modelu CMYK odgrywa istotną rolę w uzyskaniu pożądanej gamy kolorystycznej. Na przykład, cyjan i magenta w połączeniu w różnych proporcjach mogą tworzyć różne odcienie niebieskiego, a dodanie żółtego umożliwia uzyskanie zieleni. Kluczowym aspektem jest również czarny kolor, który nie tylko zwiększa głębię barw, ale także poprawia kontrast oraz szczegółowość obrazu. Aby uzyskać optymalne rezultaty, profesjonalne drukarnie często korzystają z systemów kolorystycznych opartych na standardach takich jak ISO 12647, które definiują zasady druku oraz kontrolę jakości kolorów. Użycie modelu CMYK jest niezwykle istotne zarówno w projektowaniu graficznym, jak i w przemysłowym druku, gdzie precyzyjne odwzorowanie kolorów ma kluczowe znaczenie.

Pytanie 17

Jakie jest zadanie funkcji PHP o nazwie mysql_select_db?

A. nawiązać połączenie bazy danych z serwerem SQL
B. wyznaczyć tabelę, z której będą pobierane informacje
C. wyznaczyć bazę, z której będą pobierane informacje
D. pobrać dane z bazy danych na podstawie zapytania
Wszystkie niepoprawne odpowiedzi dotyczą funkcji mysql_select_db(), jednak ich interpretacja jest myląca. Po pierwsze, funkcja ta nie służy do łączenia bazy danych z serwerem SQL. Proces łączenia odbywa się za pomocą funkcji mysql_connect(), która nawiązuje połączenie z serwerem MySQL. Po połączeniu można korzystać z mysql_select_db() w celu wybrania konkretnej bazy. Ponadto, funkcja ta nie ma na celu określenia tabeli, z której będą pobierane dane. Tabele są elementami bazy danych, a mysql_select_db() działa na poziomie bazy, a nie tabeli. Po wybraniu bazy, aby uzyskać dostęp do tabeli, należy używać zapytań SQL w formacie SELECT, które definiują, z jakiej tabeli chcemy pobierać dane. Ostatnia niepoprawna odpowiedź dotyczy pobierania danych na podstawie kwerendy. mysql_select_db() nie wykonuje żadnych zapytań; jej funkcją jest jedynie ustalenie kontekstu bazy danych. Dopiero po użyciu mysql_select_db() można wykonywać zapytania, które pobierają dane, ale sama funkcja nie odpowiada za proces ich pozyskiwania.

Pytanie 18

Jaki jest cel wykorzystania znacznika <i> w języku HTML?

A. określenia nagłówka w treści
B. wstawienia obrazka
C. określenia formularza
D. zmiany kroju pisma na pochylony
Znaczniki HTML pełnią różne funkcje, a niektóre z dostępnych odpowiedzi dotyczą zastosowań, które są niezgodne z funkcją <i>. Umieszczenie obrazka w dokumencie HTML realizuje się za pomocą znacznika <img>, który pozwala na wstawienie grafiki i definiowanie jej atrybutów, takich jak src (źródło) czy alt (opis alternatywny). Użycie <i> do umieszczenia obrazka jest technicznie niepoprawne, gdyż znacznik ten nie ma takiej funkcji ani atrybutów. Z kolei definiowanie formularza w HTML ma miejsce za pomocą znacznika <form>, który jest fundamentalny dla tworzenia interaktywnych elementów na stronie, umożliwiających użytkownikom wprowadzanie danych. Znacznik <i> nie jest odpowiedni dla tych celów, ponieważ jego główną rolą jest stylizacja tekstu. Wreszcie, definiowanie nagłówka w dokumencie HTML realizuje się przy użyciu znaczników nagłówków, takich jak <h1>, <h2>, <h3>, które hierarchizują treść i nadają strukturę stronie. Znacznik <i> nie pełni tej funkcji, co sprawia, że wszystkie wymienione odpowiedzi są niepoprawne w kontekście ich przypisanych ról w HTML.

Pytanie 19

W języku PHP znajduje się poniższa instrukcja pętli. Ile iteracji wykona ta pętla, zakładając, że zmienna kontrolna nie jest zmieniana w jej wnętrzu i nie zastosowano instrukcji przerywającej pętlę typu break?

for ($i = 10; $i <= 100; $i += 10)
A. 9 iteracji
B. 100 iteracji
C. 10 iteracji
D. 11 iteracji
W przypadku błędnych odpowiedzi, najczęściej występującym błędem jest mylenie wartości granicznych i liczby iteracji pętli. Na przykład, jeśli ktoś uważa, że pętla wykona się tylko 9 razy, może to wynikać z niepoprawnego zrozumienia, jak działa operator porównania w instrukcji for. Wartości graniczne oraz sposób inkrementacji (tutaj $i += 10) powinny być dokładnie analizowane. Osoby, które odpowiedziały, że pętla wykona się 11 razy, mogą zakładać, że dolna granica nie jest wliczana w całkowitą liczbę wykonanych iteracji, co jest nieprawidłowe, gdyż w przypadku tego konkretnego kodu dolna granica jest uwzględniana. Ponadto, odpowiedź sugerująca, że pętla wykona się 100 razy ignoruje fakt, że zmienna $i nie może przekraczać 100. W praktyce, błędy te mogą prowadzić do poważnych problemów w logice aplikacji, a zrozumienie, jak dokładnie funkcjonują pętle w PHP, jest kluczowe dla efektywnego programowania. Prawidłowe podejście do analizy kodu, zrozumienia jego struktury i funkcji, jest niezbędne, aby uniknąć typowych pułapek w programowaniu oraz zapewnić, że napisany kod będzie wydajny i wolny od błędów.

Pytanie 20

Jaką właściwość CSS należy zastosować, aby ustawić wewnętrzne marginesy dla danego elementu?

A. margin
B. width
C. padding
D. hight
Chociaż odpowiedzi hight, width i margin mają swoje zastosowania w CSS, nie są one odpowiednie do definiowania marginesów wewnętrznych elementu. Właściwość hight jest błędna, ponieważ nie istnieje taka właściwość w CSS; prawidłowa forma to height, która określa wysokość elementu, a nie jego wewnętrzne marginesy. width z kolei definiuje szerokość elementu, co również nie ma związku z przestrzenią wewnętrzną. Użytkownicy często mylą te właściwości, co prowadzi do nieprawidłowych założeń dotyczących stylizacji elementów na stronie. Zrozumienie różnicy między padding a margin jest również kluczowe. Margin definiuje przestrzeń zewnętrzną, oddzielając elementy od siebie, podczas gdy padding działa wewnątrz elementu, wpływając na układ zawartości. Tego typu błędy mogą prowadzić do nieprzewidzianych efektów wizualnych w projektach. W praktyce, aby prawidłowo dostosować wygląd strony, istotne jest zrozumienie, jakie właściwości można stosować w różnych kontekstach, oraz ich wzajemne relacje. Właściwe zarządzanie przestrzenią wewnętrzną i zewnętrzną elementów jest fundamentem efektywnego i estetycznego projektowania stron internetowych.

Pytanie 21

Fragment kodu napisany w języku JavaScript, który realizuje sumowanie dwóch liczb, wygląda następująco (zobacz ramka): Aby operacja dodawania odbywała się po naciśnięciu przycisku zatytułowanego "dodaj", należy w miejsce wykropkowane wprowadzić

Ilustracja do pytania
A. <button onselect="return dodaj()">dodaj</button>
B. <button onclick="return obliczj()">dodaj</button>
C. <button onselect="return dodaj()">oblicz</button>
D. <button onclick="return dodaj()">dodaj</button>
Wybór innych odpowiedzi wskazuje na niepełne zrozumienie sposobu przypisywania zdarzeń do elementów HTML w kontekście języka JavaScript. Atrybut onselect w HTML nie jest przeznaczony dla przycisków, lecz dla elementów tekstowych, takich jak input czy textarea, gdzie jest wykorzystywany do reagowania na wybór tekstu przez użytkownika. Zastosowanie onselect w kontekście przycisku jest niepoprawne, gdyż nie wywoła żadnej funkcji w odpowiedzi na kliknięcie użytkownika. Z kolei użycie niewłaściwej nazwy funkcji, jak w przypadku onselect="return dodaj()" dla przycisku "oblicz", wskazuje na błąd logiczny. Jeśli funkcja została nazwana dodaj() w kodzie JavaScript, musi być właśnie tak wywoływana. Zasady dobrego projektowania aplikacji webowych wymagają, aby atrybuty HTML odpowiadały zgodnie z ich przeznaczeniem, co zapewnia poprawne działanie i łatwość debugowania. Poprawne przypisanie zdarzeń to kluczowy aspekt w programowaniu interfejsów użytkownika, a błędne użycie atrybutów prowadzi do problemów z funkcjonalnością strony. Dlatego tak istotne jest zrozumienie i stosowanie właściwych atrybutów zdarzeń, co ułatwia rozwój i zarządzanie aplikacjami internetowymi.

Pytanie 22

Zapis tagu HTML w formie <a href="#hobby">przejdź</a>?

A. jest poprawny, po kliknięciu w odnośnik aktualna strona zostanie przewinięta do elementu o nazwie "hobby"
B. jest błędny, niepoprawnie użyto znaku "#" w atrybucie href
C. jest poprawny, po kliknięciu w odnośnik otworzy się strona internetowa o adresie "hobby"
D. jest błędny, w atrybucie href trzeba wpisać adres URL
Myślenie, że znacznik <a href="#hobby">przejdź</a> jest błędny, bo używasz znaku '#' w href, jest trochę mylące. Ten znak '#' to normalny sposób, żeby wskazać lokalne odnośniki na tej samej stronie, co jest zgodne z regułami HTML. Nie jest prawdą, że musi być cały adres URL, bo lokalne identyfikatory są jak najbardziej w porządku. Często spotykam się z przekonaniem, że href zawsze powinien prowadzić do zewnętrznego linku, a to nieprawda. Wiele stron korzysta z lokalnych linków, co naprawdę sprawdza się w długich treściach, pozwalając użytkownikom szybko przechodzić do tych sekcji, które ich interesują. Nie można też myśleć, że tylko absolutne identyfikatory w href są jedynym słusznym rozwiązaniem, bo to podejście z lokalnymi odnośnikami jest powszechnie akceptowane i sprawdza się w praktyce.

Pytanie 23

Aby skutecznie zrealizować algorytm znajdujący największą wartość spośród trzech podanych liczb a, b oraz c, wystarczy zastosować

A. pięć zmiennych
B. dwie tablice
C. jedną pętlę
D. dwa warunki
Podejście polegające na użyciu jednej pętli do określenia największej liczby z trzech nie jest optymalne, ponieważ w przypadku tylko trzech wartości nie ma potrzeby iterowania. Pętle są bardziej odpowiednie w sytuacjach, gdy mamy do czynienia z większą ilością danych, na przykład w tablicach. Przy zastosowaniu pętli do porównania trzech wartości, programista mógłby niepotrzebnie komplikować kod, co wpływa na jego wydajność i czytelność. Kolejna nieefektywna strategia to użycie dwóch tablic. W tym kontekście, stworzenie tablicy do przechowywania wartości a, b, c jest zbędne, gdyż można łatwo przechowywać te wartości w zmiennych. Ponadto, operacje na tablicach wiążą się z dodatkowymi kosztami pamięciowymi i obliczeniowymi, które są nieuzasadnione, biorąc pod uwagę prostotę problemu. Co więcej, zbyt wiele zmiennych do obsługi prostego zadania, jakim jest porównanie trzech wartości, wprowadza zbędny chaos i nieczytelność w kodzie. Zwykle, im więcej zmiennych, tym większe ryzyko błędów i trudności w śledzeniu stanu programu. W praktyce, dobrym rozwiązaniem jest ograniczenie liczby zmiennych do minimum, co korzystnie wpływa na efektywność kodu, zarówno pod kątem wydajności, jak i łatwości w utrzymaniu. Z tych powodów, najważniejsze jest, by w procesie programowania wybierać metody oparte na prostocie i efektywności, a także dostosować podejścia do skali problemu.

Pytanie 24

DOM oferuje funkcje i atrybuty, które w JavaScript umożliwiają

A. manipulowanie łańcuchami zadeklarowanymi w kodzie
B. przesyłanie danych formularza bezpośrednio do bazy danych
C. wykonywanie operacji na zmiennych przechowujących wartości liczbowe
D. pobieranie i modyfikowanie elementów strony załadowanej w przeglądarce
DOM (Document Object Model) to interfejs programistyczny, który umożliwia manipulację strukturą dokumentu HTML lub XML za pomocą języka JavaScript. Odpowiedź dotycząca pobierania i modyfikowania elementów strony jest poprawna, ponieważ DOM dostarcza zestaw metod, takich jak getElementById, getElementsByClassName, czy querySelector, które pozwalają programistom na selekcję, edytowanie, dodawanie lub usuwanie elementów w drzewie DOM. Na przykład, używając metody document.getElementById('example'), możemy uzyskać dostęp do konkretnego elementu na stronie oraz zmienić jego zawartość, styl czy atrybuty. Takie manipulacje są kluczowe w tworzeniu interaktywnych aplikacji webowych, które reagują na działania użytkownika, co jest zgodne z najlepszymi praktykami w zakresie programowania front-end. Zmiany w DOM mogą także wpływać na wydajność strony, dlatego stosowanie odpowiednich metod i technik, takich jak unikanie zbyt częstych reflowów czy repaints, jest niezbędne dla optymalizacji. Warto również zaznaczyć, że stosowanie bibliotek, takich jak jQuery, może uprościć proces manipulacji DOM.

Pytanie 25

Funkcja
fun1(a,b) {
  if(a % 2 != 0) a++;
  for(let n = a; n <= b; n+=2) document.write(n);
}
ma na celu

A. sprawdzenie, czy liczba a jest nieparzysta; w przypadku pozytywnej odpowiedzi, jej wypisanie
B. wypisanie liczb parzystych w zakresie od a do b
C. wypisanie wszystkich liczb w przedziale od a do b
D. zwrócenie parzystych wartości liczb od a do b
W przypadku pierwszej błędnej odpowiedzi, najważniejszy błąd to myślenie, że funkcja zwraca wartości parzyste jak zwykły wynik. W rzeczywistości funkcja wypisuje te liczby na stronie za pomocą document.write(), więc to jest kluczowy szczegół. Druga niepoprawna odpowiedź jest na dobrej drodze, ale myli się w interpretacji 'wypisania liczb parzystych z przedziału od a do b'. Funkcja nie tylko wypisuje liczby parzyste, ale też sprawdza, czy a jest nieparzyste, i wtedy zmienia tę wartość. Co do trzeciej błędnej odpowiedzi, sugeruje ona, że funkcja wypisuje wszystkie liczby między a a b, co jest zupełnie błędne, bo pętla for zwiększa n o 2, więc tylko parzyste liczby się pojawią. Rozumienie jak działa pętla for oraz operator modulo jest kluczowe, żeby dobrze zrozumieć tę funkcję. Jeśli nie ogarniasz tych podstaw, ciężko będzie analizować kod w JavaScript i pisać lepsze programy.

Pytanie 26

W instrukcji warunkowej w JavaScript powinno się zweryfikować sytuację, w której zmienne a oraz b są większe od zera, przy czym zmienna b jest mniejsza od 100. Taki warunek należy zapisać w następujący sposób:

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))
W analizowanych odpowiedziach pojawia się kilka koncepcji, które nie spełniają wymagań dotyczących sprawdzenia warunków dla zmiennych a i b. Odpowiedź if ( a > 0 || b > 0 || b > 100) jest błędna, ponieważ użycie operatora OR (||) wskazuje, że wystarczy, aby przynajmniej jeden z warunków był spełniony. Taki zapis wpłynąłby na logikę programu, prowadząc do sytuacji, w której program uznałby, że warunki są spełnione, nawet jeśli b jest większe lub równe 100, co całkowicie ignoruje kluczowy wymóg dotyczący tej zmiennej. W drugiej analizowanej opcji, if ( a > 0 && b > 0 || b > 100), znowu mamy do czynienia z niewłaściwym połączeniem operatorów, które może prowadzić do błędnych wyników. Tu z kolei program będzie mógł uznać warunek za prawdziwy, jeśli b przekroczy 100, nawet jeżeli a i b nie są dodatnie, co narusza zasady logicznego myślenia. Argumenty w if ( a > 0 || (b > 0 && b < 100)) również nie są zgodne z wymaganiami, ponieważ zastosowanie operatora OR sprawia, że program uzna warunek za prawdziwy, jeżeli tylko a jest dodatnie, co nie jest zgodne z zasadą, że obie zmienne powinny spełniać warunki. Przykładowo, w kontekście aplikacji bankowej, takie niepoprawne sprawdzenie mogłoby prowadzić do nieautoryzowanych transakcji, co byłoby poważnym zagrożeniem dla bezpieczeństwa użytkowników.

Pytanie 27

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

A. Sortowanie szybkie
B. Sortowanie kubełkowe
C. Sortowanie przez wybór
D. Sortowanie bąbelkowe
Wybór sortowania przez wybór, sortowania szybkiego oraz sortowania kubełkowego odnosi się do różnych metod organizacji danych, które różnią się zarówno w zakresie algorytmicznym, jak i zastosowaniami praktycznymi. Sortowanie przez wybór (Selection Sort) polega na znajdowaniu najmniejszego (lub największego) elementu z nieposortowanej części tablicy i zamienieniu go z pierwszym elementem tej części. To podejście jest mniej efektywne dla dużych zbiorów danych, ponieważ również ma złożoność O(n²) i nie korzysta z optymalizacji, które mogłyby przyspieszyć proces sortowania. Z kolei sortowanie szybkie (Quick Sort) to bardziej zaawansowana technika, która dzieli tablicę na mniejsze podtablice i sortuje je rekurencyjnie, co daje średnią złożoność O(n log n). To sprawia, że jest preferowane w aplikacjach, gdzie wydajność jest kluczowa. Sortowanie kubełkowe (Bucket Sort) z kolei polega na podziale danych na kilka "kubełków" i sortowaniu ich wewnętrznie, co również ma na celu zwiększenie efektywności sortowania, zwłaszcza w przypadku danych rozłożonych równomiernie. Typowe błędy myślowe, które mogą prowadzić do niepoprawnych wniosków, to mylenie różnorodnych technik sortowania na podstawie ich nazwy lub złożoności, a także zakładanie, że prostsze metody, jak sortowanie bąbelkowe, są wystarczające dla wszystkich przypadków bez uwzględnienia wymagań dotyczących wydajności.

Pytanie 28

Znacznik <s> w HTML skutkuje

A. przekreślaniem tekstu
B. podkreślaniem tekstu
C. pochylaniem tekstu
D. migotaniem tekstu
Migotanie tekstu nie ma nic wspólnego ze znacznikiem <s>. W HTML nie ma znaczników, które migają, a takie efekty osiąga się zwykle dzięki CSS albo JavaScript. Można na przykład użyć CSS do animacji, żeby tekst migał. Pochylanie tekstu robi się za pomocą <em> lub <i>, które stosuje się do stylizacji, żeby tekst był w kursywie. Te znaczniki służą, żeby wyróżnić słowa w kontekście, ale nie mają nic wspólnego z przekreślaniem. Podkreślanie tekstu w HTML uzyskuje się używając znaku <u>, który wizualnie podkreśla tekst, ale nie przekreśla go. Zwykle używa się tego do linków albo do wyodrębnienia jakichś fragmentów tekstu na stronie, więc też nie ma związku z <s>. Dlatego wszystkie te odpowiedzi są błędne, bo nie rozumieją, jak działają odpowiednie znaczniki w HTML.

Pytanie 29

Wynikiem działania poniższej pętli for w przedstawionym kodzie PHP jest wyświetlenie liczb:

<?php
   for($i=5;$i>1;$i-=2)
       echo ($i%2)." ";
?>
A. 1 0 1
B. 1 1
C. 1 0
D. 1 0 1 0
Wybór błędnych odpowiedzi wynika z niepełnej analizy działania pętli oraz błędnych założeń dotyczących wartości zwracanych przez operację modulo. Odpowiedzi 1 0, 1 0 1 oraz 1 0 1 0 wskazują na zrozumienie, że liczby mogą mieć różne wartości modulo 2, ale z niewłaściwym przypisaniem ich do konkretnego kontekstu pętli. Wartość 0 w odpowiedzi 1 0 sugeruje, że użytkownik myśli, że $i może kiedykolwiek przyjąć wartość parzystą i wpłynąć na wynik, co jest błędne w kontekście analizowanego kodu. Liczba 5 jest liczbą nieparzystą, więc operacja modulo skutkuje 1, a 3 również jest liczbą nieparzystą, co również daje 1. Odpowiedź 1 0 1 sugeruje, że po osiągnięciu wartości $i = 1, wynik zmienia się na zero, co jest niezgodne z zasadami przetwarzania w tej pętli. Podobnie, odpowiedź 1 0 1 0 sugeruje, że w pętli mogłyby pojawić się inne wartości, podczas gdy w rzeczywistości, jak pokazuje analiza, pętla kończy się po dwóch iteracjach. Kluczowe jest zrozumienie, jak działają struktury kontrolne w programowaniu oraz jakie wyniki można otrzymać na podstawie operacji arytmetycznych. Taka analiza jest niezbędna, aby uniknąć typowych błędów związanych z operacjami na liczbach oraz wyciąganiem wniosków na temat ich właściwości.

Pytanie 30

Poniższe zapytanie zwróci

SELECT COUNT(cena) FROM uslugi;
A. średnią wartość cen usług w tabeli
B. łączną wartość cen usług w tabeli
C. wszystkie wartości cen usług w tabeli
D. liczbę wszystkich cen usług w tabeli
Zapytanie SQL "SELECT COUNT(cena) FROM uslugi;" jest skonstruowane w taki sposób, że używa funkcji agregującej COUNT, która zlicza liczbę niepustych wartości w kolumnie "cena" w tabeli "uslugi". Oznacza to, że wynik tego zapytania to liczba wierszy, w których kolumna "cena" nie jest pusta. Używanie funkcji COUNT jest standardową praktyką w SQL, gdy chcemy uzyskać ilość rekordów spełniających określone kryteria. W kontekście analizy danych, zrozumienie tego typu zapytań jest kluczowe, ponieważ pozwala na efektywne zbieranie statystyk, które mogą być później wykorzystane do podejmowania decyzji biznesowych. Na przykład, jeśli firma prowadzi usługi i chce wiedzieć, ile z nich ma przypisaną cenę, to to zapytanie dostarczy tej informacji. Warto także zwrócić uwagę, że funkcja COUNT jest często używana w połączeniu z innymi funkcjami agregującymi, takimi jak SUM czy AVG, w celu uzyskania bardziej kompleksowego obrazu danych.

Pytanie 31

W sklepie z farbami obowiązuje określony sposób obliczania kosztu farby: dla koloru niebieskiego i zielonego przy pojemności 2 litry cena farby wynosi cena bazowa + 20%. Wyrażenie logiczne w języku JavaScript, które weryfikuje tę zasadę, ma formę

A. (kolor == 'niebieski' || kolor == 'zielony') && pojemnosc == 2
B. kolor = 'niebieski' || kolor = 'zielony' && pojemnosc = 2
C. kolor == 'niebieski' && kolor == 'zielony' && pojemnosc == 2
D. (kolor = 'niebieski' || kolor = 'zielony') || pojemnosc = 2
Odpowiedź jest poprawna, ponieważ stosuje właściwą składnię języka JavaScript i prawidłowo określa warunki, które muszą być spełnione, aby cena farby zwiększyła się o 20%. Wyrażenie '(kolor == 'niebieski' || kolor == 'zielony') && pojemnosc == 2' skutecznie sprawdza, czy zmienna 'kolor' przyjmuje wartość 'niebieski' lub 'zielony', a jednocześnie czy 'pojemnosc' wynosi 2. Użycie operatora logicznego '||' (lub) oraz '&&' (i) jest kluczowe w definiowaniu logiki warunkowej, co jest podstawą w programowaniu. Dzięki tej metodzie można z łatwością rozszerzyć logikę o inne kolory czy pojemności w przyszłości. Przykładem zastosowania tej logiki w praktyce może być tworzenie dynamicznego kalkulatora cen w aplikacji internetowej, gdzie użytkownicy wybierają różne kolory i pojemności, a program automatycznie oblicza cenę na podstawie zadanych reguł. Ważne jest przestrzeganie dobrych praktyk programistycznych, takich jak jasne nazewnictwo zmiennych i unikanie złożonych wyrażeń, co zwiększa czytelność kodu. Warto również pamiętać, że stosując operator '==' zamiast '=' unikamy przypisania wartości, co jest kluczowe w kontekście debugowania i poprawności działania skryptu.

Pytanie 32

Jak powinna wyglądać prawidłowa, zgodna ze standardami języka HTML, forma samozamykającego się znacznika, który odpowiada za łamanie linii?

A. </ br>
B. </br>
C. <br/>
D. <br> </br>
Pierwsza z podanych odpowiedzi, </br>, jest błędna, ponieważ znacznik kończący nie powinien występować w kontekście samo-zamykających się znaczników. W HTML nie ma potrzeby używania tagu kończącego dla znacznika <br/>. Druga odpowiedź, <br> </br>, również jest niepoprawna, ponieważ pomimo że <br> jest poprawnym znacznikiem, jego użycie w połączeniu z dodatkowym znacznikiem końcowym nie ma sensu, jako że <br> nie wymaga zamknięcia. Tego rodzaju zapis prowadzi do niejasności w interpretacji dokumentu przez przeglądarki, a także może wpływać na wydajność renderowania strony. Ostatnia z odpowiedzi, </ br/>, jest błędna z dwóch powodów: po pierwsze, jest to niepoprawna składnia, a po drugie, ilustruje nieporozumienie dotyczące funkcji samo-zamykających się znaczników w HTML. W standardzie HTML nie stosuje się znaczników kończących dla elementów, które są zaprojektowane do samodzielnego zamykania. Rozumienie różnicy między tymi zapisami jest kluczowe dla programistów i projektantów stron, którzy dążą do tworzenia stron zgodnych z najlepszymi praktykami oraz standardami webowymi.

Pytanie 33

Aby na witrynie internetowej pokazać logo z przezroczystym tłem, należy użyć formatu

A. CDR
B. BMP
C. PNG
D. JPG
Format PNG (Portable Network Graphics) jest najbardziej odpowiednim wyborem do wyświetlania logo z przezroczystym tłem na stronie internetowej. Główną zaletą formatu PNG jest jego zdolność do obsługi przezroczystości, co oznacza, że tło logo może być całkowicie przezroczyste, pozwalając na bezproblemowe wkomponowanie go w różnorodne tła. W praktyce oznacza to, że logo w formacie PNG nie będzie miało niepożądanych białych lub kolorowych ramek, co ma kluczowe znaczenie dla estetyki i profesjonalnego wyglądu strony. Dodatkowo, PNG obsługuje wysoką jakość obrazu oraz kompresję bezstratną, co pozwala na zachowanie detali w grafice. Format ten jest powszechnie stosowany w projektowaniu stron internetowych oraz aplikacji mobilnych, zwłaszcza w przypadku ikon i grafik, które wymagają zachowania wyrazistości i przezroczystości. Warto również wspomnieć, że PNG stał się standardem w branży, szczególnie w kontekście użycia w sieci, co czyni go najlepszym wyborem dla projektantów i deweloperów.

Pytanie 34

Według zasad walidacji HTML5, jakie jest prawidłowe użycie znacznika hr?

A. &lt;/hr?&gt;
B. &lt;hr&gt;
C. &lt;/ hr&gt;
D. &lt;/ hr /&gt;
Wszystkie inne odpowiedzi dotyczące znacznika <hr> są błędne, i to z kilku powodów. Po pierwsze, odpowiedź &lt;/ hr&gt; sugeruje, że <hr> potrzebuje zamknięcia, co nie jest zgodne z zasadami HTML5. Znaczniki samodzielne, jak <hr>, nie mają zamykających wersji, bo to właśnie ich urok. Następnie, &lt;/hr?&gt; ma ten dziwny znak zapytania, co sprawia, że trudno to rozczytać. Tego typu znaki nie mogą być w nazwach znaczników, więc przeglądarki się w tym gubią. I jeszcze inna odpowiedź, &lt;/ hr /&gt;, wraca do starych wersji HTML, gdzie można było takie rzeczy robić, ale teraz to nie ma sensu. Niepoprawne znaczniki mogą sprawić, że strona będzie działać dziwnie, a to nie jest fajne dla użytkowników. Lepiej trzymać się aktualnych zasad, żeby wszystko działało jak należy.

Pytanie 35

Aby uzyskać dane z tabeli pracownicy wyłącznie dla osób, które osiągnęły 26 lat, należy zastosować zapytanie

A. SELECT * FROM wiek WHERE pracownicy > '25'
B. SELECT * FROM pracownicy AND wiek > '25'
C. SELECT * FROM pracownicy WHERE wiek > '25'
D. SELECT * FROM pracownicy OR wiek > '25'
Niepoprawne odpowiedzi wskazują na pewne nieporozumienia związane z konstrukcją zapytań SQL. W pierwszej z nich sugerowana jest składnia 'SELECT * FROM wiek WHERE pracownicy > '25';', co nie tylko używa niewłaściwej tabeli, ale także błędnie odnosi się do struktury zapytania. W SQL każda tabela powinna być podana w kontekście, w którym chcemy wykonać zapytanie. Druga odpowiedź 'SELECT * FROM pracownicy AND wiek > '25';' również jest błędna, ponieważ użycie operatora AND w tej formie jest niepoprawne. Operator AND służy do łączenia kilku warunków w klauzuli WHERE, a nie do wskazywania tabel. Tymczasem w trzeciej opcji 'SELECT * FROM pracownicy OR wiek > '25';' zastosowano operator OR, który jest również niewłaściwy, ponieważ może prowadzić do zwracania wszystkich pracowników, niezależnie od ich wieku. Takie podejście może wprowadzać w błąd i prowadzić do nieefektywnego przetwarzania danych. Kluczowe jest zrozumienie, że zapytania SQL wymagają precyzyjnego określenia zarówno tabel, jak i warunków filtrujących, aby były skuteczne i zgodne z zamierzonymi wynikami. Dlatego w praktyce, twórcy zapytań muszą być ostrożni w doborze składni i logiki, aby uniknąć tych typowych błędów.

Pytanie 36

W jakim formacie zostanie wyświetlona data po uruchomieniu poniższego kodu?

<?php
    echo date('l, dS F Y');
?>
A. Monday, 10th July 2017
B. Monday, 10 July 2017
C. Monday, 10th July 17
D. 10, Monday July 2017
Wybór niepoprawnej odpowiedzi wynika najprawdopodobniej z niezrozumienia, jak funkcja date() w PHP interpretuje jej argumenty. Wszystkie argumenty są literałami formatu, które są zastępowane ich odpowiednikami w oparciu o bieżącą datę i czas. Na przykład, 'l' jest zastępowane pełną nazwą dnia tygodnia, 'd' jest zastępowane dniem miesiąca z zerem wiodącym, 'S' dodaje angielski sufiks liczby porządkowej do dnia miesiąca, 'F' zwraca pełną nazwę miesiąca, a 'Y' zwraca pełny rok. Niezrozumienie lub pomylenie tych literałów formatu może prowadzić do nieprawidłowego formatowania daty. Ważne jest, aby dokładnie zrozumieć, jak każdy z tych literałów jest interpretowany przez funkcję date(), aby uniknąć błędów w wyświetlaniu daty. Pamiętaj, że różne systemy mogą wymagać różnych formatów daty, dlatego zrozumienie, jak manipulować formatem daty w PHP jest kluczowe dla efektywnego programowania.

Pytanie 37

Jaki typ powinien być wykorzystany, aby pole danych mogło przyjmować liczby zmiennoprzecinkowe?

A. CHAR
B. INT
C. VARCHAR
D. FLOAT
Typ danych INT służy do przechowywania liczb całkowitych, co oznacza, że nie może on przyjmować wartości z miejscami po przecinku. W zastosowaniach, gdzie wymagana jest precyzja dziesiętna, INT nie będzie wystarczający i może prowadzić do utraty informacji, co jest nieakceptowalne w kontekście obliczeń finansowych czy inżynieryjnych. CHAR oraz VARCHAR to typy danych używane do przechowywania tekstu, a ich zastosowanie w kontekście liczb rzeczywistych jest niewłaściwe. CHAR jest statycznym typem, który alokuje stałą ilość pamięci, niezależnie od długości przechowywanego tekstu, co może prowadzić do marnotrawstwa zasobów. Z kolei VARCHAR jest dynamiczny i może przechowywać zmienną długość tekstu, ale również nie potrafi reprezentować liczb w formie liczbowej. Użycie CHAR czy VARCHAR dla wartości liczbowych może skutkować błędami w obliczeniach, ponieważ traktują one numery jako tekst, co uniemożliwia jakiekolwiek operacje matematyczne na tych danych. W kontekście baz danych, ważne jest, aby dobierać odpowiednie typy danych dla przechowywanych wartości, aby uniknąć problemów z wydajnością oraz integralnością danych.

Pytanie 38

W CSS zdefiniowano styl dla pola edycji. Taki obszar będzie miał jasnozielone tło

input:focus { background-color: LightGreen; }
A. jeśli jest to pierwsze wystąpienie tego elementu w dokumencie
B. gdy zostanie na niego najechane kursorem myszy bez kliknięcia
C. po kliknięciu myszą w celu wprowadzenia tekstu
D. w każdej sytuacji
W języku CSS pseudoklasa :focus jest używana do definiowania stylów dla elementów, które są w stanie aktywnego fokusu. W przypadku elementów formularza, takich jak pola tekstowe input, fokus uzyskuje się poprzez kliknięcie myszą lub użycie klawisza tab, co pozwala na wprowadzenie tekstu. Pseudoklasa :focus umożliwia stylizację elementu tylko wtedy, gdy jest aktywny, co jest kluczowe dla poprawy użyteczności interfejsu użytkownika. W przykładzie podanym w pytaniu, gdy pole edycyjne input uzyska fokus, jego tło zmieni się na jasnozielone dzięki właściwości background-color ustawionej na LightGreen. Takie zastosowanie stylów CSS jest powszechne w projektowaniu formularzy, gdzie wizualne wskazanie aktywnego elementu jest istotne dla użytkownika. Dobre praktyki projektowania interfejsów kładą nacisk na czytelność i intuicyjność, co zwiększa dostępność i wygodę użytkowania aplikacji webowych. Stylowanie z wykorzystaniem pseudoklasy :focus pozwala projektantom i deweloperom tworzyć interfejsy, które są nie tylko estetyczne, ale także funkcjonalne, wspierając użytkowników w efektywnym korzystaniu z aplikacji.

Pytanie 39

Jaki jest domyślny port dla serwera HTTP?

A. 8080
B. 21
C. 443
D. 80
Port 8080 często jest używany jako alternatywne rozwiązanie dla HTTP, zwłaszcza w środowiskach deweloperskich lub tam, gdzie port 80 jest już zajęty. Mimo że jest to popularny wybór, nie jest to domyślny port przypisany do HTTP. Port 443 to standardowy port dla HTTPS, czyli szyfrowanego protokołu HTTP. HTTPS zapewnia bezpieczną komunikację poprzez szyfrowanie danych przesyłanych między klientem a serwerem, co jest kluczowe dla ochrony prywatności i integralności danych w Internecie. W przypadku portu 21, jest on przypisany do protokołu FTP (File Transfer Protocol), który służy do transferu plików między klientem a serwerem. FTP jest zupełnie innym protokołem niż HTTP i służy do innych celów. Błędne skojarzenie portu 21 z HTTP może wynikać z podstawowej znajomości protokołów internetowych, gdzie czasem mylnie przypisuje się porty znane z innych zastosowań. Ważne jest, aby dokładnie rozumieć, które porty są przypisane do jakich protokołów, aby uniknąć problemów w konfiguracji sieciowej i błędów w projektowaniu aplikacji internetowych. Zrozumienie tych różnic jest kluczowe dla każdego, kto pracuje w branży IT.

Pytanie 40

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.