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: 11 maja 2026 08:58
  • Data zakończenia: 11 maja 2026 09:22

Egzamin zdany!

Wynik: 32/40 punktów (80,0%)

Wymagane minimum: 20 punktów (50%)

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

W języku PHPnie ma możliwości

A. zmienianie dynamiczne treści strony HTML w przeglądarce
B. przetwarzanie danych z formularzy
C. obróbka informacji przechowywanych w bazie danych
D. tworzenie dynamicznej zawartości strony internetowej
Odpowiedź dotycząca zmieniania dynamicznej zawartości strony HTML w przeglądarce jest poprawna, ponieważ PHP jest językiem skryptowym działającym po stronie serwera. Oznacza to, że PHP nie jest w stanie bezpośrednio modyfikować zawartości strony HTML po jej załadowaniu w przeglądarce użytkownika. Zamiast tego, PHP generuje HTML, który następnie jest przesyłany do przeglądarki. Dynamiczna zawartość strony może być generowana na podstawie danych z bazy danych lub formularzy, ale wszelkie zmiany w HTML po stronie klienta wymagają użycia języków, które działają po stronie przeglądarki, takich jak JavaScript. Przykładem może być sytuacja, w której użytkownik wypełnia formularz, a dane są przetwarzane przez PHP, które zwraca zaktualizowaną stronę. W przypadku potrzeby dynamicznych zmian, JavaScript może być użyty do manipulacji DOM po załadowaniu strony. Warto również zauważyć, że zgodnie z dobrymi praktykami, powinno się oddzielać logikę serwerową (PHP) od logiki klienckiej (JavaScript), co przyczynia się do lepszej struktury kodu i ułatwia jego utrzymanie.

Pytanie 2

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 3

Jaką postać ma kolor zdefiniowany w formacie szesnastkowym jako #11FE07 w modelu RGB?

A. rgb(17, FE, 7)
B. rgb(17, 254, 7)
C. rgb(ll, 127, 7)
D. rgb(17, 255, 7)
Odpowiedź rgb(17, 254, 7) jest jak najbardziej trafna, bo wartości RGB ustalamy na podstawie kolorów, które mamy w formacie szesnastkowym. Dla koloru #11FE07, pierwsza część '11' to czerwień (R), druga część 'FE' to zieleń (G), a ostatnia '07' to niebieski (B). Jak to zliczamy? Wartości szesnastkowe przeliczamy na dziesiętne. Czyli '11' w szesnastkowym to 17 w dziesiętnym, 'FE' to 254, a '07' to po prostu 7. Te kolory RGB są super ważne w wielu dziedzinach, jak na przykład w projektowaniu stron www czy w grafice komputerowej. W3C ustala standardy dla tych wartości, dlatego są one spójne i użyteczne w sieci. Dopasowanie kolorów RGB jest kluczowe, kiedy tworzymy ładne palety kolorów, które są nie tylko estetyczne, ale też dostępne dla wszystkich. Takim przykładem może być dobór kolorów dla przycisków na stronie - jak dobrze je dobierzemy, to użytkownik łatwiej zauważy, co ma kliknąć.

Pytanie 4

Dostosowanie wyglądu strony dla konkretnego użytkownika i jego identyfikacja w serwisie są możliwe dzięki systemowi

A. połączenia z bazą
B. cookie
C. formularzy
D. obiektów DOM
Cookie to niewielkie pliki tekstowe, które są przechowywane na urządzeniu użytkownika przez przeglądarkę internetową. Dzięki nim serwisy internetowe mogą identyfikować użytkowników, a także personalizować ich doświadczenia na stronie. Kiedy użytkownik odwiedza stronę po raz pierwszy, serwis może utworzyć unikalny identyfikator w pliku cookie, który będzie przesyłany za każdym razem, gdy użytkownik powraca. W ten sposób serwis może pamiętać o preferencjach użytkownika, takich jak język, układ strony czy ostatnio przeglądane produkty. Przykładem może być sklep internetowy, który po zalogowaniu się użytkownika zapamiętuje jego koszyk zakupowy oraz preferencje dotyczące produktów. Cookie są również zgodne z różnymi standardami, takimi jak RFC 6265, które definiują zasady dotyczące zarządzania plikami cookie. Dzięki temu mechanizmowi możliwe jest także śledzenie analityki użytkowników, co pozwala właścicielom serwisów na lepsze zrozumienie ich zachowań i potrzeb.

Pytanie 5

Jakie jest zadanie funkcji przedstawionej w języku JavaScript?

 function fun1(a, b) {
    if (a % 2 != 0) a++;
    for (n = a; n <= b; n+=2)
        document.write(n);
}
A. zwrócenie wartości liczb parzystych od a do b
B. wypisanie wszystkich liczb z zakresu od a do b
C. sprawdzenie, czy liczba a jest nieparzysta; w przypadku potwierdzenia, wypisanie jej
D. wypisanie liczb parzystych z zakresu od a do b
Odpowiedzi takie jak "wypisanie wszystkich liczb z przedziału od a do b" oraz "zwrócenie wartości parzystych liczb od a do b" ilustrują powszechne nieporozumienia dotyczące działania funkcji oraz jej logiki. Funkcja nie wypisuje wszystkich liczb z przedziału, ponieważ jej konstrukcja ogranicza wyniki do liczb parzystych. Odpowiedź ta nie uwzględnia kluczowego kroku w funkcji, polegającego na modyfikacji zmiennej a, co oznacza, że w przypadku nieparzystego a, pierwsza wypisana liczba będzie parzysta. Natomiast odpowiedź sugerująca, że funkcja zwraca wartości parzyste, jest również myląca, ponieważ funkcja nie zwraca wartości (nie używa return), a jedynie wypisuje je na stronie za pomocą document.write(). To może prowadzić do nieporozumień, zwłaszcza w kontekście oczekiwań dotyczących struktury danych. Typowym błędem myślowym jest zakładanie, że pętle for mogą generować wszystkie liczby w danym zakresie, gdy w rzeczywistości sposób ich inkrementacji (w tym przypadku o 2) determinuje, które wartości są ostatecznie wyświetlane. Przykładem na to jest sytuacja, gdy użytkownik nie dostrzega, że pętla zmienia krok zwiększenia i przez to nie uzyskuje pełnej sekwencji liczb. Warto zwrócić uwagę na konwencje programistyczne, takie jak zasady dotyczące wypisywania danych i używania zwrotów, co jest kluczowe dla tworzenia przejrzystego i efektywnego kodu.

Pytanie 6

Jak prawidłowo skomentować linię kodu w języku Java Script? Komentarz powinien być umieszczony po znakach //

x = Math.max(a,b,c); //
A. wybór losowej wartości ze zmiennych a, b i c
B. w zmiennej x minimalna wartość ze zmiennych a, b, c
C. w zmiennej x maksymalna wartość ze zmiennych a, b, c
D. nieprawidłowe dane
Odpowiedź numer 1 jest całkiem trafna, bo funkcja Math.max w JavaScript tak naprawdę najpierw sprawdza, która z podanych wartości jest największa. W tym wypadku, x = Math.max(a, b, c) zwraca największą liczbę z a, b i c i przypisuje ją do x. To jest super przydatne, gdy musisz szybko porównać jakieś liczby, na przykład podczas analizowania danych albo ustalania maksymalnych limitów w aplikacjach internetowych. Math.max to część wbudowanej biblioteki Math, która ma sporo przydatnych funkcji. Wykorzystanie tej funkcji jest zgodne z dobrymi praktykami programowania, bo jest szybka i bezpieczna. Co ważne, Math.max przyjmuje różną liczbę argumentów, więc można ją łatwo dopasować do swoich potrzeb. Używanie tej funkcji naprawdę poprawia czytelność kodu, a to jest kluczowe w projektach, gdzie inne osoby mogą musieć zrozumieć nasz kod.

