Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 16 kwietnia 2026 13:40
  • Data zakończenia: 16 kwietnia 2026 13:51

Egzamin zdany!

Wynik: 29/40 punktów (72,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 z formatów plików używa kompresji stratnej?

A. JPEG
B. GIF
C. BMP
D. PNG
Poprawnie – spośród podanych formatów to właśnie JPEG wykorzystuje kompresję stratną. Oznacza to, że podczas zapisu obrazu część informacji o pikselach jest bezpowrotnie usuwana, żeby zmniejszyć rozmiar pliku. Algorytm JPEG analizuje obraz, rozkłada go na składowe (m.in. za pomocą DCT – dyskretnej transformacji cosinusowej), a następnie odrzuca te detale, których ludzkie oko zazwyczaj i tak nie zauważa, szczególnie w przejściach tonalnych i drobnych teksturach. Dzięki temu zdjęcie może ważyć np. 10 razy mniej niż w BMP, przy akceptowalnej jakości. W praktyce JPEG jest standardem do zapisu fotografii na stronach WWW, w mediach społecznościowych, w aparatach cyfrowych czy telefonach. Stosuje się go tam, gdzie ważniejszy jest mały rozmiar pliku niż idealna, bezstratna jakość – np. galerie produktowe w sklepach internetowych, blogi, portfolia. Dobrą praktyką w webdevie jest używanie JPEG do zdjęć i skomplikowanych obrazów, a PNG lub SVG do grafiki z ostrymi krawędziami, logotypów, ikon. Warto też pamiętać o ustawianiu rozsądnego poziomu kompresji: zbyt mocna kompresja JPEG powoduje widoczne artefakty (blokowe kwadraty, rozmycia krawędzi), zbyt słaba – niepotrzebnie duże pliki. Moim zdaniem sensownie jest testować kilka poziomów jakości (np. 60–80%) i wybierać kompromis między wagą a wyglądem, bo to dokładnie ta decyzja, z którą spotykasz się później w realnych projektach WWW.

Pytanie 2

Elementem wykorzystywanym w bazie danych do podsumowywania, prezentowania oraz drukowania danych jest

A. formularz
B. zestawienie
C. raport
D. zapytanie
Raport jest fundamentalnym obiektem w bazach danych, który służy do podsumowywania, analizowania i prezentowania danych w przystępny sposób. Jego kluczową funkcją jest umożliwienie użytkownikowi wygenerowania wyników na podstawie zgromadzonych informacji, co jest szczególnie istotne w kontekście podejmowania decyzji biznesowych. Raporty mogą być wykorzystywane do przedstawienia danych finansowych, wydajności operacyjnej czy analizy rynku. W dobrych praktykach zarządzania danymi raporty powinny być oparte na aktualnych i wiarygodnych danych, a ich struktura powinna być przemyślana, aby umożliwić łatwe zrozumienie wyników. Przykładem może być raport sprzedaży, który zbiera dane z transakcji i przedstawia je w formie graficznej, co ułatwia szybką analizę trendów. Ponadto, w nowoczesnych systemach raportowania wykorzystuje się technologie takie jak BI (Business Intelligence), które integrują dane z różnych źródeł, co znacznie podnosi wartość informacyjną generowanych raportów.

Pytanie 3

W tabeli produkt znajdują się przedmioty wyprodukowane po roku 2000, z kolumnami nazwa i rok_produkcji. Klauzula SQL pokaże listę przedmiotów wyprodukowanych

SELECT * FROM `produkt` WHERE SUBSTR(rok_produkcji,3,2)=17;
A. po roku 2017
B. w latach innych niż 2017
C. w roku 2017
D. przed rokiem 2017
Wybór odpowiedzi "w roku 2017" jest prawidłowy, ponieważ zapytanie SQL stosuje funkcję SUBSTR do wydobycia części roku produkcji. Funkcja ta zaczyna od trzeciego znaku w łańcuchu reprezentującym rok produkcji i zwraca dwa znaki, co w przypadku roku 2017 daje nam '17'. W związku z tym zapytanie wyświetli jedynie te przedmioty, których rok produkcji kończy się na '17', co obejmuje rok 2017. Zastosowanie funkcji SUBSTR jest częstą praktyką w SQL, gdy chcemy analizować lub filtrować dane tekstowe według określonych wzorców. Na przykład, w przypadku bazy danych produktów, możemy wykorzystać tę metodę do kategoryzowania towarów według roczników lub do analizy sprzedaży w danym roku. Dobrą praktyką jest także zapewnienie, że dane w kolumnie rok_produkcji są przechowywane w jednolitym formacie, co ułatwia ich przetwarzanie i analizę.

Pytanie 4

Jakiego znacznika używa się do definiowania listy definicji w kodzie HTML?

A. <dl>
B. <abbr>
C. <label>
D. <td>
Znaczniki <td>, <abbr> i <label> nie są odpowiednie do definiowania list definicyjnych w HTML, ponieważ pełnią zupełnie inne funkcje. Znacznik <td> służy do definiowania komórek w tabelach, stanowiących podstawowy element struktury tabelarycznej. Użycie <td> w kontekście definicji terminów nie jest zasadne, ponieważ nie jest przeznaczony do przedstawiania pary termin-definicja, a jedynie do formatowania danych w tabelach. Z kolei znacznik <abbr> jest używany do oznaczania skrótów oraz akronimów, co pomaga widocznie wskazać ich rozwinięcie, ale nie ma nic wspólnego z tworzeniem list definicyjnych. Zastosowanie <abbr> w kontekście definicji terminów mogłoby wprowadzać w błąd, ponieważ nie spełnia on funkcji opisowej listy. Ostatni z wymienionych znaczników, <label>, służy do powiązania etykiet z elementami formularzy, co jest istotne dla dostępności i użyteczności form, ale także nie ma zastosowania w przypadku definicji. W efekcie, żadna z tych trzech odpowiedzi nie niesie ze sobą funkcji potrzebnej do tworzenia list definicyjnych i może wprowadzać użytkowników w błąd, co do ich rzeczywistego znaczenia oraz zastosowania.

Pytanie 5

W dokumencie HTML utworzono formularz wysyłający dane do skryptu formularz.php. Po naciśnięciu przycisku typu submit, przeglądarka przekierowuje nas do określonego adresu. Na podstawie podanego linku można wywnioskować, że dane do pliku formularz.php przesłano metodą

.../formularz.php?imie=Anna&nazwisko=Kowalska
A. GET
B. POST
C. SESSION
D. COOKIE
W kontekście przesyłania danych z formularza do pliku PHP metoda COOKIE nie jest bezpośrednio związana z formularzami HTML. Cookies to małe pliki przechowywane w przeglądarce użytkownika, służące do śledzenia sesji lub przechowywania danych użytkownika. Nie są one używane do bezpośredniego przesyłania danych formularza. Metoda POST, używana w formularzach HTML, wysyła dane jako treść żądania HTTP, co nie jest widoczne w adresie URL. POST jest preferowaną metodą dla przesyłania dużych ilości danych lub danych poufnych, ponieważ nie ogranicza ich ilości i lepiej zabezpiecza przed przypadkowym ujawnieniem. Metoda SESSION odnosi się do mechanizmu przechowywania danych o stanie użytkownika po stronie serwera, który umożliwia śledzenie sesji użytkownika między różnymi żądaniami HTTP. Dane sesji nie są bezpośrednio przesyłane przez formularze HTML, ale mogą być używane do przechowywania informacji po przesłaniu formularza. Często dochodzi do nieporozumień dotyczących tych metod, ponieważ każda z nich pełni inną funkcję w kontekście zarządzania danymi użytkownika w aplikacjach webowych. Kluczowym błędem jest założenie, że wszystkie wymienione metody mogą być używane wymiennie z formularzami HTML, co prowadzi do niepoprawnych wniosków w kontekście tego pytania.

Pytanie 6

Na obrazie przedstawiono projekt układu bloków witryny internetowej. Zakładając, że bloki są realizowane za pomocą znaczników sekcji, ich formatowanie w CSS, oprócz ustawionych szerokości, powinno zawierać właściwość

BLOK 1BLOK 2
BLOK 3BLOK 4
BLOK 5
A. clear: both dla bloku 5 oraz float: left jedynie dla 1 i 2 bloku.
B. clear: both dla wszystkich bloków.
C. clear: both dla bloku 5 oraz float: left dla pozostałych bloków.
D. float: left dla wszystkich bloków.
Hmm, tutaj coś poszło nie tak. Wybrałeś opcję z `clear: both`, ale to nie do końca pasuje do tego zadania. `clear: both` w CSS służy głównie do resetowania pływania bloków, więc jak masz blok z tym ustawieniem, to następny nie będzie obok niego, tylko przesunie się na dół. A w tym przypadku nie musisz resetować pływania, bo to nie jest potrzebne. Wiem, że wybór `float: left` dla niektórych bloków może wydawać się dobrym pomysłem, ale żeby wszystko się poprawnie ułożyło, musisz zastosować `float: left` dla wszystkich bloków. I pamiętaj, żeby im ustawić szerokość, bo inaczej bloków może się nie udać ułożyć w poziomie.

Pytanie 7

Ile razy zostanie wykonana pętla przedstawiona w kodzie PHP?

for($i = 0; $i < 25; $i += 5) { ...... }
A. 5
B. 26
C. 25
D. 0
Pętla for w PHP, zdefiniowana jako for($i = 0; $i < 25; $i += 5), będzie wykonywana do momentu, gdy warunek $i < 25 będzie spełniony. Początkowa wartość $i to 0, a w każdej iteracji zwiększamy $i o 5. Wartości $i w kolejnych iteracjach będą wynosiły: 0, 5, 10, 15, 20. Po piątej iteracji, gdy $i osiągnie wartość 25, warunek $i < 25 przestanie być spełniony, co zakończy działanie pętli. W sumie, pętla wykona się dokładnie pięć razy. Zrozumienie działania pętli for jest kluczowe w programowaniu, ponieważ pozwala na automatyzację wielu zadań, co jest niezbędne w tworzeniu efektywnych i zoptymalizowanych aplikacji. Przykłady zastosowania to iteracja przez elementy tablic, generowanie numerów identyfikacyjnych czy przetwarzanie danych w bazach.

Pytanie 8

W systemie baz danych hurtowni utworzono tabelę sprzedaz z polami: id, kontrahent, grupa_cenowa, obrot. Jakie polecenie należy zastosować, aby znaleźć jedynie kontrahentów z drugiej grupy cenowej, których obrót przekracza 4000zł?

A. SELECT sprzedaz FROM kontrahent WHERE obrot > 4000
B. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 AND obrot > 4000
C. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 OR obrot > 4000
D. SELECT sprzedaz FROM kontrahent WHERE grupa_cenowa = 2 AND obrot > 4000
Poprawna odpowiedź to 'SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 AND obrot > 4000;'. To polecenie SQL precyzyjnie spełnia wymagania postawione w pytaniu, ponieważ korzysta z operatora AND do jednoczesnego filtrowania kontrahentów w drugiej grupie cenowej oraz tych, których obrót przekracza 4000 zł. W praktyce, takie zapytanie jest niezwykle użyteczne w analizie danych w hurtowniach, umożliwiając wyodrębnienie tylko tych kontrahentów, którzy spełniają oba warunki, co jest kluczowe w procesach selekcji kontrahentów do dalszych działań marketingowych czy analizy rentowności. Warto zauważyć, że dobrym nawykiem jest dokładne określenie, które pola chcemy wyświetlić, a w tym przypadku 'kontrahent' wskazuje na konkretne dane, które są istotne dla analizy. Dodatkowo, stosowanie odpowiednich warunków w zapytaniach SQL jest zgodne z najlepszymi praktykami w zakresie optymalizacji wydajności bazy danych, ponieważ pozwala na minimalizację ilości przetwarzanych danych oraz zwiększa przejrzystość wyników.

Pytanie 9

Jakim systemem do zarządzania wersjami oprogramowania jest

A. TotalCommander
B. FileZilla
C. Eclipse
D. GIT
GIT to system kontroli wersji, który jest niezwykle popularny wśród programistów i zespołów developerskich, umożliwiający śledzenie zmian w kodzie źródłowym oraz współpracę nad projektami. GIT jest rozproszonym systemem, co oznacza, że każdy programista ma pełną kopię repozytorium na swoim lokalnym komputerze. Dzięki temu, praca w trybie offline jest możliwa, a zmiany można synchronizować później z centralnym repozytorium. GIT wspiera również wiele funkcji, takich jak branching, co pozwala na równoległe rozwijanie funkcjonalności bez wpływu na główną wersję kodu. Przykładowo, zespół może pracować nad nowymi funkcjami w osobnych gałęziach i łączyć je z główną wersją po zakończeniu prac. GIT jest również zgodny z najlepszymi praktykami, takimi jak Continuous Integration (CI) i Continuous Deployment (CD), co pozwala na automatyzację procesów testowania i wdrażania oprogramowania. W branży IT GIT stał się standardem, a jego znajomość jest kluczowa dla efektywnej pracy w zespołach. Warto również wspomnieć o platformach takich jak GitHub czy GitLab, które oferują zintegrowane narzędzia do zarządzania projektami opartymi na GIT.

Pytanie 10

Prostokątne zniekształcenia obrazu, które występują przy zapisie pliku graficznego, są typowe dla formatu

Ilustracja do pytania
A. GIF z kompresją bezstratną LZW
B. JPEG z dużym stopniem kompresji stratnej
C. BMP bez kompresji
D. PNG z kompresją bezstratną LZ77
Format JPEG jest powszechnie używany do kompresji obrazów fotograficznych z uwagi na jego zdolność do znacznego zmniejszania rozmiaru pliku przy zachowaniu akceptowalnej jakości obrazu. JPEG wykorzystuje kompresję stratną, opartą na odrzucaniu niektórych informacji wizualnych, które są mniej zauważalne dla ludzkiego oka. Przy wysokim stopniu kompresji, nadmierna utrata danych może prowadzić do wyraźnych zniekształceń obrazu, często w postaci prostokątnych artefaktów zwanych blokowaniem. Wynika to z podziału obrazu na bloki 8x8 pikseli, które są kompresowane niezależnie. W praktyce, JPEG jest szeroko stosowany w środowiskach, gdzie istotna jest oszczędność miejsca na dysku, na przykład w fotografiach internetowych czy archiwizacji zdjęć cyfrowych. Jednak dla profesjonalnej fotografii, gdzie jakość jest kluczowa, zaleca się zachowanie oryginalnych plików w formatach bezstratnych do dalszej edycji. Standard JPEG jest jednym z najważniejszych w branży graficznej i jest poparty międzynarodowymi standardami, takimi jak ISO/IEC 10918, co czyni go niezawodnym wyborem w wielu zastosowaniach komercyjnych.

Pytanie 11

Implementując przedstawiony fragment algorytmu należy posłużyć się instrukcją

Ilustracja do pytania
A. for
B. break
C. if
D. while
Dobra robota! Trafiłeś z odpowiedzią - to 'if'. To, co analizowałeś, to struktura warunkowa. Używamy jej, żeby sprawdzić, czy coś się zgadza. W tym przypadku algorytm sprawdza, czy 'a' jest większe niż 'b'. Jeśli tak, to robi jedną rzecz, a jeśli nie, to robi coś innego. To klasyczne wykorzystanie 'if'. Takie instrukcje warunkowe są naprawdę ważne w programowaniu, bo umożliwiają tworzenie elastycznych algorytmów, które reagują na różne sytuacje. Dzięki nim nasze programy stają się bardziej dynamiczne i inteligentne.

Pytanie 12

Skrypt stworzony w języku JavaScript wyznacza cenę promocyjną dla swetrów w barwach: zielonej, niebieskiej (zmienna kolor) przy wydatkach przekraczających 200 zł (zmienna zakupy). Warunek niezbędny do obliczeń powinien być zapisany z użyciem wyrażenia logicznego?

A. zakupy > 200 || (kolor == 'zielony' && kolor == 'niebieski')
B. zakupy > 200 && (kolor == 'zielony' || kolor == 'niebieski')
C. zakupy > 200 && kolor == 'zielony' && kolor == 'niebieski'
D. zakupy > 200 || kolor == 'zielony' || kolor == 'niebieski'
Odpowiedź zakupy > 200 && (kolor == 'zielony' || kolor == 'niebieski') jest poprawna, ponieważ dokładnie spełnia warunki opisane w pytaniu. Wyrażenie logiczne składa się z dwóch głównych części: sprawdzenia, czy wartość zmiennej zakupy jest większa niż 200 oraz sprawdzenia, czy zmienna kolor jest równa 'zielony' lub 'niebieski'. Użycie operatora logicznego '&&' (AND) w połączeniu z '||' (OR) pozwala na zdefiniowanie warunków, które muszą być spełnione, aby uzyskać cenę promocyjną. Przykładowo, jeśli użytkownik kupi sweter za 250 zł w kolorze zielonym, warunek będzie prawdziwy, a cena promocyjna zostanie zastosowana. W kontekście standardów programistycznych, taka konstrukcja jest zgodna z najlepszymi praktykami pisania czytelnego i efektywnego kodu w JavaScript, gdzie zrozumiałość i logika wyrażeń warunkowych są kluczowe dla utrzymania i rozwoju aplikacji.

Pytanie 13

W języku HTML zapisano formularz. Który z efektów działania kodu będzie wyświetlony przez przeglądarkę zakładając, że w pierwsze pole użytkownik przeglądarki wpisał wartość "Przykładowy text"?

Ilustracja do pytania
A. Efekt 4.
B. Efekt 3.
C. Efekt 2.
D. Efekt 1.
Dobra robota! Odpowiedź, którą wybrałeś, to Efekt 2. W formularzu HTML masz różne elementy, które służą do zbierania danych od użytkownika. Tutaj mamy pole tekstowe i dwa checkboxy. Jak wpiszesz 'Przykładowy text' w pole tekstowe i wyślesz formularz, to właśnie to się wyświetli w przeglądarce. Efekt 2 pokazuje, że pole tekstowe ma wpisany tekst i dwa niezaznaczone checkboxy. Dlatego to jest zgodne z tym, co zobaczysz w przeglądarce. A to oznacza, że Efekt 2 jest poprawną odpowiedzią. Właściwie to wszystko jest zgodne z tym, jak HTML działa, czyli jak powinny wyglądać i działać różne elementy formularza.

Pytanie 14

Jakie dane zostaną wyświetlone po wykonaniu poniższych poleceń? bool gotowe=true; cout<<gotowe;

A. tak
B. 1
C. nie
D. 0
W analizie odpowiedzi, które nie są poprawne, warto zwrócić uwagę na błędne rozumienie działania operatora cout oraz konwencji reprezentowania wartości logicznych w C++. W przypadku odpowiedzi, które sugerują, że wynik to "0" lub "tak", istnieje nieporozumienie dotyczące reprezentacji wartości boolean. W C++, wartość true nie jest wypisywana jako 'tak', lecz jako '1', co jest zgodne z konwencją używaną w wielu językach programowania, w tym C, C# i Java. Osoby, które odpowiedziały '0', mylnie sądzą, że 'true' może być reprezentowane w sposób, który nie jest zgodny z przyjętymi standardami. Również odpowiedź 'nie' wskazuje na podstawowe nieporozumienie dotyczące logicznych wartości zwrotnych w kontekście programu. Wartości logiczne w C++ są ściśle powiązane z typami danych, a ich interpretacja może prowadzić do błędnych konkluzji, jeśli nie jest zrozumiana. W codziennym programowaniu, kluczowe jest, aby programiści mieli świadomość, jak wartości boolean przekładają się na operacje arytmetyczne i logiczne, co pozwala na tworzenie bardziej efektywnego oraz bezpiecznego kodu. Niezrozumienie tych podstawowych zasad prowadzi do typowych błędów w logice programowania, co z kolei może skutkować nieefektywnym działaniem aplikacji oraz trudnościami w późniejszym debugowaniu kodu.

Pytanie 15

Pole insert_id zdefiniowane w bibliotece MySQLi w języku PHP może służyć do

A. uzyskania id ostatnio dodanego wiersza
B. pobrania pierwszego dostępnego indeksu w bazie, tak aby można było pod nim dodać nowe dane
C. pozyskania kodu błędu, jeśli proces dodawania wiersza się nie powiódł
D. pobrania najwyższego indeksu z bazy, aby po jego inkrementacji wstawić pod niego dane
Wybór odpowiedzi dotyczących uzyskiwania kodu błędu lub najwyższego/wolnego indeksu bazy jest błędny, ponieważ te koncepcje nie odnoszą się bezpośrednio do funkcji insert_id. Uzyskiwanie kodu błędu w przypadku nieudanej operacji wstawiania jest osobną funkcjonalnością, która nie ma związku z identyfikatorem wstawionego rekordu. Zazwyczaj, aby uzyskać informacje o błędach, programiści korzystają z metod takich jak mysqli_error() lub mysqli_errno(), które dostarczają szczegółowych komunikatów o błędach. Co więcej, idea pobierania najwyższego lub pierwszego wolnego indeksu do wstawienia nowych danych jest myląca. W relacyjnych bazach danych klucze główne, takie jak ID, są zazwyczaj generowane automatycznie przez silnik bazy danych, co eliminuje potrzebę manualnego zarządzania indeksami. Użytkowanie własnoręcznie zarządzanych indeksów może prowadzić do problemów z integralnością danych oraz błędów, takich jak kolizje kluczy. Rekomendowane jest poleganie na automatycznych systemach przypisywania ID, co jest zgodne z zasadami normalizacji baz danych oraz minimalizowania błędów w zarządzaniu danymi.

Pytanie 16

W języku CSS, aby ustalić wewnętrzny górny margines, czyli przestrzeń pomiędzy elementem a jego otaczającym obramowaniem, należy zastosować komendę

A. outline-top
B. border-top
C. padding-top
D. local-top
W języku CSS, aby zdefiniować wewnętrzny górny margines elementu, należy użyć właściwości padding-top. Marginesy wewnętrzne (padding) to przestrzeń, która znajduje się pomiędzy zawartością elementu a jego obramowaniem, co pozwala na stworzenie efektu oddzielenia treści od krawędzi. Wartości padding-top można ustalać w jednostkach takich jak px, em, rem czy %. Na przykład, kod CSS 'padding-top: 20px;' doda 20 pikseli odstępu od górnej krawędzi obramowania do zawartości elementu. Właściwość ta jest standardowo wspierana we wszystkich nowoczesnych przeglądarkach i jest częścią specyfikacji CSS Box Model, która określa, jak przestrzeń jest zorganizowana w obrębie elementów HTML. Użycie padding-top jest kluczowe, gdy chcemy, aby nasza strona była estetyczna i czytelna, co ma istotne znaczenie w projektowaniu responsywnym, gdzie różne urządzenia mogą wymagać różnych wartości paddingu, aby utrzymać spójność wizualną. Poprawne stosowanie padding-top przyczynia się również do lepszej dostępności strony, co jest istotnym aspektem w nowoczesnym web designie.

Pytanie 17

Jakie polecenie pozwala na zwiększenie wartości o jeden w polu RokStudiów w tabeli Studenci dla tych studentów, którzy są na roku 1÷4?

A. UPDATE Studenci SET RokStudiow = RokStudiow+1 WHERE RokStudiow < 5
B. UPDATE Studenci, RokStudiow+1 WHERE RokStudiow < 5
C. UPDATE Studenci SET RokStudiow WHERE RokStudiow < 5
D. UPDATE RokStudiow SET RokStudiow++ WHERE RokStudiow < 5
Odpowiedzi, które nie są poprawne, zawierają fundamentalne błędy w składni SQL oraz logice operacji aktualizacji. Na przykład, zapis 'UPDATE Studenci, RokStudiow+1 WHERE RokStudiow < 5;' jest nieprawidłowy, ponieważ użycie przecinka w kontekście aktualizacji jest błędne; w SQL nie można zaktualizować kolumny przez dodawanie wartości bezpośrednio w samej instrukcji UPDATE. Z kolei 'UPDATE Studenci SET RokStudiow WHERE RokStudiow < 5;' pomija kluczowy element, jakim jest przypisanie nowej wartości do kolumny RokStudiow; instrukcja ta nie ma sensu, ponieważ nie określa, co ma być ustawione w RokStudiow. W odniesieniu do 'UPDATE RokStudiow SET RokStudiow++ WHERE RokStudiow < 5;' warto zauważyć, że nie można używać operatorów inkrementacji (takich jak '++') w SQL w taki sposób; SQL nie wspiera operatorów inkrementacji, które są typowe dla języków programowania, takich jak C++ czy Java. Kluczowym błędem myślowym jest także niemożność zrozumienia koncepcji aktualizacji danych w tabeli, co prowadzi do niepoprawnego formułowania zapytań. W efekcie, nieposługiwanie się poprawnymi standardami SQL może prowadzić do nieefektywności i problemów z integralnością danych w bazie.

Pytanie 18

Podaj nazwę Systemu Zarządzania Treścią, którego logo jest widoczne na zamieszczonym rysunku?

Ilustracja do pytania
A. Joomla!
B. WordPress
C. MediaWiki
D. Drupal
Joomla! to popularny system zarządzania treścią CMS który jest szeroko stosowany do tworzenia stron internetowych aplikacji online i portali. Dzięki swojej elastyczności Joomla! jest wybierany przez wiele firm i organizacji do zarządzania treścią online. System ten charakteryzuje się modułową architekturą która umożliwia łatwe rozszerzanie jego funkcjonalności za pomocą komponentów modułów i wtyczek. Jednym z głównych atutów Joomla! jest intuicyjny interfejs użytkownika który umożliwia zarządzanie treścią bez potrzeby głębokiej wiedzy technicznej. Dodatkowo Joomla! wspiera wiele języków co czyni go idealnym wyborem dla międzynarodowych organizacji. Warto również zaznaczyć że Joomla! jest open-source co oznacza że jest rozwijany przez społeczność programistów z całego świata którzy regularnie aktualizują i ulepszają oprogramowanie. Wybranie Joomla! jako CMS pozwala na korzystanie z dużej liczby szablonów i dodatków które umożliwiają personalizację witryny zgodnie z wymaganiami klienta. Dzięki solidnej bazie użytkowników i deweloperów Joomla! oferuje wsparcie techniczne i dokumentację która ułatwia rozwiązywanie problemów. W praktyce Joomla! jest wykorzystywany przez różnorodne witryny od małych blogów po rozbudowane platformy e-commerce co potwierdza jego wszechstronność i skuteczność.

Pytanie 19

Model barw o parametrach: odcień, nasycenie, jasność i przezroczystość, to

A. HSLA
B. RGBA
C. CMYK
D. SRGB
Prawidłowa odpowiedź to HSLA, bo dokładnie ten model opisuje kolor za pomocą czterech parametrów: odcień (Hue), nasycenie (Saturation), jasność (Lightness) i przezroczystość (Alpha). W praktyce w CSS zapis wygląda na przykład tak: `hsla(210, 50%, 40%, 0.7)`. Pierwsza wartość, odcień, to kąt na kole barw w stopniach (0–360), gdzie 0 to czerwony, 120 to zielony, 240 to niebieski itd. Nasycenie i jasność zapisujemy w procentach – nasycenie określa „intensywność” koloru, a jasność to to, czy kolor jest ciemny czy bardzo rozjaśniony. Ostatni parametr, alpha, to kanał przezroczystości w zakresie od 0 (całkowicie przezroczysty) do 1 (całkowicie nieprzezroczysty). Moim zdaniem HSLA jest dużo wygodniejszy od klasycznego RGB przy projektowaniu interfejsów, bo łatwiej myśleć w kategoriach „przyciemnij ten kolor o 20%” albo „zmniejsz trochę nasycenie”, niż ręcznie kombinować z trzema składowymi R, G i B. W nowoczesnym front-endzie często stosuje się HSLA do definiowania palet kolorów, np. w zmiennych CSS, właśnie dlatego, że łatwo jest tworzyć spójne warianty: hover, focus, disabled, tła, obramowania. Dobre praktyki w UI/UX mówią, żeby trzymać stały odcień (Hue) dla jednego typu akcji, a zmieniać głównie jasność i nasycenie, żeby uzyskać różne stany tego samego koloru. Warto też wiedzieć, że HSLA to tak naprawdę tylko inny sposób zapisu kolorów w przestrzeni RGB, ale dużo bardziej „ludzki” w obsłudze. Przeglądarki zgodne ze standardami CSS3 i nowszymi w pełni wspierają HSLA, więc spokojnie można go używać w projektach komercyjnych. Dobrą praktyką jest także świadome korzystanie z kanału alpha, np. do półprzezroczystych nakładek, cieni czy tła pod modale, zamiast używania grafik PNG z przezroczystością.

Pytanie 20

Jakie polecenie umożliwia pokazanie konfiguracji serwera PHP, w tym między innymi informacji o: wersji PHP, systemie operacyjnym serwera oraz wartościach przedefiniowanych zmiennych?

A. phpcredits();
B. echo phpversion();
C. print_r(ini_get_all());
D. phpinfo();
Funkcja phpinfo() jest najczęściej używanym narzędziem w ekosystemie PHP do wyświetlania szczegółowych informacji dotyczących konfiguracji serwera PHP. Umożliwia uzyskanie dostępu do kluczowych danych, takich jak wersja PHP, informacje o systemie operacyjnym, wartości przedefiniowanych zmiennych, a także wiele innych ustawień konfiguracyjnych. Dzięki temu narzędziu deweloperzy mogą szybko zdiagnozować problemy związane z konfiguracją, a także zrozumieć, jakie moduły PHP są zainstalowane i aktywne. Przykładowo, uruchamiając skrypt z tą funkcją na stronie internetowej, automatycznie generowany jest szczegółowy raport w formie HTML, co ułatwia odczyt i zrozumienie. Standardy branżowe wskazują, że korzystanie z phpinfo() powinno być ograniczone do środowisk rozwijających, ponieważ ujawnia to wiele informacji o serwerze, co w kontekście bezpieczeństwa może stanowić ryzyko. W praktyce, dobrze jest również stosować funkcję w lokalnych środowiskach deweloperskich, by monitorować i weryfikować zmiany w konfiguracji serwera podczas pracy nad projektem.

Pytanie 21

Jaką wartość zwróci poniższa instrukcja w JavaScript?

document.write(5==='5');
A. 1
B. 0
C. false
D. true
Instrukcja JavaScript użyta w tym przykładzie wykorzystuje operator potrójnego równości === który jest używany do porównywania wartości i typu danych. W przeciwieństwie do podwójnego równości == który porównuje tylko wartości potrójne równości wymaga aby zarówno typ jak i wartość były identyczne. W przedstawionym kodzie porównywana jest liczba 5 z ciągiem znaków '5'. Chociaż mają tę samą widoczną wartość ich typy danych są różne. Liczba jest typem numericznym podczas gdy '5' jest ciągiem znaków. Ponieważ typy danych nie są identyczne operator === zwróci wartość false. Operator potrójnego równości jest preferowany w dobrych praktykach branżowych JavaScript ponieważ eliminuje problemy wynikające z niejawnej konwersji typów co może prowadzić do nieoczekiwanych wyników. Użycie potrójnego równości poprawia czytelność kodu i jego niezawodność ponieważ zmusza programistę do świadomego zwracania uwagi na typy danych co jest szczególnie ważne w złożonych aplikacjach gdzie takie błędy mogą skutkować trudnymi do wykrycia problemami. Praktyka ta jest zalecana w celu utrzymania wysokiej jakości i przewidywalności działania aplikacji webowych.

Pytanie 22

Zgodnie z wytycznymi WCAG 2.x  na poziomie AA minimalny kontrast tekstu (o standardowym rozmiarze) do tła, spełniający wymogi dostępności serwisu WWW dla osób z ograniczoną percepcją wzrokową wynosi

A. 1,5 : 1
B. 4,5 : 1
C. 2,5 : 1
D. 2,0 : 1
W tym pytaniu łatwo wpaść w pułapkę myślenia, że „jakikolwiek” kontrast wystarczy, by tekst był czytelny. Warto jednak oprzeć się na twardych definicjach z WCAG 2.x, a nie na subiektywnym wrażeniu, że coś „da się przeczytać”. Propozycje niższych wartości kontrastu, takich jak 1,5 : 1, 2,0 : 1 czy 2,5 : 1, odzwierciedlają typowy błąd: ocenianie czytelności tylko własnymi oczami, najczęściej osoby młodej, bez problemów ze wzrokiem, siedzącej przy dobrym monitorze i w dobrych warunkach oświetleniowych. Współczynniki zbyt niskie, rzędu 1,5 : 1 czy 2,0 : 1, oznaczają bardzo małą różnicę jasności między tekstem a tłem. Na ekranie będzie to wyglądało jak delikatne „rozmycie” tekstu w tle. Osoby z obniżonym kontrastem widzenia, z wadami refrakcji, a nawet użytkownicy korzystający ze słabszych ekranów lub w mocnym słońcu, zwyczajnie nie odczytają takiego tekstu bez dużego wysiłku. To nie jest tylko kwestia komfortu – przy dłuższej pracy może to powodować zmęczenie oczu, bóle głowy i zniechęcenie do korzystania z serwisu. Warto też zauważyć, że wartości 2,5 : 1 czasem „intuicyjnie” wydają się już całkiem niezłe, szczególnie gdy projektant przyzwyczajony jest do bardzo delikatnych, pastelowych palet. Ale WCAG 2.0 i 2.1 w kryterium 1.4.3 wyraźnie mówią: dla zwykłego tekstu poziom AA wymaga minimum 4,5 : 1. Niższe liczby mogą być stosowane tylko w określonych sytuacjach, np. dla dużego tekstu (wtedy próg 3 : 1) albo na poziomie AAA, gdzie są jeszcze ostrzejsze wymagania dla niektórych elementów. Wszelkie niższe wartości dla małego tekstu są po prostu niezgodne ze standardem. Kolejny typowy błąd myślowy to mieszanie wymagań estetycznych z wymogami dostępności. Projektanci często boją się „zbyt mocnych” kontrastów, bo wydaje im się, że interfejs będzie wyglądał zbyt ciężko, zbyt ostro. Przez to sięgają po bardzo jasne szarości albo blade kolory tekstu. Tymczasem branżowe dobre praktyki projektowania dostępnych interfejsów mówią jasno: kontrast minimum 4,5 : 1 dla podstawowego tekstu to absolutne minimum, a w wielu serwisach (np. administracja publiczna, systemy B2B używane godzinami) warto iść jeszcze wyżej. Trzymanie się zbyt niskich wartości nie tylko łamie standard WCAG, ale też realnie wyklucza część użytkowników z komfortowego korzystania z serwisu.

Pytanie 23

Które z instrukcji algorytmu odpowiada graficznemu przedstawieniu bloku pokazanego na ilustracji?

Ilustracja do pytania
A. n ← n – 3
B. Zrealizuj podprogram do sortowania tablicy t
C. Wyświetl w konsoli wartość zmiennej n
D. n > 70
Wybór opcji wykonaj podprogram sortowania tablicy t jest dość złożony i zazwyczaj przedstawia się go w formie bloku procesu, ale nie powinno to być prostokątne. Takie operacje to nie tylko jedna czynność, trzeba wybrać odpowiedni algorytm, jak np. szybkie sortowanie, bąbelkowe czy przez wstawianie. Operacja n > 70 z kolei to logiczny warunek, który zwykle pokazuje się w notacji algorytmicznej jako romb, a nie prostokąt. Warunki są istotne w programach, pozwalają na podejmowanie decyzji. Jeśli warunki są źle napisane, to psuje to całą logikę kodu, co jest ważne, bo w testowaniu i debugowaniu ma to ogromne znaczenie. Wypisywanie wartości zmiennej n na konsolę to kolejna operacja związana z wejściem i wyjściem, która w diagramach reprezentowalibyśmy równoległobokiem, a nie prostokątem. Te działania pozwalają nam na interakcję z użytkownikami i pokazywanie wyników. Wszystkie te odpowiedzi źle przypisują elementy do prostokątnego bloku, co pokazuje, jak ważne jest zrozumienie notacji algorytmicznej w codziennej pracy programisty. Jeśli nie zrozumiemy tych różnic, to może się to odbić na wydajności i trudności w utrzymaniu kodu.

Pytanie 24

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

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

Pytanie 25

Wykonanie następującego polecenia PHP umożliwia:

$zapytanie = mysqli_query($db, "UPDATE ...");
A. zmianę struktury bazy
B. pobranie danych z bazy
C. zmianę danych w bazie
D. dodanie nowych danych do bazy
Polecenie PHP mysqli_query z użyciem instrukcji SQL UPDATE służy do modyfikacji danych w bazie danych. Funkcja mysqli_query umożliwia wykonywanie zapytań SQL na połączeniu z bazą danych reprezentowanym przez zmienną $db. Instrukcja UPDATE jest stosowana do aktualizacji istniejących rekordów w tabeli w bazie danych. Przykładowo, jeśli chcesz zaktualizować pole nazwa w tabeli użytkownicy, możesz użyć polecenia UPDATE users SET name='NowaNazwa' WHERE id=1. To podejście umożliwia dynamiczne zarządzanie danymi, co jest kluczowe w aplikacjach internetowych wymagających bieżącej aktualizacji informacji. W praktyce należy pamiętać o dobrych praktykach, takich jak walidacja danych wejściowych i zabezpieczenie przed atakami SQL injection, np. poprzez stosowanie przygotowanych zapytań. Aktualizowanie danych w bazie to jedna z podstawowych operacji CRUD (Create Read Update Delete), które są fundamentem zarządzania danymi w większości aplikacji obsługujących bazy danych. Poprawne użycie tej funkcji wymaga zrozumienia struktury SQL i znajomości specyfiki używanego systemu zarządzania bazą danych.

Pytanie 26

W formularzu dokumentu PHP znajduje się pole <input name="im">. Gdy użytkownik wprowadzi tekst "Janek", aby dodać wartość tego pola do bazy danych, w tablicy $_POST będzie obecny element

A. im o indeksie Janek
B. Janek o indeksie im
C. Janek z następującym numerem indeksu
D. im z następującym numerem indeksu
Odpowiedź "Janek o indeksie im" jest prawidłowa, ponieważ w momencie, gdy użytkownik wprowadza dane do pola formularza z nazwą 'im', wartość tego pola, czyli "Janek", zostaje przypisana do elementu tablicy $_POST. W tablicy $_POST każdemu pole w formularzu przypisuje wartość pod jego nazwą (w tym przypadku 'im'). W rezultacie, klucz tablicy $_POST będzie mieć wartość 'im', a jego wartość to 'Janek'. To podejście jest zgodne z dobrymi praktykami programowania w PHP, w których dane z formularzy są przekazywane do skryptów serwerowych w sposób zorganizowany i łatwy do odczytania. Umożliwia to deweloperom efektywne przetwarzanie danych wejściowych, co jest kluczowe w aplikacjach webowych. Przykładowo, gdy tworzymy formularz rejestracyjny, możemy użyć $_POST do łatwego przechwytywania i walidacji danych użytkownika, co poprawia bezpieczeństwo i funkcjonalność aplikacji.

Pytanie 27

SELECT ocena FROM oceny WHERE ocena>2 ORDER BY ocena;
Dana jest tabela oceny o polach id, nazwisko, imie, ocena. Przedstawione zapytanie jest przykładem:
A. projekcji
B. sumowania
C. łączenia
D. selekcji
Zapytanie SQL, które przedstawiłeś, jest naprawdę świetnym przykładem selekcji. Dzięki niemu można wyciągnąć konkretne dane z tabeli 'oceny'. Selekcja to nic innego jak filtracja danych według ustalonych kryteriów, a w tym przypadku chodzi o to, że 'ocena' musi być większa niż 2. Użycie klauzuli WHERE w SQL pozwala na efektywne wyodrębnienie danych spełniających te wymagania. A jak dodasz do tego klauzulę ORDER BY, to możesz posortować wyniki według wybranej kolejności, co jest naprawdę przydatne w różnych analizach. Takie operacje są kluczowe w pracy z bazami danych, bo dzięki nim zdobywasz konkretną wiedzę bez przeszukiwania całej bazy. W praktyce widać to w raportach, gdzie często potrzebne są tylko konkretne dane, przykładowo żeby sprawdzić, którzy studenci osiągnęli określony poziom ocen. Selekcja daje ci możliwość efektywnego zarządzania danymi, a to według mnie bardzo ważne, zwłaszcza w analizach.

Pytanie 28

W języku JavaScript, element został uzyskany przy pomocy metody getElementById. Jaką właściwość należy zastosować, aby zmienić zawartość tego elementu?

A. innerBody
B. Body
C. HTML
D. innerHTML
Właściwość innerHTML jest kluczowym elementem w manipulacji DOM (Document Object Model) w JavaScript. Umożliwia ona programistom modyfikację zawartości HTML danego elementu. Po pobraniu elementu za pomocą metody getElementById, można zmienić jego wewnętrzną zawartość, przypisując nowy tekst lub kod HTML do innerHTML. Na przykład, jeśli mamy element o id 'example', jego zawartość można zmienić w ten sposób: document.getElementById('example').innerHTML = '<p>Nowa zawartość</p>'; To podejście jest powszechnie stosowane w dynamicznej aktualizacji treści stron internetowych, co jest szczególnie przydatne w aplikacjach jednostronicowych (SPA) oraz przy tworzeniu interaktywnych komponentów użytkownika. Warto również zauważyć, że używanie innerHTML wiąże się z pewnymi zagrożeniami, takimi jak wstrzykiwanie kodu (XSS), dlatego zawsze powinno się dbać o walidację i sanitację wprowadzanych danych. W praktyce, aby zwiększyć bezpieczeństwo aplikacji, można korzystać z innych metod manipulacji DOM, takich jak textContent lub createElement, które nie interpretują kodu HTML.

Pytanie 29

Do modyfikacji danych w bazie danych można wykorzystać

A. raport
B. filtrowanie
C. formularz
D. kwerendę SELECT
Formularz jest narzędziem, które umożliwia użytkownikom wprowadzanie i edytowanie danych w bazie danych w sposób przyjazny i intuicyjny. Przy użyciu formularzy można łatwo zdefiniować, jakie dane mają być wprowadzone, oraz w jakim formacie, co znacząco ogranicza ryzyko błędów. W praktyce, formularze są powszechnie wykorzystywane w aplikacjach webowych oraz systemach zarządzania danymi, takich jak systemy CRM czy ERP. Umożliwiają one także walidację danych przed ich zapisaniem w bazie, co jest ważnym krokiem w zapewnieniu integralności danych. Wykorzystanie formularzy w projektowaniu aplikacji jest zgodne z zasadami UX, które kładą nacisk na łatwość obsługi i wygodę użytkownika. Dodatkowo, standardy takie jak HTML5 oferują różnorodne elementy formularzy, które można łatwo integrować z backendem, co ułatwia przechwytywanie danych i ich późniejsze przetwarzanie.

Pytanie 30

Reguła CSS, która ustawia tekst paragrafu w pionie na środku, to:

A. vertical-align: middle
B. vertical-align: center
C. text-align: center
D. align: middle
Odpowiedzi, które zostały podane jako alternatywne, są niepoprawne z różnych powodów. 'Vertical-align: center' nie jest uznawane za poprawną regułę CSS, ponieważ nie istnieje właściwość 'center' w kontekście 'vertical-align'. Tylko wartości takie jak 'top', 'middle', 'bottom' oraz 'baseline' są dozwolone. Z kolei 'text-align: center' jest właściwością, która odpowiada za poziome centrowanie tekstu wewnątrz elementu blokowego lub kontenera, a nie za wyśrodkowanie w pionie. Użycie tej reguły sprawi, że tekst będzie wyśrodkowany w poziomie, co jest zupełnie inną operacją niż pionowe centrowanie. Ostatnia propozycja, 'align: middle', jest również niepoprawna, ponieważ nie jest to właściwość CSS. W kontekście wyśrodkowywania elementów w CSS, 'align' nie jest używane, a zamiast tego powinno się stosować 'vertical-align' lub techniki takie jak flexbox, które pozwalają na bardziej elastyczne i nowoczesne podejście do układania elementów. Zrozumienie różnicy między tymi właściwościami jest kluczowe dla efektywnego projektowania stron internetowych, ponieważ stosowanie niewłaściwych reguł może prowadzić do nieoczekiwanych rezultatów w układzie strony.

Pytanie 31

Wskaż poprawne stwierdzenie dotyczące przedstawionego kodu HTML.
<video width="640" height="480" controls>
<source src="animacja.mp4" type="video/mp4">
</video>

A. Kod może nie działać w przeglądarkach, które nie obsługują HTML5.
B. Plik animacja.mp4 powinien mieć rozdzielczość 640x480 pikseli, aby był odtwarzany.
C. Lokalizacja pliku jest nieprawidłowa, brak w niej ścieżki bezwzględnej.
D. Użytkownik nie będzie miał możliwości kontrolowania odtwarzania wideo.
Kod HTML przedstawiony w pytaniu wykorzystuje znacznik &lt;video&gt;, który jest elementem HTML5 pozwalającym na osadzanie filmów w dokumentach internetowych. W kontekście poprawnej odpowiedzi, kluczowym jest zrozumienie, że przeglądarki muszą obsługiwać HTML5, aby mogły w pełni funkcjonować z tym kodem. W przypadku starszych przeglądarek, które nie wspierają HTML5, element &lt;video&gt; może nie być wyświetlany lub nie będzie działał prawidłowo. Dlatego istotne jest, aby deweloperzy testowali swoje aplikacje w różnych środowiskach oraz aby korzystali z odpowiednich polyfilli dla starszych przeglądarek, które mogą poprawić ich funkcjonalność. Przykładowo, użycie biblioteki JavaScript takiej jak Video.js może pomóc w zapewnieniu wsparcia dla elementów wideo w szerszym zakresie przeglądarek. Dbałość o kompatybilność z różnymi wersjami przeglądarek to nie tylko kwestia estetyki, ale również użyteczności i dostępności aplikacji internetowych.

Pytanie 32

W języku JavaScript funkcja document.getElementById() ma na celu

A. sprawdzić poprawność formularza z identyfikatorem id
B. umieścić tekst o treści 'id' na stronie internetowej
C. pobrać dane z pola formularza i zapisać je do zmiennej id
D. zwrócić odnośnik do pierwszego elementu HTML o określonym id
Odpowiedzi, które nie zostały uznane za poprawne, zawierają nieprawidłowe interpretacje funkcji document.getElementById(). Pierwsza z nich sugeruje, że metoda ta wstawia tekst na stronie o treści 'id'. W rzeczywistości, metoda ta nie ma na celu wyświetlania lub wstawiania tekstu na stronę, lecz zwraca referencję do elementu z określonym id, co oznacza, że operacje na zawartości elementu muszą być wykonane oddzielnie poprzez inną metodę, np. innerHTML. Kolejna odpowiedź sugeruje, że metoda sprawdza poprawność formularza. Zgadza się, że walidacja formularzy jest kluczowym aspektem zarządzania danymi użytkowników, ale document.getElementById() nie przeprowadza walidacji, a jedynie umożliwia dostęp do elementów formularza, co można wykorzystać do walidacji, ale nie jest to jej pierwotna funkcja. Ostatnia z podanych odpowiedzi stwierdza, że metoda pobiera dane z pola formularza i wstawia je do zmiennej. Również jest to mylna interpretacja, ponieważ document.getElementById() nie przetwarza ani nie przechowuje danych, a jedynie pozwala na dostęp do elementu, z którego dane mogą być później pobrane przy użyciu odpowiednich właściwości, takich jak value w przypadku pól formularzy. Wszystkie te odpowiedzi wskazują na zrozumienie metody jako narzędzia do wstawiania lub walidacji danych, co jest niezgodne z faktycznym działaniem tej metody.

Pytanie 33

Tabela o nazwie naprawy zawiera kolumny: klient, czyNaprawione. Jakie polecenie należy użyć, aby wykasować rekordy, w których pole czyNaprawione ma wartość prawdziwą?

A. DELETE FROM naprawy;
B. DELETE klient FROM naprawy WHERE czyNaprawione = TRUE;
C. DELETE naprawy WHERE czyNaprawione = TRUE;
D. DELETE FROM naprawy WHERE czyNaprawione = TRUE;
Poprawna odpowiedź to 'DELETE FROM naprawy WHERE czyNaprawione = TRUE;'. To polecenie SQL jest zgodne z syntaksą używaną do usuwania rekordów z tabeli, gdzie spełniony jest określony warunek. W tym przypadku, usuwamy wszystkie rekordy z tabeli 'naprawy', dla których pole 'czyNaprawione' ma wartość TRUE. Użycie słowa kluczowego 'FROM' jest niezbędne, aby wskazać, z której tabeli chcemy usunąć dane. Przykładowo, jeśli w tabeli 'naprawy' mamy wielu klientów, z którymi nie zostały jeszcze dokonane naprawy, a chcemy zachować tylko te, które zostały zakończone, takie polecenie jest idealne. W praktyce, stosowanie takich zapytań jest istotne, aby utrzymywać bazę danych w porządku i eliminować nieaktualne informacje. Ponadto, zgodnie z dobrymi praktykami, przed wykonaniem polecenia DELETE warto wykonać zapytanie SELECT z tym samym warunkiem, aby zobaczyć, które rekordy zostaną usunięte.

Pytanie 34

Która rozdzielczość jest wyrażana za pomocą jednostki ppi (ang. pixels per inch)?

A. Obrazów tworzonych przez drukarki i plotery.
B. Skanerów.
C. Obrazów rastrowych.
D. Cyfrowych urządzeń wykonujących pomiary.
Jednostka ppi (pixels per inch) wielu osobom myli się z innymi rodzajami rozdzielczości, co jest całkiem zrozumiałe, bo w grafice i poligrafii mamy kilka podobnie brzmiących pojęć. Ppi opisuje gęstość pikseli w obrazie rastrowym, czyli informację, jak gęsto ułożone są piksele w danym fizycznym rozmiarze. To cecha samego obrazu lub projektu, a nie cecha urządzenia pomiarowego czy drukarki. Częsty błąd polega na kojarzeniu ppi z rozdzielczością skanera. Skaner co prawda pracuje na pikselach, ale standardowo jego rozdzielczość określa się w dpi (dots per inch). W uproszczeniu: mówimy o tym, ile punktów skaner jest w stanie „odczytać” z jednego cala skanowanego dokumentu. Efektem pracy skanera jest obraz rastrowy i to właśnie ten wynikowy plik ma swoją rozdzielczość w pikselach i może mieć zdefiniowaną wartość ppi, ale sama specyfikacja urządzenia jest zwykle opisana w dpi. Podobnie mylące bywa kojarzenie ppi z cyfrowymi urządzeniami pomiarowymi. One najczęściej operują na zupełnie innych parametrach: dokładności pomiaru, częstotliwości próbkowania, rozdzielczości przetwornika ADC, liczbie bitów itp. Tam nie ma siatki pikseli w sensie graficznym, więc jednostka ppi po prostu nie pasuje do charakteru tych urządzeń. Dużo osób utożsamia też ppi z rozdzielczością drukarek i ploterów. W świecie druku standardową jednostką jest dpi, bo urządzenie fizycznie „strzela” punktami tuszu lub toneru na papier. Drukarka może z jednego piksela obrazu rastrowego wygenerować wiele mikroskopijnych punktów farby, aby uzyskać odpowiedni kolor i odcień, dlatego jej rozdzielczość w dpi bywa znacznie wyższa niż rozdzielczość samego pliku. Tu właśnie tkwi subtelna różnica: ppi opisuje obraz, dpi opisuje urządzenie drukujące. Pomylenie tych pojęć prowadzi do złego przygotowania materiałów – np. za niska rozdzielczość obrazu rastrowego przy wysokiej rozdzielczości drukarki da nieostry, „rozmyty” wydruk, mimo że specyfikacja drukarki wygląda imponująco. Z mojego doświadczenia, dobrą praktyką jest zawsze pytać: „czy mówimy o pliku graficznym (rastrowym), czy o urządzeniu?” – wtedy łatwiej poprawnie zastosować ppi i dpi i uniknąć nieporozumień przy projektach graficznych i webowych.

Pytanie 35

Jaki zapis jest używany do definiowania klucza obcego w MySQL?

A. AUTO_INCREMENT(ID)
B. FOREIGN KEY(ID)
C. UNIQUE KEY(ID)
D. PRIMARY KEY(ID)
Odpowiedź FOREIGN KEY(ID) jest poprawna, ponieważ klucz obcy (foreign key) jest używany w bazach danych do ustanowienia i wymuszenia relacji pomiędzy dwiema tabelami. Klucz obcy w tabeli A wskazuje na klucz podstawowy (primary key) w tabeli B, co pozwala na utrzymanie integralności referencyjnej danych. Na przykład, jeżeli mamy tabelę 'Zamówienia', w której zapisujemy informacje o zamówieniach, i tabelę 'Klienci', w której mamy dane o klientach, możemy zastosować klucz obcy w tabeli 'Zamówienia', aby wskazywał na ID klienta w tabeli 'Klienci'. Dzięki temu, nie będzie możliwości dodania zamówienia dla nieistniejącego klienta, co zapewnia spójność i integralność bazy danych. Używanie kluczy obcych jest zgodne z najlepszymi praktykami projektowania baz danych, ponieważ pozwala na łatwiejsze zarządzanie danymi i ogranicza możliwość wystąpienia błędów. Warto również zauważyć, że klucze obce mogą być używane w kontekście kaskadowej aktualizacji lub usuwania, co dodatkowo ułatwia zarządzanie relacjami między tabelami.

Pytanie 36

Jaki jest cel funkcji napisanej w PHP?

$zapytanie = mysql_query("SELECT * FROM napisy");
A. zmianę hasła do bazy danych
B. ochronę bazy danych
C. uzyskanie danych z bazy danych
D. nawiązanie połączenia z bazą danych
Podana funkcja w języku PHP demonstruje zastosowanie polecenia SQL SELECT które jest używane do pobierania danych z bazy danych MySQL. Funkcja mysql_query jest używana do wykonywania zapytań SQL w kontekście bazy danych MySQL. W tym przypadku zapytanie SQL SELECT * FROM napisy pobiera wszystkie rekordy z tabeli o nazwie napisy. W praktyce wybór danych przy użyciu komendy SELECT jest kluczowy w aplikacjach PHP które działają z bazami danych ponieważ pozwala na dynamiczne generowanie zawartości strony internetowej w oparciu o informacje przechowywane w bazie. Ważne jest przestrzeganie najlepszych praktyk takich jak użycie funkcji mysqli_query czy PDO w nowych aplikacjach PHP w celu zapewnienia bezpieczeństwa i wydajności ponieważ mysql_query jest przestarzałe. Dodatkowo należy stosować techniki zabezpieczające przed SQL injection takie jak przygotowane zapytania co zwiększa bezpieczeństwo aplikacji

Pytanie 37

Na przedstawionej tabeli samochodów wykonano zapytanie SQL:

SELECT model FROM samochody
WHERE rocznik=2016;

Jakie wartości zostaną zwrócone w wyniku tego zapytania?
idmarkamodelrocznikkolorstan
1FiatPunto2016czerwonybardzo dobry
2FiatPunto2002czerwonydobry
3FiatPunto2007niebieskibardzo dobry
4OpelCorsa2016grafitowybardzo dobry
5OpelAstra2003niebieskiporysowany lakier
6ToyotaCorolla2016czerwonybardzo dobry
7ToyotaCorolla2014szarydobry
8ToyotaYaris2004granatowydobry
A. Czerwony, grafitowy
B. Punto, Corsa, Astra, Corolla, Yaris
C. Fiat, Opel, Toyota
D. Punto, Corsa, Corolla
Zapytanie SQL SELECT model FROM samochody WHERE rocznik=2016; jest skonstruowane w sposób, który filtruje wyniki do wierszy, gdzie kolumna rocznik ma wartość 2016. Następnie zostaje wyświetlona tylko kolumna model z tych wierszy. W przedstawionej tabeli samochodów wiersze o roczniku 2016 mają modele Punto Corsa i Corolla. Dlatego odpowiedź zawiera te konkretne modele. To zapytanie ilustruje podstawową funkcję filtracji danych w SQL co jest kluczowe w zarządzaniu bazami danych. Użycie WHERE pozwala na selektywne pobieranie danych co jest niezbędne w analizie danych. W praktyce takie zapytania mogą być stosowane w systemach zarządzania zasobami np. w branży motoryzacyjnej do śledzenia modeli pojazdów według rocznika. Dobre praktyki obejmują używanie indeksów na kolumnach wykorzystywanych w klauzuli WHERE aby zoptymalizować wydajność zapytań. Indeksy pomagają w szybszym wyszukiwaniu i filtracji danych co jest szczególnie ważne w dużych bazach danych. Konsystencja oraz dokładność zapytań SQL są kluczowe dla efektywnego funkcjonowania systemów opartych na bazach danych.

Pytanie 38

Który efekt został zaprezentowany na filmie?

A. Zwiększenie ostrości zdjęcia.
B. Zmiana jasności zdjęć.
C. Przenikanie zdjęć.
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 39

Grafika, która ma być pokazana na stronie, powinna mieć transparentne tło. Podaj format pliku graficznego, w którym należy go zapisać.

A. CDR
B. JPEG
C. PNG
D. BMP
Format PNG (Portable Network Graphics) jest idealnym rozwiązaniem dla obrazów z przezroczystym tłem, ponieważ obsługuje kanał alpha, który umożliwia definiowanie przezroczystości poszczególnych pikseli. Dzięki temu, gdy obraz PNG jest umieszczany na różnym tle, zachowuje naturalny wygląd i nie wymaga dodatkowego dostosowywania, co jest szczególnie ważne w projektach graficznych, które wymagają elastyczności w prezentacji. Przykładowe zastosowania PNG obejmują ikony, logo oraz wszelkie grafiki, które muszą być nałożone na inne elementy wizualne bez widocznych krawędzi czy tła. W branży grafiki komputerowej oraz web designu, PNG stał się standardem dla materiałów wymagających wysokiej jakości obrazu z zachowaniem przezroczystości. Dobrą praktyką jest również stosowanie PNG w przypadku grafik, które zawierają tekst, ponieważ format ten nie wprowadza strat jakości, co może mieć miejsce w przypadku innych formatów kompresji. Warto również zaznaczyć, że PNG nie traci jakości przy wielokrotnym zapisywaniu, co czyni go preferowanym wyborem tam, gdzie jakość jest kluczowa.

Pytanie 40

W języku JavaScript, funkcja Math.pow() wykorzystuje się do obliczenia

A. wartości przybliżonej liczby
B. pierwiastka kwadratowego liczby
C. wartości bezwzględnej liczby
D. potęgi liczby
Funkcja Math.pow() w JavaScript służy do obliczania potęgi liczby, co oznacza, że można jej użyć do podnoszenia liczby do wybranej potęgi. Poprawna składnia tej funkcji to Math.pow(base, exponent), gdzie 'base' to liczba, którą chcemy podnieść do potęgi, a 'exponent' to wykładnik. Na przykład, aby obliczyć 2 do potęgi 3, używamy Math.pow(2, 3), co zwraca 8. Ta funkcja jest niezwykle przydatna w różnych kontekstach programistycznych, takich jak obliczenia matematyczne, grafika komputerowa, czy modelowanie rzeczywistych zjawisk. W praktyce, korzystając z Math.pow(), można zrealizować wiele bardziej zaawansowanych obliczeń, takich jak obliczanie wartości funkcji wygładzających, symulacji fizycznych czy operacji na danych statystycznych. Kluczowe jest, aby pamiętać, że w JavaScript dostępne są również operator potęgowania (**), wprowadzony w ECMAScript 2016, co czyni kod bardziej czytelnym, na przykład 2 ** 3 również zwraca 8. Warto być świadomym tych narzędzi, aby optymalizować i upraszczać kod w swoich projektach.