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: 9 czerwca 2026 00:48
  • Data zakończenia: 9 czerwca 2026 01:01

Egzamin zdany!

Wynik: 27/40 punktów (67,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

Który protokół jest stosowany do przesyłania plików na serwer WWW?

A. FTP
B. POP3
C. DNS
D. DHCP
FTP, czyli File Transfer Protocol, to protokół używany do przesyłania plików między komputerami w sieci, zwłaszcza w kontekście serwerów WWW. Umożliwia on użytkownikom łatwe przesyłanie, pobieranie, a także zarządzanie plikami na serwerze. FTP działa na bazie modelu klient-serwer, gdzie klient nawiązuje połączenie z serwerem i może przesyłać pliki w obie strony. Protokół ten operuje na portach 20 i 21, co czyni go standardem w dziedzinie przesyłania plików. W praktyce, wiele aplikacji klienckich, takich jak FileZilla czy WinSCP, wykorzystuje FTP do zarządzania plikami na serwerach. FTP wspiera różne metody autoryzacji, w tym logowanie anonimowe, co umożliwia użytkownikom dostęp do publicznych zasobów. Warto również zaznaczyć, że istnieją rozszerzenia, takie jak FTPS czy SFTP, które oferują dodatkowe funkcje zabezpieczeń, umożliwiając szyfrowanie danych podczas transferu. W kontekście standardów, FTP jest definiowany w dokumentach RFC 959 oraz RFC 3659, które określają jego działanie oraz interakcje w sieci. Dzięki swojej wszechstronności i niezawodności, FTP pozostaje jednym z najpopularniejszych protokołów do przesyłania plików w Internecie.

Pytanie 2

Wskaż blok, który jest sformatowany zgodnie z podanym stylem CSS.

background: linear-gradient(to right, LightBlue, DarkBlue);
Ilustracja do pytania
A. Blok 4
B. Blok 1
C. Blok 2
D. Blok 3
Blok 2 jest poprawną odpowiedzią ponieważ wykorzystuje styl CSS background linear-gradient(to right LightBlue DarkBlue) co oznacza że gradient kolorów rozciąga się od lewej do prawej strony elementu CSS linear-gradient pozwala na tworzenie gładkich przejść między kolorami co jest popularną techniką w projektowaniu stron internetowych Styl ten dodaje wizualnej atrakcyjności i może być użyty w różnych częściach witryny takich jak przyciski nagłówki czy tła sekcji Właściwość gradientu pozwala na zastosowanie wielu kolorów i kontrolowanie ich punktów początkowych i końcowych co zwiększa elastyczność projektowania Ponadto gradienty są wspierane przez wszystkie nowoczesne przeglądarki co czyni je doskonałym wyborem dla responsywnych stron internetowych Wykorzystanie gradientów zamiast obrazów tła pomaga także w optymalizacji strony zmniejszając czas ładowania co jest zgodne z najlepszymi praktykami branżowymi i wpływa pozytywnie na doświadczenie użytkownika CSS oferuje również inne typy gradientów takie jak radial-gradient i conic-gradient które mogą być używane w zależności od potrzeb projektowych

Pytanie 3

Pętla napisana w języku PHP wprowadzi do tablicy liczby
$x=0
for($i=0;$i<10;$i++)
{
   $tab[$i]=$x;
   $x=$x+10;
}

A. 0,10,20,30,40,50,60,70,80,90
B. 0,1,2,3,4,5,6,7,8,9,10
C. 10,20,30,40,50,60,70,80,90,100
D. 0,1,2,3,4,5,6,7,8,9
Pętla w języku PHP, zapisana w podanym kodzie, skutkuje wstawieniem do tablicy wartości będących kolejnymi wielokrotnościami liczby 10, począwszy od zera. Na początku zmienna $x jest inicjalizowana na wartość 0. Wewnątrz pętli for, która iteruje od 0 do 9, każda iteracja przypisuje do elementu tablicy $tab index $i wartość zmiennej $x, a następnie zwiększa $x o 10. Dzięki temu, w tablicy zostaną zapisane wartości: 0 ( dla i=0), 10 ( dla i=1), 20 ( dla i=2) i tak dalej, aż do 90 ( dla i=9). Po zakończeniu pętli tablica $tab będzie wyglądać następująco: [0, 10, 20, 30, 40, 50, 60, 70, 80, 90]. Jest to przykład prostego użycia pętli for oraz indeksowania tablicy w PHP, co jest podstawową umiejętnością programistyczną w tym języku. Użytkownicy mogą zauważyć, że zmiana wartości $x lub liczby iteracji w pętli zmieniłaby uzyskany wynik. Ten kod ilustruje sposób pracy z pętlami oraz tablicami w PHP, które są kluczowymi elementami programowania.

Pytanie 4

Która z funkcji agregujących dostępnych w SQL służy do obliczania średniej z wartości znajdujących się w określonej kolumnie?

A. COUNT
B. MIN
C. SUM
D. AVG
Funkcja AVG w języku SQL jest wbudowaną funkcją agregującą, która służy do obliczania średniej wartości we wskazanej kolumnie. Oblicza ona średnią arytmetyczną z wartości liczbowych w danej kolumnie, co jest niezwykle przydatne w analizie danych. Na przykład, jeśli mamy tabelę z wynikami sprzedaży, możemy użyć zapytania SQL: SELECT AVG(sprzedaż) FROM tabela_sprzedaży; aby uzyskać średnią sprzedaż. Dobrą praktyką jest stosowanie tej funkcji w połączeniu z klauzulą GROUP BY, co pozwala na obliczenie średnich wartości w różnych grupach danych, na przykład średnia sprzedaż według kategorii produktowej. Przy stosowaniu funkcji AVG warto pamiętać, że ignoruje ona wartości NULL, co wpływa na wynik obliczeń. W kontekście analizy danych w SQL, znajomość takich funkcji jak AVG jest kluczowa dla efektywnego przetwarzania i analizy informacji, co stanowi fundament dobrego zarządzania danymi.

Pytanie 5

Dana jest tabela firmy zawierająca następujące kolumny: nazwa, adres, NIP, obrot (obrót w ostatnim miesiącu), rozliczenie, status. Wykonanie kwerendy SQL SELECT sprawi, że zostaną wyświetlone

SELECT nazwa, NIP FROM firmy WHERE obrot < 4000;
A. wszystkie dane firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
B. wszystkie dane firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
C. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
D. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
Twoja odpowiedź jest poprawna. Przy wykonywaniu zapytań SQL często wybieramy nie wszystkie, a jedynie niektóre kolumny z tabeli. W tym przypadku, pytanie dotyczyło wybrania tylko nazwy i NIPu firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł. Do realizacji tego zadania użyliśmy kwerendy SELECT z określeniem kolumn oraz warunku w klauzuli WHERE. Jest to częsty scenariusz w praktyce, gdy potrzebujemy wyfiltrować dane według określonych kryteriów. Ważne jest zrozumienie, że instrukcja SELECT jest używana do wybrania jednej lub wielu kolumn, które chcemy zobaczyć w wynikach, a klauzula WHERE służy do definiowania warunków, które muszą spełniać dane wyświetlane w wynikach.

Pytanie 6

Po wykonaniu przedstawionego poniżej polecenia SQL użytkownik Ela będzie mógł

GRANT SELECT, INSERT, UPDATE, DELETE ON baza1.tab1 TO 'Ela'@'localhost';
A. jedynie dodawania i edytowania danych
B. wykonywania wszystkich operacji na strukturze danych
C. jedynie tworzenia i zmiany struktury tabel
D. wykonywania wszelkich działań na danych
Przy analizie pytania o uprawnienia SQL istotne jest zrozumienie znaczenia poszczególnych komend w kontekście zarządzania bazą danych. Komenda GRANT w SQL służy do przyznawania określonych uprawnień użytkownikom względem danych w bazie. Odpowiedź sugerująca że użytkownik Ela może jedynie tworzyć i modyfikować strukturę tabel jest nieprawidłowa ponieważ polecenie nie zawiera DDL (Data Definition Language) które byłoby odpowiedzialne za tworzenie i modyfikację struktur takich jak CREATE czy ALTER. Uprawnienia INSERT i UPDATE dotyczą manipulacji danymi a nie strukturami. Z kolei sugerowanie że użytkownik może jedynie dodawać i modyfikować dane także jest błędne ponieważ DELETE i SELECT są kluczowymi operacjami w kontekście pełnego dostępu do danych pozwalając odpowiednio na usuwanie danych i ich odczyt. Ponadto stwierdzenie że użytkownik może wykonywać wszystkie operacje na strukturze danych także jest błędne ponieważ operacje DML (Data Manipulation Language) takie jak INSERT UPDATE DELETE SELECT nie odnoszą się do samej struktury a do zawartości tabeli. Typowe błędy myślowe w tym kontekście wynikają z mylenia operacji na danych z operacjami na strukturze co jest częstym problemem wśród początkujących administratorów baz danych. Zrozumienie różnicy pomiędzy DDL i DML jest kluczowe dla efektywnego zarządzania uprawnieniami i bezpieczeństwem baz danych co jest fundamentem pracy administratora. Prawidłowa interpretacja uprawnień i ich konsekwencji w kontekście bezpieczeństwa i zarządzania danymi jest nieodzownym elementem pracy z bazami danych.

Pytanie 7

Funkcja PHP var_dump() prezentuje dane na temat zmiennej, w tym jej typ oraz wartość. Jakim wynikiem zakończy się poniższy fragment kodu?

$x = 59.85; var_dump($x);
A. int(59)
B. array(2) { [0]=> int(59) [1]=> int(85) }
C. string(5) "59.85"
D. float(59.85)
Wybrane odpowiedzi nie są zgodne z poprawnym wynikiem działania funkcji var_dump() w PHP. Odpowiedź, która sugeruje, że wynik to "int(59)" jest błędna, ponieważ funkcja ta nie konwertuje zmiennoprzecinkowych wartości na liczby całkowite, a 59.85 jest wyraźnie liczbą zmiennoprzecinkową. Inna odpowiedź, sugerująca "string(5) "59.85"", jest myląca, ponieważ zmienna $x została zadeklarowana jako liczba, a nie jako string. PHP automatycznie określa typ zmiennej na podstawie przypisanej wartości, a w tym przypadku jest to typ float. Odpowiedź "array(2) { [0]=> int(59) [1]=> int(85) }" również jest nieprawidłowa, ponieważ nie mamy do czynienia z tablicą, a z pojedynczą zmienną. Przykłady te ilustrują typowe nieporozumienia dotyczące typów danych w PHP. Programiści powinni zrozumieć, że PHP jest dynamicznie typowanym językiem, co oznacza, że typ zmiennej jest określany podczas wykonywania programu, a nie w czasie kompilacji. Właściwe zrozumienie typów danych oraz ich konwersji jest kluczowe dla zapewnienia poprawności i bezpieczeństwa kodu.

Pytanie 8

Strona internetowa powinna mieć zorganizowaną strukturę bloków. Aby osiągnąć ten układ, należy przypisać sekcjom odpowiednie właściwości w ten sposób:

Ilustracja do pytania
A. float wyłącznie dla bloku 5; clear dla bloku 2
B. float jedynie dla bloków: 3, 4; clear dla bloku 5
C. float tylko dla bloków: 2, 3, 4; clear dla bloku 5
D. float tylko dla bloku 2; clear dla bloków: 3, 4
Odpowiedź czwarta jest prawidłowa, ponieważ użycie właściwości CSS float dla bloków 2, 3 i 4 oraz właściwości clear dla bloku 5 odpowiada oczekiwanemu układowi strony. Float pozwala na ustawienie elementów obok siebie w poziomie. W tym przypadku blok 2, 3 i 4 będą umieszczone w jednej linii dzięki właściwości float: left. Blok 2 będzie zajmował więcej przestrzeni w pionie, co pozwala umieścić bloki 3 i 4 obok siebie. Blok 5 powinien znaleźć się poniżej, więc wymaga zastosowania właściwości clear: both, aby uniknąć zachodzenia na inne elementy pływające. Taki układ jest często stosowany w projektowaniu responsywnych stron internetowych, gdzie float umożliwia elastyczne dostosowanie się elementów do różnych szerokości ekranów. Warto pamiętać, że obecnie często używa się także display: flex lub grid jako nowocześniejszych sposobów układania elementów, jednak float wciąż znajduje zastosowanie w prostych układach. Zrozumienie, jak działa float i clear, jest kluczowe dla tworzenia poprawnych i estetycznych układów bloków na stronie internetowej.

Pytanie 9

Zapis selektora wskazuje, że kolor tła będzie brązowy dla

input[type=number] { background-color: Brown; }
A. wszystkich formularzy
B. formularzy, gdy użytkownik wprowadzi w nie jakąkolwiek cyfrę
C. formularzy, które są typu numerycznego
D. wszystkich tekstów na stronie internetowej
Zapis selektora CSS `input[type=number] { background-color: Brown; }` odnosi się do pól edycyjnych, które są zdefiniowane jako typu numerycznego. Oznacza to, że wszystkie elementy <input>, które mają atrybut `type` ustawiony na `number`, będą miały brązowe tło. Tego typu selektory są przydatne, ponieważ pozwalają na precyzyjne stylizowanie elementów formularzy, co jest kluczowe dla poprawy doświadczeń użytkowników. Stosowanie odpowiednich typów elementów formularza, takich jak `number`, umożliwia kontrolowanie danych wprowadzanych przez użytkowników, co jest zgodne z dobrymi praktykami w zakresie walidacji danych. W praktyce, jeśli w formularzu istnieje pole do wprowadzania dat, które powinno przyjmować tylko wartości liczbowe, stylizowanie go w ten sposób może pomóc w natychmiastowym wizualnym wskazaniu użytkownikowi, że pole jest przeznaczone do wprowadzania numerów. Warto również pamiętać, że stosowanie odpowiednich typów wejściowych wspiera responsywność, umożliwiając na przykład wyświetlanie klawiatury numerycznej na urządzeniach mobilnych, co zwiększa komfort użytkowania.

Pytanie 10

$liczba = 10;
while($liczba<50){
   echo "$liczba";
   $liczba=$liczba+5;
}
Jakie liczby zostaną wyświetlone w wyniku działania tej pętli w języku PHP?

A. 0 5 10 15 20 25 30 35 40 45 50
B. 10 15 20 25 30 35 40 45 50
C. 0 5 10 15 20 25 30 35 40 45
D. 10 15 20 25 30 35 40 45
Wynik działania pętli w języku PHP jest poprawny, ponieważ zaczyna się od wartości 10, a następnie w każdej iteracji zwiększa tę wartość o 5, aż osiągnie 50, które nie jest wliczane do wypisywanych wyników. Wartości wypisywane w trakcie działania pętli to: 10, 15, 20, 25, 30, 35, 40, 45. Wartością graniczną jest 50, która przerywa działanie pętli. Taki mechanizm jest często stosowany w programowaniu, zwłaszcza w sytuacjach, gdzie musimy iteracyjnie przetwarzać dane w określonym zakresie. Dobrą praktyką jest również upewnienie się, że warunki pętli są jasno określone, co zapobiega niepożądanym wynikom, takim jak nieskończone pętle. W PHP używamy pętli takich jak 'while', 'for' i 'foreach', które są kluczowymi elementami w programowaniu i pozwalają na efektywne przetwarzanie danych.

Pytanie 11

Debugger to narzędzie programowe, którego zadaniem jest:

A. wykrywanie błędów składniowych w kodzie źródłowym
B. instalowanie środowiska programistycznego
C. łączenie bibliotek i kodu w plik wykonywalny
D. analiza działającego programu w celu znalezienia przyczyn błędnego działania
Pozostałe odpowiedzi opisują inne narzędzia. Instalowanie środowiska programistycznego to zadanie instalatora, a nie debuggera. Wykrywanie błędów składniowych w kodzie źródłowym należy do kompilatora lub interpretera - wychwytują je, zanim program w ogóle ruszy, podczas gdy debugger pracuje na już działającym programie. Łączenie plików bibliotek i przetworzonego kodu w plik wykonywalny realizuje konsolidator (linker) na etapie budowania. Debugger natomiast wkracza w fazie uruchomienia, by zbadać, dlaczego program zachowuje się niepoprawnie - dlatego to ta odpowiedź jest właściwa.

Pytanie 12

Aby za pomocą CSS zdefiniować przedstawione na rysunku opływanie obrazu tekstem należy w stylu obrazu wprowadzić zapis

Ilustracja do pytania
A. float: right;
B. clear: both;
C. float: left;
D. table: left;
Twoja odpowiedź nie jest prawidłowa. Wszystkie podane błędne odpowiedzi są niepoprawne, ponieważ nie tworzą żądanego efektu opływania obrazu przez tekst. 'clear: both;' jest własnością CSS, która służy do zapobiegania opływaniu, a nie jego tworzeniu. Jest używana, gdy nie chcemy, aby dany element był opływany przez inne. 'table: left;' nie jest istniejącą własnością CSS, i nie ma związanego z nią konkretnego efektu. Właściwość 'float: left;' powoduje, że obraz zostaje przesunięty na lewą stronę strony, co powoduje, że tekst opływa go od prawej strony, a nie od lewej, jak to jest wymagane w pytaniu. Pamiętaj, aby zawsze dobrze zrozumieć, jakie efekty daje użycie konkretnych właściwości CSS, zanim zastosujesz je w praktyce.

Pytanie 13

Obiekt typu array w języku JavaScript służy do przechowywania:

A. wielu wartości, ale tylko funkcji
B. wielu wartości wyłącznie tekstowych
C. wielu wartości wyłącznie liczbowych
D. wielu wartości dowolnego typu
Tablica (array) w JavaScript to uporządkowany zbiór elementów dostępnych po indeksie (od 0). W odróżnieniu od tablic w językach o ścisłym typowaniu, tablica JS może przechowywać wartości RÓŻNYCH typów naraz - liczby, napisy, wartości logiczne, obiekty, funkcje, a nawet inne tablice, np. [1, "tekst", true, {a: 1}]. Elementy dodaje się m.in. metodą push(), a liczbę elementów daje length. Dlatego tablica służy do przechowywania wielu wartości dowolnego typu.

Pytanie 14

Który lekki, tekstowy format danych jest dziś najczęściej używany do asynchronicznej wymiany danych między klientem a serwerem (np. w AJAX)?

A. BMP
B. DOCX
C. JSON
D. CSV
Pozostałe formaty nie służą do wymiany danych w AJAX. CSV to prosty zapis tabelaryczny (wartości oddzielone przecinkami) - nadaje się do arkuszy i eksportu, ale nie odwzorowuje zagnieżdżonych struktur danych i rzadko bywa używany w API. DOCX to format dokumentów tekstowych programu Word, przeznaczony do treści do druku, a nie do komunikacji aplikacji. BMP to format obrazu rastrowego - przechowuje grafikę, a nie dane strukturalne. Do asynchronicznej wymiany danych z serwerem używa się JSON, dlatego ta odpowiedź jest poprawna.

Pytanie 15

Kod CSS można włączyć do dokumentu HTML, używając znacznika

A. <style>
B. <head>
C. <body>
D. <meta>
Odpowiedź <style> jest prawidłowa, ponieważ ten znacznik HTML jest dedykowany do osadzania kodu CSS wewnątrz dokumentu HTML. Znacznik <style> powinien być umieszczony w sekcji <head> dokumentu, co umożliwia przeglądarkom interpretację stylów przed renderowaniem treści strony. Dzięki temu można definiować różne reguły CSS, które modyfikują wygląd elementów HTML, co jest kluczowe w tworzeniu estetycznych i funkcjonalnych stron internetowych. Przykładowo, można użyć <style> do określenia koloru tła, rozmiaru czcionki czy marginesów. Ważne jest, aby stosować zasady dotyczące kaskadowości, ponieważ style zdefiniowane w <style> mają priorytet nad stylem zewnętrznym, jeśli są tak samo specyficzne. Dodatkowo, korzystanie z <style> jest zgodne z zasadami dobrych praktyk, takich jak unikanie nadmiarowego ładowania zewnętrznych plików CSS w przypadku prostych projekty, co przyspiesza czas ładowania strony.

Pytanie 16

Co oznacza dodanie kanału alfa podczas obróbki grafiki rastrowej?

A. ustalenie balansu bieli
B. zwiększenie głębi ostrości
C. wyostrzenie krawędzi obrazu
D. wprowadzenie warstwy z przezroczystością
Dodanie kanału alfa oznacza wprowadzenie dodatkowej warstwy informacji o PRZEZROCZYSTOŚCI pikseli - dzięki niej fragmenty obrazu mogą być przezroczyste lub półprzezroczyste. Dlatego to wprowadzenie warstwy z przezroczystością.

Pytanie 17

Do czego służy funkcja CONCAT() w SQL?

A. do usuwania wskazanego tekstu
B. do przycinania tekstu
C. do wyciągania podłańcucha
D. do łączenia tekstów (konkatenacji)
Pozostałe operacje wykonują inne funkcje. Usuwanie lub zamianę fragmentu robi REPLACE(), przycinanie - TRIM(), a wycinanie podłańcucha - SUBSTRING(). Łączeniem tekstów zajmuje się CONCAT().

Pytanie 18

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

A. PHP
B. Perl
C. C#
D. JavaScript
PHP to skryptowy język serwerowy, który OSADZA SIĘ wprost w HTML (między <?php ... ?>) i wykonuje na SERWERZE - do przeglądarki trafia już gotowy HTML będący wynikiem działania kodu. Tak powstają strony dynamiczne: logowanie, sklepy, fora. Zapamiętaj: PHP liczy się na serwerze, a klient widzi tylko efekt.

Pytanie 19

Jak ustawić tło body obrazem rys.png, powtarzanym TYLKO w poziomie?

A.
background-image: url("rys.png"); background-repeat: repeat;
B.
background-image: url("rys.png"); background-repeat: repeat-y;
C.
background-image: url("rys.png"); background-repeat: repeat-x;
D.
background-image: url("rys.png"); background-repeat: round;
Powtarzanie obrazu tła reguluje background-repeat. Wartość repeat-x powiela obraz TYLKO w poziomie (wzdłuż osi X), tworząc poziomy pas. Dlatego tło powtarzane jedynie w poziomie daje background-repeat: repeat-x.

Pytanie 20

W tabeli pokazano cechy pliku graficznego. Aby rysunek ładował się szybciej na stronie WWW, należy

Wymiary: 4272 x 2848px
Rozdzielczość: 72 dpi
Format: JPG
A. zmienić proporcje szerokości do wysokości
B. zmienić format grafiki na CDR
C. zmniejszyć wymiary rysunku
D. zwiększyć rozdzielczość
Zmniejszenie wymiarów rysunku to kluczowy krok w optymalizacji czasu ładowania grafiki na stronę WWW. Mniejsze wymiary oznaczają mniejszą ilość danych do przesłania, co skraca czas ładowania strony. Praktycznym przykładem jest zmniejszenie wymiarów obrazu z 4272 x 2848 pikseli do bardziej standardowego rozmiaru, jak np. 1920 x 1080 pikseli dla grafik wyświetlanych na ekranach. Zmniejszenie wymiarów nie tylko przyspiesza ładowanie ale także zmniejsza zużycie transferu danych co jest istotne przy ograniczeniach mobilnych. Warto pamiętać że mniejsze grafiki są też mniej zasobożerne dla urządzeń użytkowników co wpływa na ogólną wydajność strony. Zastosowanie odpowiednich wymiarów jest zgodne z dobrymi praktykami optymalizacji webowej rekomendowanymi przez Google PageSpeed Insights i inne narzędzia analityczne. Optymalizacja grafiki poprzez zmniejszenie jej wymiarów jest podstawową czynnością w procesie tworzenia responsywnych i szybko działających witryn internetowych.

Pytanie 21

W relacyjnym modelu baz danych, termin krotka odnosi się do

A. liczby rekordów w danej tabeli
B. wszystkich wierszy tabeli łącznie z wierszem nagłówkowym
C. wszystkich kolumn tabeli, które zawierają atrybuty danego obiektu
D. wierszy tabeli, z wyjątkiem wiersza nagłówkowego, w którym znajdują się nazwy kolumn
Pierwsza z niepoprawnych odpowiedzi sugeruje, że krotki to liczba rekordów tabeli. Jednak w rzeczywistości krotki są pojedynczymi wierszami zawierającymi zbiory atrybutów, a nie ich ilość. Liczba rekordów, czyli krotek, jest zmienną miarą, która jest istotna dla analizy danych, ale sama w sobie nie definiuje krotek. Kolejna odpowiedź zakłada, że krotki obejmują wszystkie wiersze tabeli wraz z wierszem nagłówkowym. Wiersz nagłówkowy, który zawiera nazwy kolumn, nie jest częścią krotek, ponieważ krotki reprezentują tylko dane użytkownika. W związku z tym, takie ujęcie błędnie interpretuje strukturę danych w tabeli. Ostatnia niepoprawna odpowiedź sugeruje, że krotki to wszystkie kolumny tabeli zawierające atrybuty obiektu. Kolumny definiują atrybuty i zapewniają strukturę dla danych, ale same w sobie nie są krotkami. Krotka odnosi się do konkretnego zestawu wartości atrybutów w jednym wierszu, a nie do ich zbioru jako całości. Te nieścisłości odzwierciedlają fundamentalne różnice między strukturą relacyjnych baz danych a ich interpretacją w kontekście pojedynczych rekordów.

Pytanie 22

Aby zaprojektować kształt logo dla strony WWW sposobem przedstawionym na obrazie, należy zastosować funkcję

Ilustracja do pytania
A. części wspólnej.
B. różnicy.
C. wykluczenia.
D. sumy.
Niestety, wybrana odpowiedź jest niepoprawna. Zamiast 'różnicy', 'sumy' czy 'części wspólnej', poprawnym rozwiązaniem jest 'wykluczenie'. Na obrazie mamy do czynienia z dwoma kształtami, z których fioletowy jest nałożony na czerwony. Wynik to kształt pokazujący tylko te części czerwonego kształtu, które nie pokrywają się z fioletowym. Właśnie tak działa operacja wykluczenia w grafice komputerowej - wynikowa forma zawiera tylko te elementy jednego obiektu, które nie nakładają się z drugim. Operacje różnicy, sumy czy części wspólnej miałyby inne efekty. 'Różnica' usunęłaby część czerwonego kształtu pokrywającą się z fioletowym, 'suma' utworzyłaby kształt zawierający całość obu kształtów, a 'część wspólna' wytworzyłaby kształt pokrywający się z oboma kształtami. Odnoszenie się do niewłaściwych operacji może prowadzić do znacznych błędów w projektowaniu graficznym.

Pytanie 23

W PHP typ float oznacza

A. łańcuchowy
B. całkowity
C. logiczny
D. zmiennoprzecinkowy
Typ float w PHP to coś w rodzaju magicznego narzędzia do pracy z liczbami, które mają część dziesiętną. Tego typu liczby są niezbędne, kiedy musimy mieć na uwadze detale, na przykład w finansach czy matematyce. Weźmy taki przykład: przy obliczaniu cen w sklepie internetowym często spotykamy się z kwotami jak 19.99 zł. Dzięki PHP możemy wykonywać różne operacje matematyczne na tych liczbach, co daje nam dużą elastyczność w pracy z danymi liczbowymi. Jednak trzeba wiedzieć, że ze względu na to, jak komputery przechowują liczby zmiennoprzecinkowe, zdarzają się problemy z ich dokładnością. W sytuacjach, gdzie to precyzja jest kluczowa, jak w przypadku obliczeń finansowych, dobrze jest skorzystać z takich funkcji jak round(), żeby zaokrąglić wynik do odpowiedniej liczby miejsc po przecinku. Wiedza na temat typu float i jego zastosowania to absolutna podstawa w pracy z programowaniem, zwłaszcza przy tworzeniu aplikacji webowych.

Pytanie 24

Etap, w którym identyfikuje się oraz eliminuje błędy w kodzie źródłowym programów, to

A. kompilowanie
B. debugowanie
C. standaryzacja
D. normalizacja
Debugowanie to proces identyfikacji, analizy i eliminacji błędów w kodzie źródłowym programów komputerowych. Jest to kluczowy etap w cyklu życia oprogramowania, który zapewnia, że aplikacje działają zgodnie z założeniami projektowymi. W praktyce debugowanie może obejmować różne techniki, takie jak stosowanie punktów przerwania, śledzenie wartości zmiennych czy analiza stosu wywołań. Przykładowo, programista może użyć narzędzi debugujących, takich jak GDB dla programów w C/C++ lub wbudowane debugery w IDE, takie jak Visual Studio czy Eclipse. Debugowanie jest również związane z dobrymi praktykami, jak testowanie jednostkowe i integracyjne, które pozwalają na wczesne wykrycie błędów. Zrozumienie i umiejętność efektywnego debugowania jest niezbędna dla każdego programisty, aby tworzyć wysokiej jakości, niezawodne i wydajne oprogramowanie. Warto również podkreślić znaczenie dokumentacji oraz korzystania z systemów kontroli wersji, takich jak Git, które pozwalają śledzić zmiany w kodzie i ułatwiają proces debugowania.

Pytanie 25

W tabeli programiści znajdują się kolumny: id, nick, ilosc_kodu, ocena. W kolumnie ilosc_kodu zapisano liczbę linii kodu, które programista napisał w danym miesiącu. Jakie zapytanie umożliwi obliczenie całkowitej liczby linii kodu stworzonych przez wszystkich programistów?

A. SELECT COUNT(programisci) FROM ilosc_kodu;
B. SELECT SUM(ilosc_kodu) FROM programisci;
C. SELECT MAX(ilosc_kodu) FROM programisci
D. SELECT SUM(ocena) FROM ilosc_kodu;
Poprawna odpowiedź to 'SELECT SUM(ilosc_kodu) FROM programisci;'. To polecenie wykorzystuje funkcję agregującą SUM, która sumuje wartości w kolumnie 'ilosc_kodu' dla wszystkich wpisów w tabeli 'programisci'. Jest to najbardziej odpowiednia metoda do obliczenia całkowitej liczby linii kodu napisanych przez wszystkich programistów w danym miesiącu. Funkcje agregujące, takie jak SUM, COUNT, AVG, MAX czy MIN, są kluczowe w SQL, ponieważ pozwalają na efektywne przetwarzanie danych i uzyskiwanie podsumowań na podstawie określonych kryteriów. Dobrą praktyką jest również używanie jednoznacznych aliasów w zapytaniach oraz dbanie o czytelność kodu, co ułatwia jego późniejsze modyfikacje oraz utrzymanie. Przykładowo, można rozszerzyć zapytanie o dodatkowe filtry, aby obliczyć sumę linii tylko dla programistów o określonej ocenie, używając klauzuli WHERE. Tego typu umiejętności są niezbędne w codziennej pracy analityka danych, programisty lub administratora baz danych, gdzie przetwarzanie informacji w sposób efektywny i zrozumiały ma kluczowe znaczenie dla podejmowania decyzji biznesowych.

Pytanie 26

Zgodnie z zasadami ACID, odnoszącymi się do przeprowadzania transakcji, wymóg trwałości (ang. durability) wskazuje, że

A. dane zatwierdzone przez transakcję powinny być dostępne niezależnie od tego, co się wydarzy po jej zakończeniu
B. transakcja może w pewnych okolicznościach być rozdzielona na dwa niezależne etapy
C. w sytuacji naruszenia spójności bazy danych transakcja eliminuje tabele z kluczami obcymi
D. w trakcie realizacji transakcji dane mogą być zmieniane przez inne transakcje
Wymóg trwałości (durability) w kontekście właściwości ACID oznacza, że po zatwierdzeniu transakcji, wszystkie zmiany dokonane na danych muszą być utrwalone w trwałym magazynie danych, a ich dostępność nie może być zagrożona przez awarie systemu, takie jak utrata zasilania czy awarie oprogramowania. Przykładem może być system bankowy, gdzie po wykonaniu operacji przelewu, saldo konta musi być natychmiastowo zaktualizowane i dostępne w systemie, niezależnie od tego, co wydarzy się później. W praktyce, wiele systemów zarządzania bazami danych, takich jak PostgreSQL czy MySQL, wykorzystuje mechanizmy logowania transakcji oraz techniki replikacji, aby zapewnić, że dane pozostaną spójne i dostępne nawet w obliczu kryzysów. Zgodność z zasadą trwałości jest kluczowa dla utrzymania zaufania użytkowników i stabilności operacyjnej systemów informacyjnych, co jest wspierane przez standardy takie jak ISO/IEC 27001 dotyczące zarządzania bezpieczeństwem informacji.

Pytanie 27

Której metody JS użyć, aby WYODRĘBNIĆ fragment napisu między podanymi indeksami?

A.
trim()
B.
concat()
C.
slice()
D.
replace()
Pozostałe metody robią co innego. trim() usuwa białe znaki z końców napisu, concat() ŁĄCZY napisy, a replace() podmienia fragment na inny tekst. Wycinanie fragmentu po indeksach realizuje slice().

Pytanie 28

Aby obraz w filmie zmieniał się gładko, liczba klatek (niezachodzących na siebie) w ciągu sekundy musi mieścić się przynajmniej w zakresie

A. 24 do 30 fps
B. 20 do 23 fps
C. 31 do 36 fps
D. 16 do 19 fps
Wybór '31 do 36 fps' jest trochę mylący, bo chociaż teoretycznie mogłoby to zapewnić płynny obraz, to w praktyce nie jest to standard w produkcjach filmowych. Klatki powyżej 30 fps w tradycyjnym kinie to rzadkość, co może wprowadzać zamieszanie co do efektów wizualnych. Ponadto sztuczne zwiększenie fps takich jak 31 może sprawić, że ruch będzie wyglądał na rozmyty, a to niespecjalnie pasuje do estetyki filmowej. Z drugiej strony, '20 do 23 fps' to zdecydowanie za mało, by zapewnić przyzwoitą jakość w profesjonalnych produkcjach. Takie wartości mogą się sprawdzić w animacjach czy niskobudżetowych filmach, ale już w bardziej skomplikowanych ujęciach nie dają płynności. Natomiast '16 do 19 fps' to totalna porażka, bo powoduje skoki i zacięcia, a to w branży nie przechodzi. Dlatego w pracy z wideo, warto pilnować minimum 24 fps, żeby widzowie mieli fajne wrażenia wizualne.

Pytanie 29

W danej tabeli pracownicy, polecenie MySQL eliminujące wszystkie wpisy, dla których nie została wypełniona kolumna rodzaj_umowy, ma następującą formę

A. DELETE pracownicy WHERE rodzaj_umowy = 'brak';
B. DELETE FROM pracownicy WHERE rodzaj_umowy IS NULL;
C. DROP pracownicy WHERE rodzaj_umowy IS NULL;
D. DROP pracownicy FROM rodzaj_umowy = 0;
Odpowiedź "DELETE FROM pracownicy WHERE rodzaj_umowy IS NULL;" jest prawidłowa, ponieważ polecenie SQL DELETE jest używane do usuwania rekordów z tabeli w bazie danych. W tym przypadku, operacja koncentruje się na usunięciu pracowników, którzy nie mają przypisanego rodzaju umowy, co oznacza, że wartość w polu 'rodzaj_umowy' jest równa NULL. Wartość NULL w bazach danych oznacza brak danych, co jest kluczowym aspektem w kontekście ewidencji pracowników. Stosowanie warunku IS NULL jest standardową praktyką w SQL do identyfikowania brakujących wartości, a tym samym skutecznego zarządzania danymi. W praktyce, takie operacje są często używane, aby utrzymać integralność bazy danych i zapewnić, że tylko aktualne oraz wypełnione dane są przechowywane. Dobrą praktyką jest również wykonywanie zapytań DELETE w transakcjach, aby mieć możliwość ich cofnięcia w razie potrzeby, co minimalizuje ryzyko utraty ważnych informacji.

Pytanie 30

Aby strona internetowa była bardziej dostępna dla osób niewidomych, obrazom wstawianym znacznikiem img należy nadać atrybut:

A.
style
B.
alt
C.
text
D.
src
Atrybut alt znacznika <img> zawiera tekst alternatywny - krótki opis tego, co przedstawia obraz. Czytnik ekranu, z którego korzystają osoby niewidome, odczytuje tę treść na głos, dzięki czemu użytkownik wie, co jest na obrazku. Tekst alternatywny pokazuje się też, gdy obraz się nie wczyta. Dlatego dla dostępności obrazom nadaje się atrybut alt.

Pytanie 31

Wskaż funkcję w JavaScript, która pozwoli obliczyć połowę kwadratu liczby podanej jako argument.

A. function wynik(a) { return a*2/2; }
B. function wynik(a) { return 2*a/a; }
C. function wynik(a) { return a*a/2; }
D. function wynik(a) { return a/2+a/2; }
Funkcja function wynik(a) { return a*a/2; } jest całkiem w porządku. Działa, bo fajnie oblicza połowę kwadratu liczby, którą podajesz jako argument. W praktyce, 'a*a' to nic innego jak kwadrat liczby 'a', a potem dzielimy to przez 2, co nam daje wartość połowy tego kwadratu. To, co zrobiłeś, jest zgodne z zasadami matematyki i jak na programowanie w JavaScript to też się sprawdza. Na przykład, jak podstawisz '4', to funkcja zwróci 8, bo (4*4)/2 = 16/2 = 8. Takie obliczenia mogą się przydać w różnych aplikacjach, np. przy obliczeniach inżynieryjnych czy analizie danych, gdzie często korzysta się z takich wzorów. Użycie zmiennych i funkcji w programowaniu ułatwia zarządzanie danymi, a do tego można łatwiej się orientować w kodzie, co jest super.

Pytanie 32

Element bazy danych, którego podstawowym celem jest generowanie lub prezentowanie zestawień informacji, to

A. moduł
B. raport
C. formularz
D. makro
Raport to taki dokument w bazie danych, który ma za zadanie pokazać dane w przejrzysty i uporządkowany sposób. To jest mega ważne, zwłaszcza kiedy chcemy analizować różne informacje. Można je wykorzystać do robienia zestawień, statystyk, a nawet wykresów, co naprawdę ułatwia podejmowanie decyzji. Zazwyczaj raporty tworzy się na podstawie danych z różnych miejsc, jak tabele czy zapytania. W programach do zarządzania bazami, jak Microsoft Access, można korzystać z kreatora raportów, który pomaga ustawić wszystko tak, jak się chce – wybieramy źródło danych, układ i format. Oczywiście, do pozyskiwania danych często wykorzystuje się SQL, no i potem już te dane można analizować i przedstawiać w raportach. Jak sobie pomyślisz o przykładzie, to taki miesięczny raport sprzedaży to super narzędzie dla menedżerów, bo mogą ocenić, jak im idzie w sprzedaży i podejmować lepsze decyzje strategiczne.

Pytanie 33

Jakie polecenie pozwala na kontrolowanie oraz optymalizację bazy danych?

A. mysqlimport
B. mysqlcheck
C. mysqldump
D. mysqlshow
Odpowiedź 'mysqlcheck' jest poprawna, ponieważ jest to narzędzie służące do sprawdzania i optymalizacji baz danych MySQL. Umożliwia ono użytkownikom weryfikację integralności tabel, a także optymalizację struktury bazy danych, co jest kluczowe dla zapewnienia jej wydajności. Funkcja ta jest niezwykle przydatna w przypadku dużych baz danych, gdzie regularne sprawdzanie i optymalizacja mogą znacząco wpłynąć na szybkość wykonywania zapytań. W praktyce, mysqlcheck można uruchomić z różnymi opcjami, na przykład '-a' do automatycznej optymalizacji, co pozwala na zautomatyzowanie procesu konserwacji bazy. Ponadto, zgodnie z zaleceniami dobrych praktyk w zarządzaniu bazami danych, regularne korzystanie z mysqlcheck może pomóc w identyfikacji potencjalnych problemów przed ich eskalacją, co z kolei minimalizuje ryzyko awarii systemu i utraty danych.

Pytanie 34

Co robi funkcja napisana w języku JavaScript?

function fun1(f)
{
  if(f < 0)
    f = f * (-1);
  return f;
}
A. wypisanie wartości bezwzględnej z f
B. wypisanie wartości odwrotnej do f
C. zwrócenie wartości odwrotnej do f
D. zwrócenie wartości bezwzględnej z f
Funkcja, którą podałeś w JavaScript, ma za zadanie zwrócić wartość bezwzględną z podanego argumentu f. Sprawdza, czy f jest mniejsze od zera, a jeśli tak, to mnoży je przez -1, co w praktyce oznacza, że zmienia znak liczby na dodatni. Jeśli wartość jest już dodatnia, to nic się nie dzieje. To wszystko jest zgodne z tym, jak definiujemy wartość bezwzględną, bo ta zawsze jest równa lub większa od zera. Z mojego doświadczenia, wartości bezwzględne są przydatne w różnych dziedzinach, jak matematyka czy analiza danych, gdzie zależy nam na wartościach liczbowych bez względu na to, czy są dodatnie, czy ujemne. Warto też wspomnieć, że JavaScript ma wbudowaną funkcję Math.abs(), która robi to samo i jest to naprawdę dobry wybór, bo ułatwia zrozumienie kodu i zmniejsza ryzyko błędów. Tworzenie takiej funkcji, jak w Twoim zadaniu, to świetny sposób na lepsze poznanie działania języka i manipulowania danymi.

Pytanie 35

Przedstawiona transformacja obrazu, w edytorze grafiki rastrowej, została wykonana przy pomocy filtru

Ilustracja do pytania
A. redukcja szumu.
B. szum HSV.
C. błysk gradientowy.
D. rozmycia Gaussa.
Gratulacje, twoja odpowiedź jest prawidłowa. Wybrałeś 'rozmycie Gaussa', które jest odpowiednią odpowiedzią. Na przedstawionym obrazie widzimy, że obraz po prawej stronie jest rozmyty w sposób ciągły i jednolity - to jest charakterystyczne dla rozmycia Gaussa. Filtr rozmycia Gaussa jest powszechnie stosowany w edytorach grafiki rastrowej do uzyskania efektu miękkiego rozmycia, który symuluje efekt obserwacji obiektu przez nieostre medium lub z dużą głębią ostrości. Jest to praktyczne narzędzie, które ma szerokie zastosowanie zarówno w fotografii, jak i w grafice komputerowej. Filtr ten jest często używany do poprawy estetyki obrazów, redukcji szumu i artefaktów, a także w szeroko pojętym przetwarzaniu obrazów, takim jak detekcja krawędzi. Jego nazwa pochodzi od matematyka Karla Gaussa, który opracował koncepcję rozkładu normalnego, na którym opiera się ten filtr.

Pytanie 36

UPDATE klient SET miejscowosc='Warszawa' WHERE id IN(2,4);
W tabeli klient o polach: id, imie, nazwisko, miejscowosc znajduje się 5 rekordów o id od 1 do 5. Dla których wartości kolumny id przedstawiona kwerenda zaktualizuje zawartość pola miejscowosc na Warszawa?
A. 2, 3, 4
B. 2, 4
C. 3
D. 1, 5
Zapytanie UPDATE, które widzisz w treści pytania, działa bardzo precyzyjnie: `UPDATE klient SET miejscowosc='Warszawa' WHERE id IN(2,4);` oznacza wprost „zmień wartość kolumny miejscowosc na 'Warszawa' tylko w tych wierszach, w których kolumna id ma wartość 2 albo 4”. Klauzula `WHERE id IN (2,4)` to po prostu skrócony zapis warunku: `WHERE id = 2 OR id = 4`. Skoro w tabeli są rekordy o id 1, 2, 3, 4, 5, to modyfikacji podlegają tylko te dwa wiersze, które spełniają warunek logiczny, czyli id równe 2 i id równe 4. Pozostałe rekordy nie są w żaden sposób dotykane przez to polecenie – ich miejscowość zostaje bez zmian. Z mojego doświadczenia to bardzo często używany wzorzec w praktyce, np. gdy trzeba szybko poprawić dane tylko wybranych klientów, zamówień czy produktów. Warto pamiętać, że polecenie UPDATE bez klauzuli WHERE zaktualizuje wszystkie rekordy w tabeli, co zwykle jest niebezpieczne i w realnych projektach uznawane za błąd, jeśli nie jest to w pełni świadome działanie. W profesjonalnych systemach bazodanowych dobrą praktyką jest zawsze dokładne sprawdzanie warunku WHERE, czasem nawet poprzedzonego zapytaniem SELECT z takim samym warunkiem, żeby zobaczyć, które wiersze zostaną zmienione przed wykonaniem UPDATE. W tym przykładzie można by najpierw zrobić: `SELECT * FROM klient WHERE id IN (2,4);`, a dopiero potem uruchomić UPDATE. W codziennej pracy z SQL konstrukcja `IN` jest też wygodna, gdy lista identyfikatorów jest dłuższa, np. `IN (2,4,7,10,15)`, zamiast pisać długie wyrażenie z wieloma OR. To poprawia czytelność i zmniejsza ryzyko pomyłki przy edycji kodu, co jest po prostu zdrową praktyką w zespole programistów i administratorów baz danych.

Pytanie 37

Jakie mechanizmy przydzielania zabezpieczeń, umożliwiające wykonywanie działań na bazie danych, są związane z tematyką zarządzania kontami, użytkownikami oraz ich uprawnieniami?

A. Z przywilejami systemowymi
B. Z zasadami
C. Z przywilejami obiektowymi
D. Z właściwościami
Zarządzanie dostępem do baz danych często opiera się na kilku koncepcjach, które jednak nie są właściwymi odpowiedziami na postawione pytanie. Reguły, jako mechanizmy kontroli dostępu, mogą definiować warunki, które muszą być spełnione, aby użytkownik mógł uzyskać dostęp do danych, jednakże same w sobie nie są odpowiednie do opisywania systemowego nadawania uprawnień. Reguły mogą być stosowane w kontekście bardziej skomplikowanych polityk bezpieczeństwa, ale nie są bezpośrednio związane z przywilejami systemowymi. Atrybuty, z drugiej strony, odnoszą się do cech lub właściwości obiektów w bazie danych, takie jak typ danych, długość czy wartość, ale nie mają one wpływu na systemowe zarządzanie uprawnieniami. W kontekście zabezpieczeń atrybuty mogą być używane w modelach opartych na atrybutach, ale nie są one kluczowe w kontekście przydzielania przywilejów. Przywileje obiektowe to zbiór uprawnień przypisanych do konkretnych obiektów, takich jak tabele czy widoki, które pozwalają użytkownikom na wykonywanie określonych operacji, jak SELECT, INSERT, UPDATE czy DELETE. Chociaż są one istotnym elementem ochrony danych, to jednak nie obejmują one szerszego zarządzania kontami i użytkownikami, które obejmuje również przywileje systemowe. W związku z tym, odpowiedzi te nie dostarczają pełnego obrazu mechanizmów zabezpieczeń stosowanych w zarządzaniu bazami danych.

Pytanie 38

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

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

Pytanie 39

Do czego służy pole insert_id z biblioteki MySQLi w PHP?

A. do uzyskania id ostatnio wstawionego wiersza
B. do uzyskania kodu błędu nieudanego wstawienia
C. do pobrania najwyższego indeksu bazy do inkrementacji
D. do pobrania pierwszego wolnego indeksu
insert_id dotyczy udanego wstawienia, a nie kodu błędu (od tego są errno/error). Nie pobiera też „pierwszego wolnego” ani „najwyższego” indeksu z góry - zwraca konkretny id WSTAWIONEGO właśnie rekordu. To id ostatnio wstawionego wiersza.

Pytanie 40

W kodzie CSS użyto stylizacji dla elementu listy, a żadne inne reguły CSS nie zostały ustalone. To zastosowane formatowanie spowoduje, że

Ilustracja do pytania
A. kolor Maroon obejmie co drugi element listy
B. tekst wszystkich elementów, którym nadano id „hover”, będzie w kolorze Maroon
C. tekst wszystkich elementów listy będzie miał kolor Maroon
D. po najechaniu myszką na element listy, kolor tekstu zmieni się na Maroon
Odpowiedź jest poprawna, ponieważ selektor CSS li:hover odnosi się do elementów listy, które zmieniają swój styl po najechaniu kursorem. W tym przypadku zmiana dotyczy koloru tekstu, który stanie się maroon. Selektor :hover jest pseudoklasą w CSS, która odpowiada za zmiany stylu elementu, gdy użytkownik umieści nad nim kursor. Jest to powszechnie stosowana technika w projektowaniu interaktywnych i przyjaznych dla użytkownika stron internetowych, umożliwiająca na przykład wizualne podkreślenie linków lub elementów menu. Dzięki zastosowaniu takiego selektora, projektanci mogą tworzyć dynamiczne efekty, które reagują na działania użytkownika, co zwiększa atrakcyjność wizualną i funkcjonalność strony. Dobre praktyki zalecają używanie pseudoklas jak :hover do poprawy interakcji użytkownika z interfejsem, a także do zapewnienia spójności z innymi elementami strony, które mogą również reagować na najechanie kursorem. Warto także pamiętać o dostępności, zapewniając alternatywne sposoby na interakcję z elementami, np. dla urządzeń dotykowych.