Pytanie 7

Czym jest proces normalizacji tabel w kontekście baz danych?

A. wprowadzenie nowych rekordów do bazy
B. analiza i optymalizacja bazy danych
C. wyłącznie stworzenie tabel oraz relacji w bazie
D. wizualizacja struktury bazy danych
Normalizacja tabel to kluczowy proces w projektowaniu baz danych, który ma na celu minimalizację redundancji danych oraz zapewnienie ich integralności. Proces ten polega na organizowaniu danych w taki sposób, aby zmniejszyć powtarzalność oraz eliminować potencjalne anomalia podczas operacji na bazie, takich jak wstawianie, aktualizowanie czy usuwanie danych. Standardowe formy normalne, takie jak pierwsza, druga czy trzecia forma normalna, definiują zasady, według których można osiągnąć ten cel. Na przykład, w trzeciej formie normalnej, żadne niekluczowe atrybuty nie mogą być zależne od innych atrybutów, co pozwala na lepsze zarządzanie danymi. W praktyce, normalizacja może przyczynić się do efektywności zapytań SQL oraz ułatwiać zarządzanie danymi poprzez tworzenie relacji między tabelami. Przykładem może być rozdzielenie danych klienta i zamówienia do osobnych tabel, co pozwala na łatwiejsze aktualizacje informacji o kliencie bez konieczności modyfikowania całej historii zamówień. W ten sposób normalizacja wspiera standardy branżowe, takie jak ANSI SQL, a także najlepsze praktyki w zakresie projektowania baz danych.

Pytanie 8

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 onclick="return obliczj()">dodaj</button>
B. <button onselect="return dodaj()">oblicz</button>
C. <button onselect="return dodaj()">dodaj</button>
D. <button onclick="return dodaj()">dodaj</button>
Odpowiedź jest prawidłowa, ponieważ w języku JavaScript zdarzenie onclick jest standardowym sposobem uruchamiania funkcji w odpowiedzi na kliknięcie przycisku. W tym przypadku funkcja dodaj() zostanie wywołana, gdy użytkownik kliknie przycisk z napisem "dodaj". Jest to zgodne z powszechnymi praktykami w tworzeniu interfejsów użytkownika dla aplikacji webowych, gdzie zdarzenia są przypisywane do elementów HTML za pomocą atrybutów takich jak onclick czy onsubmit. Takie podejście pozwala na bezpośrednią interakcję użytkownika z elementami strony, co jest kluczowe dla dynamicznych aplikacji internetowych. Przy tworzeniu stron internetowych ważne jest, aby zdarzenia były jednoznacznie przypisane do odpowiednich funkcji, co ułatwia zarządzanie logiką aplikacji. Dodatkowo takie rozwiązanie zwiększa czytelność kodu i ułatwia jego dalsze utrzymanie i rozwój. W przypadku bardziej skomplikowanych projektów można również rozważyć oddzielanie logiki JavaScript od struktury HTML, używając zewnętrznych plików skryptów i bibliotek, takich jak jQuery czy React, co sprzyja lepszej organizacji kodu.

Pytanie 9

Kod```SELECT imie, pesel, wiek FROM dane WHERE wiek IN (18,30)```wybiera

A. imiona, numery PESEL oraz wiek osób mieszczących się w przedziale od 18 do 30 lat
B. imiona, numery PESEL oraz wiek osób w wieku dokładnie 18 lub 30 lat
C. imiona, numery PESEL oraz wiek osób, które mają więcej niż 30 lat
D. imiona, nazwiska oraz numery PESEL osób, które mają mniej niż 18 lat
W podejściu zawartym w niepoprawnych odpowiedziach występuje kilka kluczowych nieporozumień dotyczących interpretacji zapytań SQL i zasad działania operatora `IN`. Wybór danych na podstawie wieku poniżej 18 lat jest błędny, ponieważ zapytanie nie uwzględnia wieku poniżej tej granicy, a zatem nie może zwracać rekordów dla tej grupy wiekowej. Takie wnioski mogą wynikać z mylnej interpretacji operatora `IN`, który nie działa na zasadzie zakresu, lecz na precyzyjnych wartościach. Przyjmowanie, że zapytanie obejmuje osoby powyżej 30 lat jest również niepoprawne, ponieważ zapytanie nie zawiera takich warunków, co dowodzi braku zrozumienia filtracji danych. Kolejny typowy błąd poznawczy to mylenie pojęcia 'przedziału' z konkretnymi wartościami. W SQL, kiedy chcemy odwołać się do przedziału, stosuje się operator `BETWEEN`, co różni się od zastosowania `IN`. Zrozumienie tych podstawowych różnic jest kluczowe w pracy z bazami danych. Aby skutecznie budować zapytania SQL, ważne jest zrozumienie, jakie operatory są odpowiednie do konkretnych zadań oraz jakie są ich ograniczenia. Niewłaściwe interpretowanie wyników zapytań może prowadzić do błędnych wniosków i decyzji, co podkreśla znaczenie staranności w analizie danych.

Pytanie 10

Testy związane ze skalowalnością aplikacji mają na celu zweryfikowanie, czy program

A. jest w stanie funkcjonować przy zaplanowanym i większym obciążeniu
B. jest właściwie opisany w dokumentacji
C. jest chroniony przed nieautoryzowanymi działaniami, np. dzieleniem przez zero
D. posiada odpowiednie funkcje
Wybór odpowiedzi dotyczącej funkcjonalności aplikacji lub zabezpieczeń przed niepożądanymi operacjami, jak dzielenie przez zero, jest nieprawidłowy w kontekście testów skalowalności. Funkcjonalność, choć istotna, nie odnosi się bezpośrednio do tego, jak aplikacja radzi sobie z wzrastającym obciążeniem. Oprogramowanie może być w pełni funkcjonalne, ale jeśli nie jest w stanie sprostać zwiększonej liczbie użytkowników, nie może być uznane za skalowalne. Zabezpieczenia przed błędami, takimi jak dzielenie przez zero, dotyczą stabilności aplikacji, ale nie definiują jej zdolności do działania pod dużym obciążeniem. W kontekście obliczeń i operacji, programiści powinni zajmować się obsługą wyjątków, co jest oddzielnym zagadnieniem od skalowalności. Odpowiednia dokumentacja ma znaczenie w kontekście utrzymania i rozwoju oprogramowania, ale także nie odnosi się do problematyki wydajności i obciążenia. W rzeczywistości, wiele aplikacji pomimo dobrych praktyk w zakresie zabezpieczeń i dokumentacji, może przestać działać w przypadku nadmiernego obciążenia, co wskazuje na brak właściwej architektury skalowalnej. Zrozumienie różnicy między tymi aspektami jest kluczowe dla inżynierów oprogramowania i projektantów systemów.

Pytanie 11

Efekt AutoDuck w obróbce dźwięku jest stosowany do

A. wyrównania głośności całej ścieżki dźwiękowej.
B. eliminacji szumów pochodzących z dźwięków w tle.
C. ocieplenia głosu i dźwięków pochodzących z tła.
D. ściszenia dźwięku w tle, gdy pojawia się dźwięk pierwszoplanowy.
Efekt AutoDuck dokładnie robi to, co opisuje poprawna odpowiedź: automatycznie ścisza dźwięk w tle (np. muzykę), gdy pojawia się dźwięk pierwszoplanowy, zwykle głos lektora lub prowadzącego. W praktyce wygląda to tak, że masz dwie ścieżki: na jednej mówiony komentarz, na drugiej muzykę w tle. AutoDuck „podgląda” poziom głośności ścieżki z głosem i gdy wykryje, że ktoś zaczyna mówić, automatycznie obniża poziom głośności ścieżki z muzyką o zadaną liczbę decybeli. Kiedy mówienie się kończy, muzyka wraca płynnie do poprzedniego poziomu. To jest klasyczny przykład tzw. duckingu, bardzo często stosowany w radiu, podcastach, vlogach, prezentacjach wideo, a nawet w prostych materiałach szkoleniowych. Z mojego doświadczenia to jedna z tych funkcji, które naprawdę oszczędzają czas – zamiast ręcznie rysować obwiednię głośności, ustawiasz próg zadziałania, czas narastania i opadania (attack/release) oraz głębokość tłumienia. Dobre praktyki mówią, żeby nie przesadzać z tłumieniem tła – zwykle wystarcza w okolicach 10–18 dB, tak żeby głos był czytelny, ale muzyka nadal była słyszalna. Ważne jest też ustawienie odpowiednio długiego „release”, żeby muzyka nie „podskakiwała” nerwowo pomiędzy pauzami w mowie. W narzędziach typu Audacity, Adobe Audition czy Reaper AutoDuck (lub sidechain ducking) jest standardowym narzędziem w pracy z multimediami na potrzeby internetu: spoty reklamowe, intro do kanałów YouTube, kursy e-learningowe – wszędzie tam, gdzie chcesz, żeby głos był zawsze na pierwszym planie, a tło samo się grzecznie cofa, gdy ktoś coś mówi.

Pytanie 12

W tabeli mieszkancy znajdują się dane o osobach z całej Polski. Aby zliczyć, ile różnych miast jest zawartych w tej tabeli, należy wykonać kwerendę

A. SELECT COUNT(DISTINCT miasto) FROM mieszkancy;
B. SELECT DISTINCT miasto FROM mieszkancy;
C. SELECT COUNT(miasto) FROM mieszkancy;
D. SELECT COUNT(miasto) FROM mieszkancy DISTINCT;
Wybrana kwerenda SELECT COUNT(DISTINCT miasto) FROM mieszkancy; jest poprawna, ponieważ pozwala na zliczenie unikalnych miast w tabeli mieszkancy. Funkcja DISTINCT eliminuje duplikaty, co oznacza, że tylko różne wartości miasto będą brane pod uwagę w procesie zliczania. Użycie COUNT w połączeniu z DISTINCT jest standardową praktyką w SQL, która zapewnia dokładne wyniki przy analizie danych. Taka metoda jest szczególnie przydatna w przypadku dużych zbiorów danych, gdzie wiele rekordów może odnosić się do tego samego miasta. Na przykład, jeśli mamy 1000 rekordów, z których 200 dotyczy Warszawy, 300 Krakowa oraz 500 Gdańska, kwerenda zwróci wynik 3, ponieważ tylko trzy różne miasta zostały uwzględnione. Tego typu zapytania są powszechne w raportach analitycznych, gdzie istotne jest zrozumienie dystrybucji danych oraz identyfikacja różnych kategorii w zbiorze, co jest niezbędne dla podejmowania decyzji biznesowych.

Pytanie 13

Aby właściwie przystosować stronę internetową dla osób niewidomych, należy przypisać wyświetlanym za pomocą znacznika img obrazom atrybut

A. src
B. text
C. style
D. alt
Atrybut 'alt' w znaczniku <img> to naprawdę ważny element, jeśli chodzi o dostępność stron internetowych dla osób niewidomych. Głównie chodzi o to, żeby zapewnić opis obrazka, który mogą zrozumieć technologie asystujące, tak jak czytniki ekranu. Dzięki temu, osoby niewidome mają możliwość dowiedzieć się, co znajduje się na zdjęciu. Na przykład, jeśli mamy zdjęcie czerwonego swetra w sklepie internetowym, to warto wpisać coś takiego jak 'Czerwony sweter z wełny' w tym atrybucie. To też pomaga w SEO, bo wyszukiwarki lubią takie opisy. W skrócie, dobrze jest stosować atrybut 'alt' przy każdym obrazie, by każdy użytkownik mógł zrozumieć treść strony.

Pytanie 14

Kod przedstawiony poniżej został napisany w języku JavaScript. W zdefiniowanym obiekcie metoda to element o nazwie

 var obj1 = {
    czescUlamkowa: 10,
    czescCalkowita: 20,
    oblicz: function () { ... }
}
A. oblicz
B. czescCalkowita
C. czescUlamkowa
D. obj1
Odpowiedź 'oblicz' jest poprawna, ponieważ w przedstawionym kodzie JavaScript to właśnie ta właściwość jest metodą obiektu 'obj1'. Metoda to funkcja zdefiniowana w kontekście obiektu, która może operować na danych przechowywanych w tym obiekcie. W tym przypadku, 'oblicz' definiuje funkcję, której szczegóły nie zostały pokazane (zaznaczone jako '…'), ale można domyślić się, że jej zadaniem jest wykonanie pewnych operacji na wartościach 'czescUlamkowa' i 'czescCalkowita'. Praktyczne zastosowanie metod obiektowych polega na umożliwieniu organizacji kodu w sposób, który łączy dane i operacje na tych danych, co jest zgodne z zasadami programowania obiektowego. Dzięki temu kod staje się bardziej czytelny, łatwiejszy w utrzymaniu i rozwoju. Dobre praktyki w JavaScript podkreślają znaczenie metod w obiektach, co pozwala na lepsze modelowanie rzeczywistych problemów, jak na przykład obliczanie wartości matematycznych w aplikacjach webowych, gdzie metody obiektowe zapewniają modularność i reusability kodu.

Pytanie 15

W przedstawionej na rysunku relacji pole AutorID znajdujące się w tabeli ksiazki jest kluczem

Ilustracja do pytania
A. sztucznym.
B. kandydującym.
C. podstawowym.
D. obcym.
Pole AutorID w tabeli ksiazki jest klasycznym przykładem klucza obcego (foreign key) w relacyjnej bazie danych. Odwołuje się ono do pola IDAutor w tabeli autorzy, które jest kluczem podstawowym tej tabeli. Dzięki temu każda książka jest logicznie powiązana z konkretnym autorem, a baza danych może pilnować spójności referencyjnej. Innymi słowy: nie da się (a przynajmniej nie powinno się dać, jeśli relacje są poprawnie zdefiniowane) wstawić do ksiazki wartości AutorID, która nie istnieje w tabeli autorzy. W praktyce, w SQL definiuje się to np. tak: `AutorID INT CONSTRAINT FK_Ksiazki_Autorzy FOREIGN KEY REFERENCES autorzy(IDAutor)`. Moim zdaniem to jedno z najważniejszych pojęć w projektowaniu baz – bez kluczy obcych relacje między tabelami byłyby tylko „umowne”, a nie wymuszane przez silnik bazy. Klucz obcy zawsze wskazuje na klucz kandydujący, najczęściej na klucz podstawowy innej tabeli. Dzięki temu można łatwo wykonywać złączenia (JOIN): np. `SELECT Tytul, Imie, Nazwisko FROM ksiazki JOIN autorzy ON ksiazki.AutorID = autorzy.IDAutor;`. To jest dokładnie ten przypadek z rysunku: wiele książek może mieć tego samego autora, więc między autorzy a ksiazki mamy relację jeden‑do‑wielu, a pole AutorID jest po stronie „wiele” i pełni rolę klucza obcego. Dobre praktyki mówią też, żeby nazwy kluczy obcych jasno wskazywały, do czego się odnoszą (np. AutorID, Autor_Id), co tu również jest sensownie zrobione. W realnych systemach (biblioteki, księgarnie internetowe, systemy wydawnicze) dokładnie tak modeluje się powiązanie książka–autor: ID autora jako klucz podstawowy w tabeli autorzy i to samo ID jako klucz obcy w tabeli ksiazki.

Pytanie 16

Jakie zdarzenie należy wykorzystać, aby funkcja JavaScript była aktywowana za każdym razem, gdy użytkownik wprowadza jakikolwiek znak w polu tekstowym?

A. onmouseout
B. onkeydown
C. onclick
D. onload
Funkcja JavaScript, która ma być wywoływana za każdym razem, gdy użytkownik wpisuje dowolny znak do pola edycji, powinna korzystać ze zdarzenia 'onkeydown'. Zdarzenie to jest wywoływane w momencie naciśnięcia klawisza, co oznacza, że natychmiast odzwierciedla zmiany wprowadzone przez użytkownika. Dzięki temu możemy w czasie rzeczywistym reagować na dane wprowadzane przez użytkownika, co jest niezwykle przydatne w aplikacjach interaktywnych. Przykładowo, jeśli mamy pole tekstowe, w którym użytkownik wprowadza swoje imię, możemy użyć zdarzenia 'onkeydown', aby sprawdzić, czy imię nie jest za krótkie lub nie zawiera niedozwolonych znaków. Można to zrealizować w następujący sposób: <input type='text' onkeydown='myFunction()'>. Standardy W3C definiują zdarzenia klawiaturowe jako kluczowy element interakcji użytkownika z aplikacjami webowymi, co czyni 'onkeydown' bardzo istotnym w kontekście UX/UI.

Pytanie 17

W utworzonej tabeli pole należące do typu BLOB służy do składowania

A. danych logicznych takich jak true
B. danych binarnych o dużych rozmiarach, takich jak grafika
C. liczb całkowitych, które przekraczają zakres typu INT
D. łańcuchów znaków o nieokreślonej długości
Pole typu BLOB (Binary Large Object) jest przeznaczone do przechowywania danych binarnych dużych rozmiarów, co czyni je idealnym do przechowywania plików multimedialnych, takich jak obrazy, wideo lub dźwięki. W bazach danych, BLOB jest używane, gdy dane są zbyt duże, aby mogły być przechowywane w standardowych typach danych, takich jak VARCHAR czy INT. Przykładem zastosowania BLOB może być strona internetowa, która pozwala użytkownikom na przesyłanie zdjęć profilowych. W takim przypadku, zdjęcia są przechowywane w kolumnie typu BLOB w bazie danych, co pozwala na efektywne zarządzanie dużymi plikami binarnymi. Zastosowanie standardów takich jak SQL przy projektowaniu baz danych zapewnia optymalizację przechowywania danych, a użycie BLOB jako typu danych dla dużych plików jest zgodne z najlepszymi praktykami w tej dziedzinie.

Pytanie 18

Jaka wartość zostanie wypisana na standardowym wyjściu dla zamieszczonego w ramce fragmentu programu napisanego w języku C++ ?

int obliczenia( int x ){
    x %= 3;
    x++;
    return x;
}

int main( ){
    std::cout << obliczenia(32);
}
A. 2
B. 32
C. 0
D. 3
Dobra robota! Wybrałeś opcję 3, co oznacza, że zrozumiałeś, jak działają operatorzy w C++. W tym przykładzie mamy funkcję 'obliczenia', która przyjmuje argument 'x' równy 32. W środku tej funkcji wykonuje się operacja modulo (x %= 3), co w praktyce oznacza, że dzielimy 32 przez 3 i zostaje nam reszta, czyli 2. Później dodajemy 1 do 'x' (x++), co daje nam w sumie 3. I to właśnie ta liczba jest zwracana przez funkcję i wypisywana na ekranie przez 'std::cout'. Fajnie jest pamiętać, że '%=' skraca zapis do x = x % 3, a 'x++' to z kolei x = x + 1. Te skróty to codzienność w programowaniu, dlatego warto je znać. No i pamiętaj, że w C++ każda funkcja zwraca wartość przy użyciu 'return', a ta wartość jest potem używana tam, gdzie funkcję wywołujesz.

Pytanie 19

Przedstawiono efekt formatowania CSS oraz kod HTML. Jak należy zdefiniować styl, aby osiągnąć takie formatowanie?

<p>
Mimozami jesień się zaczyna,<br>
Złotawa, krucha i miła.<br>
To ty, to ty jesteś ta dziewczyna,<br>
Która do mnie na ulicę wychodziła.
</p>
Ilustracja do pytania
A. p::first-line { font-size: 200%; color: brown; }
B. .first-line { font-size: 200%; color: brown; }
C. p.first-line { font-size: 200%; color: brown; }
D. #first-line { font-size: 200%; color: brown; }
Niestety, wybrana przez ciebie odpowiedź jest niepoprawna. Najważniejszym błędem jest brak zrozumienia, jak działają pseudoelementy i selektory CSS. Pseudoelement ::first-line jest używany specyficznie do formatowania pierwszej linii paragrafu. Zastosowanie selektora typu ID (#first-line) lub klasy (.first-line) nie dałoby oczekiwanego efektu, ponieważ te selektory odnoszą się do elementów o określonym identyfikatorze lub klasie, a nie do pierwszej linii paragrafu. Podobnie, selektor p.first-line oznacza paragraf o klasie 'first-line', a nie pierwszą linię paragrafu. Dlatego w tym przypadku prawidłowym rozwiązaniem jest zastosowanie pseudoelementu ::first-line w połączeniu z selektorem paragrafu (p), co umożliwi formatowanie tylko pierwszej linii paragrafu. Pamiętaj, że prawidłowe rozumienie selektorów CSS jest kluczowe do efektywnego stylowania stron internetowych i tworzenia responsywnych, atrakcyjnych layoutów.

Pytanie 20

Która z poniższych definicji funkcji w języku C++ przyjmuje argument typu rzeczywistego i zwraca wynik typu całkowitego?

A. void fun1(int a);
B. float fun1(int a);
C. float fun1(void a);
D. int fun1(float a);
Kiedy deklaracje funkcji nie są zgodne z wymaganiami co do parametrów i typów zwracanych, to może być kłopot. Na przykład, 'void fun1(int a);' nie zwraca nic, a to w kontekście pytania nie działa. Mamy też 'float fun1(int a);', która przyjmuje liczbę całkowitą, ale zwraca zmiennoprzecinkową, co też jest nie to, co nam potrzebne. A 'float fun1(void a);' to już totalne nieporozumienie, bo 'void' jako typ parametru to nieporozumienie. Musi być jasno określony typ dla każdego parametru. Jak widać, te błędy pokazują, jak istotne jest rozumienie typów danych w C++, bo jeśli coś się pomyli, to mogą być błędy w kompilacji albo w trakcie działania programu. W praktyce to oznacza, że programiści muszą naprawdę zwracać uwagę na definicje funkcji, żeby mieć pewność, że parametry i typy zwracane są zgodne z tym, co chcemy osiągnąć. Zrozumienie tych zasad to podstawa, żeby tworzyć łatwy do utrzymania kod.

Pytanie 21

Jaką operację należy przeprowadzić podczas edycji zdjęcia w programie graficznym, żeby białe tło zamienić na przezroczystość?

A. Dodać kanał alfa
B. Zmienić saturację obrazu
C. Skadrować obraz
D. Maksymalnie zmniejszyć jasność
Dodanie kanału alfa to naprawdę ważna rzecz, jeśli chodzi o robienie przezroczystego tła w grafice rastrowej. Kanał alfa działa jak dodatkowa warstwa, która mówi komputerowi, które piksele mają być przezroczyste. Dzięki temu możemy ładnie wycinać tło, które nam nie pasuje, nie niszcząc całego obrazu. Na przykład, kiedy edytujesz zdjęcie w Photoshopie, żeby zmienić białe tło na przezroczystość, trzeba najpierw dodać ten kanał alfa. Potem można użyć narzędzia do zaznaczania, jak choćby Magic Wand, żeby wybrać to białe tło i je usunąć. W efekcie zostaje tylko obiekt na przezroczystym tle. W branży graficznej dodawanie kanału alfa i zabawa z przezroczystością to już standard. To pozwala na tworzenie naprawdę ładnych obrazów, które można potem wykorzystać w różnych miejscach, jak strony internetowe czy ulotki. Znajomość tego, jak działa kanał alfa, jest super ważna dla każdego grafika, który chce dobrze radzić sobie z obrazami w różnych formatach.

Pytanie 22

Jakie będzie wyjście programu napisanego w języku JavaScript, umieszczonego w ramce, po podaniu wartości 5 na wejściu?

Ilustracja do pytania
A. 625
B. 125
C. 60
D. 120
Pytanie dotyczy obliczenia silni liczby podanej przez użytkownika w języku JavaScript. Program przy użyciu pętli for oblicza silnię liczby n, zaczynając od wartości a równej 1. Silnia liczby, oznaczana jako n!, to iloczyn wszystkich liczb naturalnych od 1 do n. W tym przypadku, użytkownik podaje liczbę 5, co oznacza że program oblicza 5! czyli 5 * 4 * 3 * 2 * 1. Wynik tego działania to 120, co jest poprawną odpowiedzią. Silnia jest często wykorzystywana w kombinatoryce i statystyce, a także w algorytmach związanych z analizą permutacji. Wykorzystanie pętli for w tym kontekście jest powszechną praktyką w programowaniu, umożliwiającą iterację poprzez określony zakres liczb oraz wykonywanie logicznych działań w złożonych obliczeniach algorytmicznych. Dobrą praktyką jest zrozumienie, jak działają pętle i jawne przypisywanie wartości początkowych zmiennych, co ułatwia debugowanie i rozwój kodu. Tego typu operacje matematyczne są podstawą wielu zaawansowanych zastosowań, od teoretycznych podstaw algorytmów do praktycznych implementacji w analizach danych.

Pytanie 23

Język HTML oferuje nagłówki, które służą do tworzenia hierarchii zawartości. Te nagłówki występują wyłącznie w zakresie

A. h1 - h4
B. h1 - h10
C. h1 - h8
D. h1 - h6
Wybór h1 - h4, h1 - h8 lub h1 - h10 jest nieprawidłowy z kilku powodów. Pierwsza z tych odpowiedzi sugeruje, że istnieją tylko cztery poziomy nagłówków w HTML, co jest niezgodne z rzeczywistością, ponieważ HTML pozwala na użycie sześciu poziomów nagłówków, co znacząco ogranicza możliwości organizacji treści. Z kolei odpowiedzi h1 - h8 i h1 - h10 wprowadzają błędne informacje, sugerując istnienie nagłówków wykraczających poza standard HTML. Nie ma w specyfikacji HTML nagłówków o takich oznaczeniach, co może prowadzić do niepoprawnej implementacji i zrozumienia struktury dokumentu. Zastosowanie nieistniejących nagłówków może prowadzić do problemów z dostępnością, a także negatywnie wpłynąć na SEO, ponieważ wyszukiwarki nie rozpoznają takich elementów. Kolejnym błędem myślowym jest pomijanie roli, jaką nagłówki odgrywają w hierarchizacji treści; dobrze zdefiniowana struktura pomoże nie tylko robotom wyszukiwarek, ale przede wszystkim osobom korzystającym z danej strony. Zrozumienie, że HTML opiera się na konwencjach i standardach, jest kluczowe dla efektywnego projektowania i tworzenia treści w sieci. Dlatego ważne jest korzystanie z uznawanych standardów, a nagłówki h1 do h6 są niezbędnym narzędziem w każdym projekcie webowym.

Pytanie 24

Istnieje tabela o nazwie przedmioty, która zawiera kolumny ocena i uczenID. Jakie zapytanie należy wykorzystać, aby obliczyć średnią ocen ucznia z ID równym 7?

A. COUNT SELECT ocena FROM przedmioty WHERE uczenID=7;
B. AVG SELECT ocena FROM przedmioty WHERE uczenID=7;
C. SELECT AVG(ocena) FROM przedmioty WHERE uczenID=7;
D. SELECT COUNT(ocena) FROM przedmioty WHERE uczenID=7;
Odpowiedź SELECT AVG(ocena) FROM przedmioty WHERE uczenID=7; jest prawidłowa, ponieważ wykorzystuje funkcję agregującą AVG, która oblicza średnią wartość dla podanego zestawu danych. W tym przypadku skupiamy się na ocenach ucznia o ID równym 7, co osiągamy poprzez zastosowanie klauzuli WHERE. Funkcje agregujące, takie jak AVG, są standardowym narzędziem w SQL do analizy danych, szczególnie przydatnym w kontekście raportowania i analityki. Dzięki takiemu zapytaniu możemy szybko uzyskać średnią ocen ucznia, co może być wykorzystane do oceny jego postępów w nauce lub do podejmowania decyzji z zakresu pedagogiki w oparciu o zebrane dane. W praktyce, takie podejście jest zgodne z najlepszymi praktykami w pracy z bazami danych, pozwalając na wydobycie istotnych informacji z dużych zbiorów danych bez konieczności przetwarzania ich ręcznie. Użycie AVG w połączeniu z klauzulą GROUP BY mogłoby również być zastosowane, gdybyśmy chcieli uzyskać średnie oceny dla wielu uczniów jednocześnie, co dodatkowo podkreśla elastyczność i moc SQL w analizie danych.

Pytanie 25

Element

<meta charset="utf-8">
służy do definiowania metadanych witryny internetowej związanych z
A. opisem witryny
B. językiem witryny
C. kodowaniem znaków
D. słowami kluczowymi
Element <meta charset="utf-8"> jest kluczowym fragmentem kodu HTML, który definiuje kodowanie znaków używane na stronie internetowej. Ustawienie kodowania na UTF-8 jest obecnie standardem branżowym, który pozwala na prawidłowe wyświetlanie tekstów w różnych językach, a także obsługę różnorodnych znaków specjalnych. Dzięki temu strona będzie renderować się poprawnie niezależnie od używanego języka, co jest szczególnie istotne w kontekście globalizacji i dostępności treści dla szerokiego grona użytkowników. W praktyce, poprawne kodowanie znaków eliminuje problemy z wyświetlaniem polskich znaków diakrytycznych, takich jak ą, ć, ę, ł czy ź. Warto także zauważyć, że błędne ustawienie kodowania może prowadzić do tzw. "krzaków" w treści, co znacząco obniża jakość prezentacji strony oraz jej użyteczność. Dlatego zaleca się zawsze stosować <meta charset="utf-8"> w nagłówku dokumentu HTML, aby zapewnić pełną kompatybilność i poprawność wyświetlania treści w różnych przeglądarkach i systemach operacyjnych.

Pytanie 26

Jakie wartości zwróci funkcja wypisz2) napisana w języku JavaScript?

Ilustracja do pytania
A. 6
B. 3 4 6 8
C. 2 3 4 6
D. 3 4 6
Funkcja wypisz w języku JavaScript jest zaprojektowana do iteracji zmiennej a sześciokrotnie zwiększając jej wartość o 1 w każdej iteracji. Wewnątrz pętli warunek if sprawdza czy aktualna wartość a jest podzielna przez 2 lub 3. Jeśli tak to wartość ta jest wypisywana. Rozpoczynając od wartości początkowej a i zwiększając ją o 1 w każdej iteracji pierwszą wartością spełniającą warunek podzielności przez 2 lub 3 jest 3. Następnie warunek spełniają wartości 4 6 i łącznie te liczby zostaną wypisane. Taki schemat działania jest typowy w sytuacjach gdy potrzebujemy filtrować lub selekcjonować dane na podstawie określonego kryterium co jest częstą praktyką w programowaniu i przetwarzaniu danych. Pisanie kodu w sposób czytelny i zrozumiały jak w tym przykładzie jest zgodne z dobrymi praktykami programistycznymi co ułatwia jego późniejszą obsługę i modyfikację.

Pytanie 27

Który efekt został zaprezentowany na filmie?

A. Zmiana jasności zdjęć.
B. Przenikanie zdjęć.
C. Zwiększenie ostrości zdjęcia.
D. Zmniejszenie kontrastu zdjęcia.
Poprawnie wskazany efekt to przenikanie zdjęć, często nazywane też płynnym przejściem (ang. crossfade). Polega to na tym, że jedno zdjęcie stopniowo zanika, jednocześnie drugie pojawia się z narastającą widocznością. W praktyce technicznej realizuje się to najczęściej przez zmianę przezroczystości (opacity) dwóch warstw – jedna warstwa z pierwszym obrazem ma zmniejszaną wartość opacity z 1 do 0, a druga z kolejnym zdjęciem zwiększaną z 0 do 1. Na stronach WWW taki efekt robi się zwykle za pomocą CSS (transition, animation, keyframes) albo JavaScriptu, czasem z użyciem bibliotek typu jQuery czy gotowych sliderów. Moim zdaniem to jest jeden z podstawowych efektów, który warto umieć odtworzyć, bo pojawia się w galeriach, sliderach na stronach głównych, prezentacjach produktów czy prostych pokazach slajdów. W materiałach multimedialnych, np. w edycji wideo, dokładnie ten sam efekt nazywa się przejściem typu „cross dissolve” lub „fade”, i zasada działania jest identyczna – płynne nakładanie się dwóch klatek obrazu w czasie. Dobre praktyki mówią, żeby nie przesadzać z czasem trwania przenikania: zwykle 0,5–1,5 sekundy daje przyjemny, profesjonalny wygląd, bez wrażenia „zamulenia” interfejsu. Warto też pilnować spójności – jeśli na stronie używasz przenikania w jednym miejscu, dobrze jest utrzymać podobny styl animacji w innych elementach, żeby całość wyglądała konsekwentnie i nie rozpraszała użytkownika. W kontekście multimediów na WWW przenikanie jest też korzystne wydajnościowo, bo operuje głównie na właściwości opacity i transformacjach, które przeglądarki potrafią optymalizować sprzętowo.

Pytanie 28

Przygotowując raport w systemie zarządzania relacyjnymi bazami danych, można uzyskać

A. aktualizowanie danych w tabelach
B. usuwanie danych z tabel
C. dodawanie danych do tabel
D. analizę wybranych danych
W kontekście systemów obsługi relacyjnych baz danych, raportowanie odgrywa kluczową rolę w analizie danych. Wykonywanie raportu umożliwia użytkownikom dostęp do wybranych informacji, co pozwala na podejmowanie świadomych decyzji opartych na danych. Analiza danych to proces przetwarzania informacji w celu wydobycia wartościowych wniosków. Przykłady zastosowania to generowanie raportów sprzedażowych, finansowych czy analizy trendów klientów. W raportach można wykorzystać różne techniki, takie jak filtrowanie, grupowanie czy agregowanie danych, co umożliwia prezentację wyników w przystępnej formie graficznej. Dodatkowo, standardy takie jak SQL (Structured Query Language) są powszechnie używane do wykonywania zapytań w relacyjnych bazach danych, co pozwala na efektywne przeszukiwanie i analizowanie danych. W praktyce, raporty mogą być generowane na podstawie zapytań do bazy danych i mogą obejmować różne parametry, co zwiększa ich użyteczność w podejmowaniu decyzji strategicznych i operacyjnych.

Pytanie 29

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

A. Reguły
B. Indeksy
C. Klucze podstawowe
D. Wartości domyślne
Klucze podstawowe pełnią inną rolę w bazach danych niż indeksy. Służą one do jednoznacznej identyfikacji każdego wiersza w tabeli i zapewniają, że nie ma duplikatów danych. Choć klucze podstawowe mogą być automatycznie indeksowane przez system bazy danych, ich głównym celem jest zapewnienie integralności danych, a nie przyspieszanie wyszukiwania. Reguły, z drugiej strony, dotyczą logiki aplikacji i kontroli danych, ale nie wpływają na szybkość dostępu do danych. Mogą one być używane do walidacji danych przed ich zapisaniem w bazie, co jest ważne, lecz nie przyspiesza samego procesu wyszukiwania. Wartości domyślne definiują, jakie dane mają być wstawiane, gdy nie podano żadnej wartości, ale również nie mają wpływu na wydajność zapytań. Wszystkie te elementy mają swoje istotne miejsce w projektowaniu baz danych, jednak nie są bezpośrednio związane z optymalizacją szybkości zapytań jak to jest w przypadku indeksów. Często mylnie zakłada się, że klucze podstawowe i inne mechanizmy są wystarczające do poprawy wydajności, co może prowadzić do nieefektywnego projektowania i nieodpowiednich optymalizacji w systemie bazodanowym.

Pytanie 30

Na ilustracji przedstawiono kompozycję bloków strony www. Który z elementów formatowania strony odpowiada temu układowi? (Dla uproszczenia pominięto właściwości dotyczące koloru tła, wysokości oraz czcionki)

Ilustracja do pytania
A. Odpowiedź 2: B
B. Odpowiedź 4: D
C. Odpowiedź 3: C
D. Odpowiedź 1: A
Odpowiedź B jest naprawdę na czasie! Widzisz, użyto tutaj techniki pływającego układu z CSS, czyli float i clear. Pierwszy blok pływa w lewo, ma 30% szerokości, dzięki czemu obok niego mogą stać drugi i trzeci blok, które też pływają w lewo i zajmują 70%. To pozwala na ułożenie elementów w jednej linii, o ile kontener ma wystarczająco miejsca. W sumie, float to klasyka przy układach wielokolumnowych, chociaż obecnie sporo osób korzysta z Flexboxa lub Grid Layout. Zauważ, że blok czwarty ma clear:both, więc zacznie się poniżej wcześniejszych elementów pływających. To ważne, bo dzięki temu unikamy problemów z nałożeniem się treści. Zachowanie porządku w układzie jest kluczowe, szczególnie w responsywnym web designie. Tego typu układy są całkiem popularne na stronach z wieloma kolumnami, gdzie elastyczność szerokości ma duże znaczenie.

Pytanie 31

W formularzu dokumentu PHP znajduje się pole <input name="im" />. Po wpisaniu przez użytkownika ciągu „Janek”, aby dodać wartość tego pola do bazy danych, w tablicy $_POST będzie obecny element

A. im z kolejnym numerem indeksu
B. im z indeksem Janek
C. Janek z kolejnym numerem indeksu
D. Janek z indeksem im
W przypadku formularzy w PHP, każdy element formularza jest przekazywany do tablicy superglobalnej $_POST po przesłaniu formularza. W analizowanej sytuacji, pole input o nazwie 'im' zostało wypełnione wartością 'Janek'. Po przesłaniu formularza do serwera, PHP automatycznie tworzy odpowiedni wpis w tablicy $_POST. Nazwa pola, czyli 'im', staje się kluczem w tablicy $_POST, natomiast wartość wprowadzona przez użytkownika, czyli 'Janek', staje się wartością tego klucza. Dlatego w tablicy $_POST znajdziemy element o kluczu 'im', którego wartość wynosi 'Janek'. W praktyce, dostęp do wartości można uzyskać w następujący sposób: $im = $_POST['im']; co przypisze zmiennej $im wartość 'Janek'. To zachowanie jest zgodne z dokumentacją PHP i standardowymi praktykami programowania w tym języku. Dobrze jest również pamiętać o zabezpieczeniach i walidacji danych pochodzących z formularzy, aby uniknąć potencjalnych ataków, takich jak SQL Injection.

Pytanie 32

Zapytanie SQL o treści: UPDATE artykuly SET cena = cena * 0.7 WHERE kod = 2; wskazuje na

A. dodanie w tabeli artykuly pola o nazwie cena z atrybutem kod
B. w tabeli artykuly obniża wartość każdego pola cena o 30% dla wszystkich rekordów artykułów
C. dodanie w tabeli artykuly nowych pól cena oraz kod
D. w tabeli artykuly zmniejsza wartość każdego pola cena, dla którego pole kod ma wartość 2
Ten kod SQL, czyli 'UPDATE artykuly SET cena = cena * 0.7 WHERE kod = 2;', służy do zaktualizowania ceny w tabeli 'artykuly' dla rekordów, gdzie 'kod' ma wartość 2. Fajnie, że rozumiesz, że z użyciem komendy 'UPDATE' nie dodajemy nowych pól, tylko zmieniamy te już istniejące. Mnożenie ceny przez 0.7 oznacza, że obniżamy ją o 30%, co jest dość powszechnie stosowane w przypadku promocji. Dzięki temu możemy lepiej zarządzać cenami w bazie danych. Warto też pamiętać, że klauzula 'WHERE' jest super ważna, bo pozwala nam ograniczyć działanie tego polecenia tylko do wybranych rekordów. W przeciwnym razie mogłoby się zdarzyć, że obniżylibyśmy ceny wszystkich produktów, co mogłoby być niebezpieczne. Dobrze wiedzieć, w jaki sposób korzystać z tych komend, bo to zdecydowanie ułatwia pracę z danymi.

Pytanie 33

Jakie właściwości języka CSS mogą mieć wartości: underline, overline, line-through?

A. text-decoration
B. text-style
C. font-style
D. font-weight
Odpowiedzi 'text-style', 'font-style' oraz 'font-weight' są niepoprawne, ponieważ każda z tych właściwości odnosi się do innego aspektu formatuowania tekstu w CSS. 'Text-style' nie istnieje jako standardowa właściwość w CSS, co prowadzi do mylnych interpretacji. Właściwość 'font-style' służy do określenia stylu czcionki, takiego jak 'normal', 'italic' lub 'oblique', ale nie ma związku z dekoracjami tekstu. Oznacza to, że nie można jej użyć do dodawania podkreśleń, linii nad tekstem czy przekreśleń. Podobnie, 'font-weight' dotyczy grubości czcionki i przyjmuje wartości takie jak 'normal' lub 'bold', co również nie ma nic wspólnego z dekorowaniem tekstu. Typowe błędy w myśleniu polegają na myleniu tych pojęć, co często wynika z braku zrozumienia ich funkcji w CSS. Używanie niewłaściwych właściwości do osiągania zamierzonych efektów stylizacyjnych prowadzi nie tylko do niepoprawnego renderowania, ale również wpływa na dostępność treści oraz ich interpretację przez różne przeglądarki. Rozumienie różnic między tymi właściwościami jest kluczowe dla efektywnego projektowania stron internetowych zgodnie z najlepszymi praktykami branżowymi.

Pytanie 34

W tabeli zwierzeta znajdują się pola: nazwa, gatunek, gromada, cechy oraz dlugosc_zycia. Aby uzyskać listę nazw zwierząt, które dożywają przynajmniej 20 lat i są ssakami, należy wykonać zapytanie:

A. SELECT nazwa FROM zwierzeta WHERE dlugosc_zycia >=20 OR gromada = 'ssak';
B. SELECT nazwa FROM zwierzeta WHERE gromada = 'ssak';
C. SELECT nazwa FROM zwierzeta WHERE dlugosc_zycia >=20 AND gromada = 'ssak';
D. SELECT nazwa FROM zwierzeta WHERE dlugosc_zycia >=20;
Twoja odpowiedź jest jak najbardziej na miejscu, bo spełnia te dwa ważne wymagania z pytania: pokazuje nazwy zwierząt, które żyją przynajmniej 20 lat i są ssakami. Użycie AND w klauzuli WHERE sprawia, że w wynikach są tylko te zwierzęta, które pasują do obu kryteriów. To zapytanie ma swoje zastosowanie, na przykład w analizach zoologicznych, gdzie długość życia niektórych gatunków ssaków może być kluczowa, zwłaszcza w kontekście ochrony i badań nad ich ekologią. Z osobistego doświadczenia mogę powiedzieć, że dobrze jest stosować takie zapytania w bazach danych, bo to zapewnia lepszą efektywność i wydajność w przetwarzaniu danych. Generalnie w tworzeniu zapytań SQL warto zawsze ustalać konkretne warunki w klauzuli WHERE, żeby uniknąć niechcianych wyników i zmniejszyć obciążenie bazy danych.

Pytanie 35

W języku SQL polecenie INSERT INTO

A. aktualizuje rekordy określoną wartością.
B. dodaje pola do tabeli.
C. wprowadza dane do tabeli.
D. dodaje tabelę.
Polecenie INSERT INTO w SQL służy dokładnie do tego, co wskazuje poprawna odpowiedź: do wprowadzania danych do istniejącej tabeli. W praktyce oznacza to dodanie nowego wiersza (rekordu) do tabeli, która ma już zdefiniowaną strukturę: kolumny, typy danych, klucze itp. Najprostszy przykład w standardowym SQL wygląda tak: INSERT INTO klienci (imie, nazwisko, email) VALUES ('Jan', 'Kowalski', '[email protected]'); Tutaj tabela klienci już istnieje, a polecenie tylko dopisuje nowy rekord. Moim zdaniem warto zapamiętać, że INSERT pracuje na danych, a nie na strukturze tabeli. Do tworzenia tabel służy CREATE TABLE, do zmiany struktury ALTER TABLE, a do modyfikacji istniejących rekordów UPDATE. W codziennej pracy z bazami danych INSERT INTO jest jednym z absolutnie podstawowych poleceń. Używa się go przy obsłudze formularzy rejestracji użytkownika, dodawaniu zamówień w sklepie internetowym, logowaniu zdarzeń w systemie (logi), czy zapisywaniu wyników pomiarów z czujników. Dobrą praktyką jest zawsze podawanie listy kolumn, do których wstawiamy dane, zamiast polegać na kolejności kolumn w tabeli. Dzięki temu kod SQL jest czytelniejszy i mniej podatny na błędy po zmianach w strukturze tabeli. Warto też wiedzieć, że istnieją różne warianty INSERT, np. INSERT ... SELECT (wstawianie danych na podstawie wyników zapytania), INSERT IGNORE czy INSERT ... ON CONFLICT/ON DUPLICATE KEY w konkretnych systemach (PostgreSQL, MySQL). To wszystko dalej jest ta sama rodzina poleceń: celem zawsze jest dodanie nowych rekordów, a nie modyfikacja starych czy zmiana schematu bazy. Z mojego doświadczenia, kto dobrze ogarnie różne formy INSERT, temu dużo łatwiej budować sensowne aplikacje bazodanowe.

Pytanie 36

Dla jakich nazwisk użyta w zapytaniu klauzula LIKE jest poprawna?

SELECT imie FROM mieszkancy WHERE imie LIKE '_r%';
A. Gerald, Jarosław, Marek, Tamara
B. Rafał, Rebeka, Renata, Roksana
C. Arleta, Krzysztof, Krystyna, Tristan
D. Krzysztof, Krystyna, Romuald
Prawidłowa odpowiedź Arleta Krzysztof Krystyna Tristan jest zgodna z klauzulą LIKE w języku SQL która pozwala na wyszukiwanie wzorców w danych tekstowych W zapytaniu użyto wzorca '_r%' gdzie podkreślenie oznacza dowolny pojedynczy znak a procent dowolną liczbę znaków W tym przypadku imiona muszą mieć 'r' jako drugi znak co jest spełnione dla Arleta Krzysztof Krystyna i Tristan Klauzula LIKE jest często używana w aplikacjach bazodanowych do filtrowania danych tekstowych na przykład w systemach zarządzania klientami gdzie można wyszukiwać nazwiska klientów zaczynające się na określoną literę Dobre praktyki zalecają ostrożne używanie wzorców które mogą prowadzić do pełnych skanów tabel co wpływa na wydajność Indeksowanie kolumn może poprawić szybkość zapytań LIKE jednak należy unikać wzorców zaczynających się od symbolu procenta gdyż pomijają indeksy Warto zrozumieć że LIKE jest potężnym narzędziem w SQL które może znacznie ułatwić pracę z tekstem jednak wymaga ono przemyślanego użycia by nie pogorszyć wydajności bazy danych

Pytanie 37

Podaj słowo kluczowe w języku C++, które umieszczane przed wbudowanym typem danych, umożliwia przyjmowanie jedynie nieujemnych wartości liczbowych?

A. unsigned
B. long
C. short
D. const
Słowo kluczowe 'unsigned' w języku C++ jest używane do deklaracji zmiennych, które będą przechowywać tylko wartości nieujemne. Oznacza to, że zmienna zadeklarowana jako 'unsigned int' będzie miała zakres od 0 do 4 294 967 295 (dla 32-bitowej reprezentacji), co podwaja maksymalną wartość w porównaniu do standardowego 'int', który może przyjmować wartości od -2 147 483 648 do 2 147 483 647. Zastosowanie 'unsigned' jest szczególnie przydatne w sytuacjach, gdzie negatywne wartości nie mają sensu, jak w przypadku liczników, indeksów tablic czy operacji na bitach. Przykład zastosowania: w pętli for, gdy iterujemy przez elementy tablicy, możemy użyć 'unsigned int' dla indeksu, aby upewnić się, że nie przyjmiemy błędnej wartości indeksu, co mogłoby prowadzić do nieprzewidzianych błędów. W praktyce, stosowanie 'unsigned' wspiera bezpieczeństwo i integralność danych, a także zwiększa zakres wartości, które można przechowywać.

Pytanie 38

Walidacja formularzowych pól polega na zweryfikowaniu

A. czy wprowadzone dane spełniają określone reguły.
B. czy użytkownik jest zalogowany.
C. który użytkownik wprowadził informacje.
D. czy istnieje plik PHP, który odbierze dane.
Walidacja pól formularza to mega ważny krok, kiedy zbieramy dane od użytkowników. Dzięki niej możemy mieć pewność, że wszystko, co użytkownik wprowadza, jest zgodne z pewnymi zasadami. To sprawia, że aplikacja działa jak należy i że dane są w miarę bezpieczne. Na przykład, walidacja może sprawdzać, czy użytkownik wpisał coś w pole tekstowe, czy adres e-mail wygląda jak należy, albo czy hasło ma odpowiednią długość i trudność. Fajnie jest, jak walidacja działa zarówno po stronie klienta, jak i serwera. Ta po stronie klienta jest super, bo użytkownik od razu widzi, że coś poszło nie tak i nie musi czekać na odpowiedź z serwera. A walidacja po stronie serwera dodaje jeszcze więcej bezpieczeństwa, bo broni aplikacji przed błędnymi danymi i różnymi atakami, jak na przykład SQL injection. Dlatego walidacja danych to absolutna podstawa w nowoczesnych systemach przetwarzania informacji.

Pytanie 39

Jak można zaznaczyć komentarz w kodzie PHP?

A. /? … ?/
B. <? … ?>
C. <!-- …. -->
D. /* … */
Komentarze w kodzie PHP można umieszczać za pomocą znaków /* … */. Jest to standardowy sposób na dodawanie notatek, które są ignorowane przez interpreter PHP. Komentarze wieloliniowe są szczególnie przydatne w przypadku, gdy chcemy opisać większe fragmenty kodu lub wyłączyć sekcje kodu bez ich usuwania. Na przykład, możemy umieścić w komentarzach informacje o autorze, dacie powstania lub szczegóły dotyczące funkcjonalności danej funkcji. Dobrą praktyką jest również dokumentowanie ważnych informacji dotyczących zmiennych czy parametrów funkcji, co ułatwia przyszłą konserwację kodu. Warto pamiętać, że użycie komentarzy jest kluczowe w pracy zespołowej lub w projektach długoterminowych, gdzie zrozumienie kodu przez innych programistów może być kluczowe dla sukcesu projektu. Ponadto, stosowanie komentarzy zgodnie z dobrymi praktykami programowania zwiększa czytelność kodu i ułatwia jego późniejsze modyfikacje oraz debugowanie.

Pytanie 40

Jakie jest zadanie funkcji PHP o nazwie mysql_num_rows()?

A. zwrócić następny rekord z wynikami zapytania
B. zwrócić liczbę wierszy znajdujących się w wyniku zapytania
C. zwrócić rekord o numerze podanym jako parametr funkcji
D. ponumerować rekordy w bazie danych
Funkcja mysql_num_rows() w PHP jest używana do zwracania liczby wierszy w wyniku zapytania SQL, co jest kluczowe w pracy z danymi w bazach danych. Gdy wykonujemy zapytanie, na przykład za pomocą mysql_query(), otrzymujemy wynik w formie zasobu. Funkcja mysql_num_rows() pozwala na określenie, ile wierszy zostało zwróconych przez to zapytanie. To jest szczególnie przydatne w sytuacjach, gdy chcemy wiedzieć, czy dane istnieją, na przykład w aplikacjach webowych, gdzie użytkownik szuka określonych informacji. Oznacza to, że możemy dostosować logikę naszej aplikacji na podstawie liczby wyników. Ponadto, korzystając z tej funkcji, możemy monitorować i optymalizować zapytania, co jest zgodne z najlepszymi praktykami w zakresie wydajności i zarządzania bazami danych. Warto również zauważyć, że mysql_num_rows() działa w kontekście wywołania do bazy danych, co oznacza, że musi być używana w kontekście zasobu wynikowego, aby działać poprawnie.