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: 22 kwietnia 2026 10:49
  • Data zakończenia: 22 kwietnia 2026 11:08

Egzamin zdany!

Wynik: 28/40 punktów (70,0%)

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Aby cofnąć uprawnienia dostępu do serwera MySQL, należy wykorzystać polecenie

A. USAGE
B. REVOKE
C. GRANT
D. DELETE
Aby odebrać prawa dostępu do serwera MySQL, używa się polecenia REVOKE. To polecenie jest kluczowe w zarządzaniu uprawnieniami użytkowników w systemie zarządzania bazą danych MySQL. REVOKE pozwala na usunięcie wcześniej przydzielonych praw dostępu do określonych zasobów, takich jak tabele, bazy danych lub inne obiekty. Przykładowo, aby odebrać prawo SELECT dla użytkownika 'janek' na tabeli 'produkty', należy użyć komendy: REVOKE SELECT ON produkty FROM 'janek'@'localhost';. Dzięki temu użytkownik 'janek' nie będzie miał możliwości wykonywania zapytań SELECT na tej tabeli. Warto zaznaczyć, że REVOKE działa w oparciu o hierarchię uprawnień, co oznacza, że można je łączyć z innymi poleceniami, aby skutecznie zarządzać dostępem. Zgodnie z dokumentacją MySQL, REVOKE jest integralną częścią systemu autoryzacji, co czyni je niezbędnym dla zapewnienia bezpieczeństwa danych w bazach danych. Użycie REVOKE jest również istotne w kontekście audytów bezpieczeństwa, gdzie konieczne jest zarządzanie dostępem do danych.

Pytanie 2

Jaką właściwość należy zastosować w kodzie CSS, aby ustawić czcionkę Verdana?

A. font-name: Verdana;
B. font-weight: Verdana;
C. font-style: Verdana;
D. font-family: Verdana;
Aby ustawić czcionkę Verdana w CSS, musisz użyć właściwości 'font-family'. To taka właściwość, która pozwala na określenie czcionek stosowanych w twoim dokumencie. W tym przypadku, chodzi o 'Verdana'. Jak przeglądarka znajdzie tę czcionkę w systemie użytkownika, to ją użyje. Na przykład, taki kod CSS może wyglądać tak: 'body { font-family: Verdana; }'. Warto pamiętać, że dobrze jest podać też inne czcionki na wypadek, gdyby Verdana nie była dostępna. Można to zrobić, wpisując alternatywy, jak w 'font-family: Verdana, Arial, sans-serif;'. Wtedy, jeżeli 'Verdana' nie jest dostępna, przeglądarka przejdzie do 'Arial', a jak ta też nie, to sięgnie po jakąś standardową czcionkę bezszeryfową. Z moich doświadczeń wynika, że stosowanie właściwości 'font-family' jest kluczowe dla stylu strony, bo poprawia to czytelność i jej ogólny wygląd.

Pytanie 3

Jak powinien być zapisany kolor 255 12 12 w modelu RGB na stronie www?

A. #FF0C0C
B. #EE0C0C
C. #2551212
D. #AB1A1D
Kolor 255, 12, 12 w modelu RGB oznacza maksymalne nasycenie koloru czerwonego oraz bardzo niskie wartości zielonego i niebieskiego. Zapis w postaci heksadecymalnej, który jest stosowany w projektowaniu stron internetowych, polega na konwersji wartości RGB do formatu szesnastkowego. W tym przypadku, wartość 255 w systemie dziesiętnym odpowiada FF w systemie szesnastkowym, co oznacza maksymalne nasycenie koloru czerwonego. Wartość 12 w systemie dziesiętnym odpowiada 0C, co jest zbyt niską wartością zarówno dla zielonego, jak i niebieskiego. Dlatego pełny zapis koloru RGB 255, 12, 12 w formacie heksadecymalnym to #FF0C0C. Użycie standardu heksadecymalnego (hex) jest powszechne w CSS, gdzie kolory są definiowane za pomocą szesnastkowych wartości. Przykładowo, aby ustawić tło elementu w CSS na ten kolor, można użyć zapisu: 'background-color: #FF0C0C;'. Warto zrozumieć, że poprawne użycie systemów kolorów RGB i hex jest kluczowe w projektowaniu graficznym i webowym, ponieważ wpływa na estetykę i użyteczność interfejsów użytkownika.

Pytanie 4

W jaki sposób zostanie uporządkowana lista, stworzona z wszystkich kolumn tabeli uczniowie, zawierająca uczniów z średnią powyżej 5, która zostanie zwrócona jako rezultat przedstawionego zapytania?

Ilustracja do pytania
A. Rosnąco według parametru klasa
B. Malejąco według parametru srednia
C. Malejąco według parametru klasa
D. Rosnąco według parametru srednia
Sortowanie listy wynikowej w SQL jest kluczową operacją, wpływającą na prezentację danych użytkownikowi końcowemu. W kontekście przedstawionego pytania, kluczowym elementem było zrozumienie różnicy między sortowaniem rosnącym a malejącym. Odpowiedzi sugerujące sortowanie według parametru średnia wskazują na brak uwzględnienia kluczowej części zapytania dotyczącej klauzuli ORDER BY, która wyraźnie określała sortowanie według klasy. Błędne zrozumienie kierunku sortowania, czyli rosnąco lub malejąco, wskazuje na pominięcie znaczenia DESC w zapytaniu. DESC to skrót od descending, co oznacza porządek malejący, z kolei jej brak domyślnie oznaczałby sortowanie rosnące (ASC). SQL jest językiem, w którym precyzja składni ma kluczowe znaczenie, a drobne różnice w poleceniach mogą prowadzić do odmiennych wyników. Wybierając parametry sortowania, dobrze jest zrozumieć, jak wpływają one na sposób prezentacji danych. Częstym błędem jest nieuwzględnienie priorytetu sortowania, który w praktyce projektowania baz danych może mieć wpływ na wydajność zapytań, zwłaszcza gdy bazy danych zawierają duże ilości danych. Dlatego też, aby uniknąć typowych błędów, warto dokładnie analizować każde polecenie i jego wpływ na wynikowy zestaw danych.

Pytanie 5

Określ wynik wykonania poniższego fragmentu kodu JavaScript.

var akapit = document.createElement("p");
document.body.appendChild(akapit);
A. Wstawienie akapitu na początku strony
B. Usunięcie akapitu z treści strony
C. Wyświetlenie okna dialogowego z komunikatem "akapit"
D. Dodanie akapitu na samym końcu strony
Kod JavaScript, który tutaj widzisz, tworzy nowy element paragrafu (p) przy użyciu metody createElement. Potem ten nowy element dodaje się do dokumentu na końcu, przez appendChild do body. To wszystko dotyczy manipulacji DOM, co jest kluczowe w JavaScript. Zrozumienie tych operacji to naprawdę ważna sprawa, bo pozwala na tworzenie dynamicznych, interaktywnych stron internetowych. Dzięki createElement można w czasie rzeczywistym generować nowe elementy HTML, a appendChild pozwala je umieścić w wybranym miejscu na stronie. To są praktyki, które są standardem w dobrym kodowaniu i często wykorzystuje się je w nowoczesnych aplikacjach webowych. Manipulacja DOM to podstawowy temat w technologiach front-endowych i pozwala na zmiany w treści stron bez ich przeładowywania. Kiedy dobrze rozumiesz te techniki, możesz budować bardziej responsywne aplikacje, co teraz jest normą w branży.

Pytanie 6

Podczas tworzenia witryny internetowej zastosowano kod definiujący jej wygląd. Jaką szerokość przeznaczono na zawartość strony?

Ilustracja do pytania
A. 640 px
B. 600 px
C. 560 px
D. 2 px
Definiowanie szerokości elementu w CSS jest kluczowym aspektem projektowania responsywnych stron internetowych. W przedstawionym kodzie CSS zauważamy definicję width 560px która określa szerokość elementu body. Ta wartość bezpośrednio przekłada się na dostępną przestrzeń dla treści wewnętrznej tego elementu. W praktyce definiowanie szerokości w pikselach pozwala na precyzyjne kontrolowanie układu strony co jest szczególnie istotne w kontekście projektowania interfejsów użytkownika. Takie podejście jest jednak najczęściej stosowane w środowiskach gdzie mamy pełną kontrolę nad urządzeniami wyświetlającymi stronę. W kontekście nowoczesnych praktyk często stosuje się jednostki względne lub techniki takie jak media queries aby zapewnić lepszą responsywność i elastyczność. Ważne jest także rozważanie dodatkowych aspektów takich jak marginesy i wypełnienia które mogą wpływać na rzeczywistą ilość dostępnej przestrzeni na treść. Właściwe zrozumienie i zastosowanie szerokości jest kluczowe dla tworzenia estetycznych i funkcjonalnych układów strony internetowej.

Pytanie 7

W języku HTML, aby połączyć w pionie dwie sąsiadujące komórki w kolumnie tabeli, należy użyć atrybutu

A. colspan
B. rowspan
C. cellpadding
D. cellspacing
Atrybut rowspan w języku HTML jest kluczowy do scalania komórek tabeli w pionie, co oznacza, że pozwala na połączenie dwóch lub więcej komórek w jednej kolumnie w jedną, większą komórkę. Dzięki temu, można uzyskać bardziej przejrzysty i zorganizowany układ informacji w tabelach, zwłaszcza w przypadku danych, które są ze sobą powiązane. Na przykład, jeśli mamy tabelę, w której jeden z wierszy odnosi się do tytułu kategorii, a poniżej znajdują się różne elementy tej kategorii, użycie atrybutu rowspan w pierwszej komórce umożliwi jej rozszerzenie na kilka wierszy, co wizualnie połączy te dane. Standard HTML5 definiuje atrybut rowspan jako atrybut, który przyjmuje wartość liczbową, określającą liczbę wierszy, które mają zostać scalone. Przykładowy kod HTML mógłby wyglądać następująco: <table><tr><td rowspan='3'>Kategoria</td><td>Element 1</td></tr><tr><td>Element 2</td></tr><tr><td>Element 3</td></tr></table>, co w efekcie tworzy jedną komórkę o wysokości trzech wierszy oraz trzy osobne komórki w drugiej kolumnie. Użycie rowspan w praktyce jest nie tylko estetyczne, ale również poprawia czytelność danych, co jest niezmiernie ważne w interfejsach użytkownika.

Pytanie 8

Jaką rozdzielczość należy przyjąć, aby uzyskać proporcje obrazu 16:9, zakładając, że piksel ma formę kwadratu?

A. 2560 na 2048 pikseli
B. 800 na 480 pikseli
C. 320 na 240 pikseli
D. 1366 na 768 pikseli
Pozostałe opcje rozdzielczości nie spełniają wymogów proporcji 16:9. Rozdzielczość 320 na 240 pikseli, choć popularna w starszych urządzeniach, ma proporcje 4:3, co jest niewłaściwe dla szerokokątnych zastosowań i nie oddaje pełni nowoczesnych treści wizualnych. W przypadku rozdzielczości 800 na 480 pikseli, proporcje wynoszą około 15:9, co również nie jest zgodne z wymaganym standardem 16:9. Ta rozdzielczość może być używana w niektórych telefonach komórkowych, ale nie nadaje się do oglądania współczesnych filmów i programów telewizyjnych, które są produkowane w formacie 16:9. Natomiast rozdzielczość 2560 na 2048 pikseli, mimo że oferuje wysoką jakość obrazu, ma proporcje 5:4, co jest zbliżone do formatu 4:3 i nie odpowiada wymaganiom współczesnych treści wizualnych. Proporcje te są niestandardowe i nie są idealne do wyświetlania materiałów wideo, co ogranicza ich zastosowanie w nowoczesnych mediach.

Pytanie 9

Jakie zasady dotyczące tworzenia sekcji w języku HTML są właściwe?

A. W sekcji <head> mogą się pojawić znaczniki <meta>, <title>, <link>
B. W sekcji <head> nie wolno umieszczać kodu CSS, tylko odniesienie do pliku CSS
C. W sekcji <head> znajduje się sekcja <body>
D. W sekcji <head> można ustalać szablon strony za pomocą znaczników <div>
Wybór odpowiedzi, że w części <head> mogą wystąpić znaczniki <meta>, <title>, <link> jest jak najbardziej poprawny. Część <head> dokumentu HTML jest kluczowa dla określenia właściwości oraz meta-informacji o stronie. Znacznik <meta> służy do przechowywania danych o stronie, takich jak opis, słowa kluczowe czy konfiguracja kodowania. Znacznik <title> definiuje tytuł strony, który jest wyświetlany na karcie przeglądarki oraz w wynikach wyszukiwania, co jest istotne dla SEO. Z kolei znacznik <link> pozwala na połączenie dokumentu HTML z zewnętrznymi arkuszami stylów CSS lub innymi zasobami. Stosowanie tych znaczników jest zgodne z obowiązującymi standardami W3C oraz najlepszymi praktykami w zakresie tworzenia stron internetowych. Dobrze zorganizowana sekcja <head> wpływa na efektywność i widoczność strony w wyszukiwarkach, a także na jej ogólną jakość. Przykładem użycia może być dodanie metadanych do strony internetowej, co pozwala na lepsze pozycjonowanie w wyszukiwarkach oraz ułatwia zarządzanie stylem poprzez odwołanie do pliku CSS.

Pytanie 10

Przemiana kodu źródłowego wykonanego przez programistę w zrozumiały dla maszyny kod maszynowy to

A. kompilowanie
B. wdrażanie
C. analizowanie błędów
D. wykonywanie
Kompilowanie to kluczowy proces w inżynierii oprogramowania, który polega na przekształceniu kodu źródłowego napisanego w języku wysokiego poziomu (takim jak C++, Java czy Python) na kod maszynowy zrozumiały dla komputera. Proces ten jest krytyczny, ponieważ komputery nie są w stanie interpretować kodu źródłowego bezpośrednio. Kompilator przeprowadza analizę syntaktyczną i semantyczną kodu, optymalizuje go, a następnie generuje kod maszynowy. W praktyce, kompilacja pozwala na wykrycie błędów w kodzie przed jego uruchomieniem, co jest zgodne z najlepszymi praktykami programistycznymi. Kompilatory często oferują dodatkowe narzędzia, takie jak debugery, które umożliwiają programistom śledzenie błędów w kodzie. W kontekście dużych projektów, dobrym podejściem jest również wykorzystanie systemów CI/CD, które automatyzują proces kompilacji i testowania, co znacząco przyspiesza cykl rozwoju oprogramowania oraz zwiększa jego jakość.

Pytanie 11

Linia kodu przedstawiona w PHP ma na celu

Ilustracja do pytania
A. przypisać wartości do tablicy
B. zdefiniować stałą o nazwie OSOBA
C. porównać dwa ciągi znaków
D. ustalić wartość dla zmiennej $OSOBA
W języku PHP funkcja define() służy do definiowania stałych które są wartościami niezmiennymi po zdefiniowaniu. W przykładzie define(OSOBA Anna Kowalska) definiujemy stałą o nazwie OSOBA z przypisaną wartością Anna Kowalska. Stałe są używane gdy potrzebujemy zagwarantować że dana wartość pozostanie niezmienna przez cały czas działania programu co jest kluczowe w zapewnieniu spójności i integralności danych. PHP odróżnia stałe wielkością liter więc zgodnie z konwencją stałe zapisuje się wielkimi literami dla lepszej czytelności. Funkcja ta jest często używana do definiowania wartości konfiguracyjnych takich jak ścieżki do plików czy dane dostępowe które nie powinny być zmieniane podczas wykonywania skryptu. Dzięki funkcji define() unikamy przypadkowego nadpisania istotnych wartości co jest jedną z dobrych praktyk programistycznych. Warto zaznaczyć że od PHP 7 istnieje możliwość definiowania stałych tablicowych co ułatwia organizację bardziej złożonych danych.

Pytanie 12

Która z poniższych funkcji w języku PHP zmieni słowo „kota” na „mysz” w zdaniu „ala ma kota”?

A. replace("ala ma kota", "kota", "mysz");
B. replace("kota", "mysz", "ala ma kota");
C. str_replace( "kota", "mysz", "ala ma kota");
D. str_replace("ala ma kota", "kota", "mysz");
Funkcja str_replace w języku PHP jest odpowiedzialna za zamianę określonych ciągów znaków w danym tekście. W poprawnej odpowiedzi użyto jej w sposób zgodny z jej syntaksą, co jest kluczowe dla prawidłowego działania w tym kontekście. W przypadku str_replace, pierwszy argument to ciąg znaków, który chcemy zamienić, drugi argument to nowy ciąg, który ma zastąpić stary, a trzeci argument to tekst, w którym dokonujemy zamiany. W przedstawionym przykładzie, zamieniamy słowo 'kota' na 'mysz' w napisie 'ala ma kota', co skutkuje wynikiem 'ala ma mysz'. Tego rodzaju operacje są powszechnie stosowane w programowaniu webowym, szczególnie przy dynamicznym generowaniu treści, gdzie konieczne jest modyfikowanie tekstu na podstawie danych użytkownika lub baz danych. Warto również zwrócić uwagę na to, że stosowanie str_replace zgodnie z dokumentacją PHP jest standardem, który pozwala na uniknięcie wielu błędów związanych z manipulacją tekstem.

Pytanie 13

Aby obraz umieszczony za pomocą kodu HTML mógł być rozpoznawany przez programy wspierające osoby niewidome, konieczne jest określenie atrybutu

A. alt
B. sizes
C. border
D. src
Atrybut 'alt' (alternatywny tekst) jest kluczowym elementem w kontekście dostępności stron internetowych, szczególnie dla osób niewidzących. Jego głównym celem jest dostarczenie opisowej informacji o obrazie, który nie może być bezpośrednio widziany. W przypadku obrazów, które nie są widoczne z różnych powodów (np. uszkodzenie pliku, brak połączenia internetowego lub korzystanie z czytników ekranu), tekst alternatywny pomaga zrozumieć kontekst i znaczenie danego obrazu. Przykład zastosowania: dla obrazka przedstawiającego logo firmy, można użyć atrybutu alt w następujący sposób: <img src='logo.png' alt='Logo firmy XYZ'>. W ten sposób, jeśli obrazek nie załadowałby się, użytkownik korzystający z czytnika ekranu otrzyma informację o tym, co ten obraz przedstawia. Definiowanie atrybutu 'alt' jest zgodne z wytycznymi WCAG (Web Content Accessibility Guidelines), które zalecają, aby wszystkie obrazki, które pełnią funkcję informacyjną, były opisane w taki sposób, aby zapewnić pełny dostęp do treści wszystkim użytkownikom. W praktyce takie podejście nie tylko poprawia dostępność, ale również pozytywnie wpływa na SEO, ponieważ wyszukiwarki również analizują ten atrybut.

Pytanie 14

Jednym z rodzajów testów jednostkowych jest badanie ścieżek, które polega na

A. analizie obiektów pod kątem inicjalizacji oraz uwalniania pamięci
B. sprawdzaniu wartości granicznych zbioru danych
C. ustaleniu punktu startowego i końcowego oraz analizie możliwych tras pomiędzy tymi punktami
D. stworzeniu kilku zbiorów danych o analogicznym sposobie przetwarzania i wykorzystaniu ich do przeprowadzenia testu
Istnieje wiele podejść do testowania jednostkowego, jednak nie każde z nich odnosi się do analizy ścieżek. Testowanie wartości brzegowych, które polega na sprawdzaniu skrajnych wartości danych wejściowych, jest istotnym procesem, ale nie jest to równoznaczne z analizą ścieżek. Wartości brzegowe koncentrują się na ekstremalnych przypadkach, a nie na logicznych ścieżkach, które kod może przyjąć, co sprawia, że jest to inne podejście do zapewnienia jakości oprogramowania. Kolejnym wynikiem nieporozumienia w kontekście analizy ścieżek jest testowanie obiektów pod kątem inicjacji i zwolnienia pamięci. To zagadnienie dotyczy zarządzania pamięcią, co jest innym aspektem testowania. Ważne jest, aby pamiętać, że analiza ścieżek koncentruje się na przepływie sterowania w programie, a nie na zarządzaniu pamięcią, które jest kluczowe, ale w zupełnie innym kontekście. Wreszcie, tworzenie zbiorów danych o podobnym sposobie przetwarzania i ich użycie do testów to technika, która również nie odnosi się bezpośrednio do analizy ścieżek, lecz do testowania danych. Problem z tym podejściem polega na tym, że niekoniecznie odzwierciedla ono złożoność logiki aplikacji i może prowadzić do pominięcia krytycznych ścieżek w kodzie. Zrozumienie różnicy pomiędzy tymi podejściami jest kluczowe dla skutecznego testowania oprogramowania.

Pytanie 15

Która z zasad walidacji stron internetowych jest niepoprawna?

A. Jeżeli w instrukcji stosuje się kilka atrybutów, ich kolejność powinna odpowiadać porządkom alfabetycznym, np. <img alt="...." src="...." />
B. Wyłączanie znaczników powinno następować w odwrotnej kolejności do ich włączania, np. <p>....<big>...</big></p>
C. Znaczniki, poza tymi samozamykającymi się, funkcjonują aż do momentu ich zakończenia znakiem '/', np. <p>...</p>
D. W znacznikach nie zachodzi rozróżnienie pomiędzy dużymi a małymi literami, np. <p> i <P> są tym samym znacznikiem
Kolejność atrybutów w znacznikach HTML nie ma znaczenia, co oznacza, że ich uporządkowanie w porządku alfabetycznym jest błędnym podejściem. W praktyce oznacza to, że atrybuty takie jak 'alt', 'src', 'title' mogą być zdefiniowane w dowolnej kolejności, o ile są poprawnie sformułowane. Jednakże, ze względów na czytelność kodu, warto stosować jakąś konsekwentną metodę sortowania atrybutów. W przypadku znaczników obrazków, na przykład, popularne jest zaczynanie od 'alt', następnie 'src', a potem 'title'. Ważne jest również, aby atrybuty były zgodne z wytycznymi W3C oraz WCAG, co zapewnia dostępność treści dla wszystkich użytkowników, w tym osób z niepełnosprawnościami. Stosowanie poprawnych atrybutów i ich odpowiedniego umiejscowienia jest kluczowym elementem pisania semantycznego i zgodnego z standardami HTML, co wpływa na poprawne wyświetlanie strony w różnych przeglądarkach oraz na jej optymalizację SEO.

Pytanie 16

W jakim przypadku w JavaScript warunek jest spełniony, jeśli zmienna x przyjmuje wartość

if ((!isNaN(x)) && (x > 0))
A. pusty ciąg znaków
B. wszelką dodatnią wartość liczbową
C. nie-liczbową wartość
D. wszelką całkowitą wartość liczbową
W przypadku gdy zmienna x przechowuje pusty napis warunek w JavaScript if (!isNaN(x) && x>0) nie będzie prawdziwy ponieważ pusty napis nie zostanie zinterpretowany jako liczba isNaN('') zwraca false ale dodatkowy warunek x>0 nie zostanie spełniony ponieważ pusty napis nie jest większy od zera Z kolei wartość nie liczbowa spowoduje że isNaN(x) zwróci true co oznacza że !isNaN(x) będzie false W ten sposób wartość nie liczbowa również nie spełni warunku Ponadto jeśli zmienna x przechowuje dowolną całkowitą wartość liczbową nie ma gwarancji że będzie ona dodatnia Może być zerem lub ujemna co nie spełni drugiego warunku x>0 Dlatego kluczowe jest zrozumienie że warunek ten weryfikuje zarówno numeryczność jak i dodatniość wartości co jest częstym przypadkiem w aplikacjach wymagających precyzyjnej walidacji danych użytkownika Zamieszanie może wynikać z błędnego rozumienia jak JavaScript traktuje różne typy danych i wartości w kontekście operacji logicznych oraz jak ma miejsce konwersja typów podczas porównań logicznych Dlatego ważne jest aby programiści mieli silne podstawy w zrozumieniu tych mechanizmów aby unikać błędów logicznych które mogą prowadzić do nieprzewidywalnego działania aplikacji Zrozumienie tych aspektów pozwala na pisanie bardziej odpornych i bezpiecznych aplikacji co jest istotne w profesjonalnej praktyce programistycznej

Pytanie 17

Funkcja CONCAT() w SQL służy do

A. usuwania określonego tekstu
B. uzyskiwania podłańcucha ze wskazanego tekstu
C. przycinania tekstu do wyświetlenia
D. łączenia tekstów do wyświetlenia
Funkcja CONCAT() w języku SQL jest używana do łączenia dwóch lub więcej ciągów tekstowych w jeden. To niezwykle przydatne narzędzie, które pozwala na tworzenie bardziej złożonych danych wyjściowych, na przykład w raportach lub podczas generowania dynamicznych wartości w zapytaniach. Umożliwia to efektywną manipulację danymi tekstowymi, co jest kluczowe w wielu aplikacjach biznesowych, gdzie często zachodzi potrzeba scalania imion i nazwisk, adresów czy jakichkolwiek innych pól tekstowych. Przykładowo, używając CONCAT('Jan', ' ', 'Kowalski'), otrzymamy 'Jan Kowalski', co pokazuje, jak prosto można połączyć różne elementy w jedną całość. Warto pamiętać, że w przypadku, gdy którykolwiek z argumentów CONCAT() jest wartością NULL, zwracana jest wartość NULL. Dlatego, aby uniknąć tego problemu, programiści często stosują funkcję COALESCE(), aby zastąpić NULL pustym ciągiem przed jego połączeniem. Dobrą praktyką jest również używanie funkcji CONCAT() w kontekście formatowania wyników zapytań, co zwiększa czytelność i użyteczność danych dla końcowego użytkownika.

Pytanie 18

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 chroniony przed nieautoryzowanymi działaniami, np. dzieleniem przez zero
C. posiada odpowiednie funkcje
D. jest właściwie opisany w dokumentacji
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 19

Jakie polecenie należy zastosować, aby wysłać dane przy pomocy funkcji mysqli_query() w skrypcie PHP, który dodaje informacje z formularza umieszczonego na stronie internetowej do bazy danych?

A. INSERT INTO
B. ALTER
C. UPDATE
D. SELECT
Odpowiedź 'INSERT INTO' jest poprawna, ponieważ jest to standardowa kwerenda SQL używana do wstawiania nowych rekordów do tabel w bazie danych. W kontekście PHP i funkcji mysqli_query(), wstawianie danych z formularza zazwyczaj obejmuje przygotowanie kwerendy, która zawiera instrukcję INSERT INTO wraz z nazwą tabeli oraz danymi, które mają zostać dodane. Na przykład, jeśli mamy formularz z polami 'imie' i 'nazwisko', kwerenda mogłaby wyglądać następująco: 'INSERT INTO uzytkownicy (imie, nazwisko) VALUES (?, ?)'. Użycie znaków zapytania (?) jest zgodne z najlepszymi praktykami, ponieważ pozwala na bezpieczne wprowadzenie danych, chroniąc aplikację przed atakami SQL Injection. Dobrą praktyką jest również używanie PDO lub MySQLi z przygotowanymi zapytaniami, co zwiększa bezpieczeństwo oraz efektywność kodu. W ten sposób można skutecznie wstawiać dane do bazy danych, zachowując przy tym standardy programistyczne.

Pytanie 20

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

A. <br />
B. </br/>
C. <br> </br>
D. </ br>
Odpowiedź <br /> jest prawidłowym zapisem samozamykającego się znacznika w standardzie XHTML. XHTML, czyli eXtensible HyperText Markup Language, wymaga, aby znaczniki były poprawnie zamknięte. W przypadku znaczników, które nie mają zawartości, jak <br />, stosuje się specjalną składnię. Oznaczenie <br /> wskazuje na przełamanie linii w dokumencie HTML. Ważne jest, aby podać ukośnik przed zakończeniem znacznika, co jest zgodne z zasadami XHTML. Przykładowo, w dokumentach XHTML, prawidłowe użycie <br /> może wyglądać tak: <p>Tekst przed łamaniem linii.<br />Tekst po łamaniu linii.</p>. Przestrzeganie tych zasad zapewnia, że dokumenty będą poprawnie interpretowane przez przeglądarki oraz będą zgodne z standardami W3C, co jest kluczowe dla zachowania wysokiej jakości kodu oraz jego dostępności.

Pytanie 21

Przy edytowaniu obrazu w programie graficznym rastrowym należy usunąć kolory z obrazu, aby uzyskać jego wersję w skali szarości. Jaką funkcję można zastosować, aby osiągnąć ten efekt?

A. desaturacji
B. filtru rozmycia
C. kadrowania
D. szumu RGB
Filtr rozmycia, szum RGB oraz kadrowanie to techniki, które nie służą do usuwania kolorów z obrazu, co czyni je nieodpowiednimi w kontekście uzyskiwania odcieni szarości. Rozmycie, które jest często stosowane do wygładzania krawędzi i redukcji szumów w obrazach, nie wpływa na kolorystykę, a jedynie na ostrość detali. Stosowanie filtru rozmycia w nadmiarze może prowadzić do utraty ważnych informacji wizualnych, co w kontekście edycji nie jest pożądane. Szum RGB jest techniką wprowadzania losowych danych kolorystycznych, która może być użyta do generowania efektów specjalnych, ale nie ma zastosowania w procesie desaturacji, gdyż zamiast eliminować kolory, może je wprowadzać. Kadrowanie jest natomiast procesem przycinania obrazu do wybranego formatu, co również nie ma związku z usuwaniem kolorów, a bardziej z kompozycją wizualną. Typowym błędem myślowym jest założenie, że każdy proces edycji obrazu może być użyty zamiennie. Kluczowe jest zrozumienie, że różne techniki służą różnym celom i wybór odpowiedniej metody powinien być oparty na zamierzeniach artystycznych oraz technicznych wymogach projektu.

Pytanie 22

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

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

Pytanie 23

Jaki jest cel funkcji napisanej w PHP?

function fun1($liczba)
{
  if($liczba % 2 == 0)
    return 1;

  return 0;
}
A. Zwrócenie wartości 0, gdy liczba jest parzysta
B. Wypisanie liczby nieparzystej
C. Wypisanie liczby parzystej
D. Zwrócenie wartości 1, gdy liczba jest parzysta
Funkcja w języku PHP została zaprogramowana w taki sposób, aby najpierw sprawdzić, czy podana liczba jest parzysta, używając operatora modulo (%). Operacja $liczba % 2 == 0 sprawdza resztę z dzielenia przez 2, która dla liczb parzystych wynosi 0. Jeśli warunek jest spełniony, funkcja natychmiast zwraca wartość 1, co oznacza, że liczba jest parzysta. Taki sposób kodowania jest wydajny, ponieważ funkcja zakończy działanie natychmiast po spełnieniu warunku, bez dalszego przetwarzania. Jest to dobry przykład stosowania operacji warunkowych w funkcjach, co jest zgodne z dobrymi praktykami programistycznymi, zwłaszcza gdy zależność logiczna jest prosta i może być szybko zidentyfikowana. Takie funkcje często wykorzystywane są w systemach walidacji danych, gdzie szybkie potwierdzenie poprawności danych jest kluczowe dla wydajności całego systemu. Pozwala również na łatwe rozszerzenie logiki, jeśli w przyszłości zajdzie taka potrzeba.

Pytanie 24

W formularzu, wartości z pola input o typie number zostały przypisane do zmiennej a, a następnie przetworzone w skrypcie JavaScript w pokazany sposób. Jaki typ będzie miała zmienna x?

var x = parseInt(a);
A. NaN
B. liczbowy, całkowity
C. napisowy
D. zmiennoprzecinkowy
Funkcja parseInt() w JavaScript jest super przydatna, bo pozwala zamienić ciąg znaków na liczbę całkowitą. Jak masz zmienną a, która bierze dane z inputu typu number, to parseInt() łapie te liczby i wyrzuca wszystko, co nie jest cyfrą. Dzięki temu dostajesz liczby całkowite. Warto wiedzieć, że ta funkcja nie zaokrągla wyników, tylko obcina część dziesiętną. To świetna opcja, gdy potrzebujesz tylko całkowitych wartości. parseInt() dobrze działa w programowaniu – często wykorzystuje się go do walidacji i manipulacji liczbami. Z mojego doświadczenia, kiedy pracujesz z różnymi typami danych, musisz zadbać, żeby przekształcenia były na miejscu, bo to bardzo ważne dla aplikacji. Użycie parseInt() jest zgodne z zasadami ECMAScript, co oznacza, że działa w różnych środowiskach JavaScript. Przykładem dobrego zastosowania są aplikacje webowe, gdzie często potrzebujesz liczb całkowitych, na przykład w kalkulatorach czy formularzach z wyborem ilości produktów.

Pytanie 25

W języku JavaScript zdefiniowano następującą funkcję:

function fun1(f) {
    if (f < 0) f = f * (-1);
    return f;
}
Jej celem jest:
A. Wypisać wartość bezwzględną argumentu f
B. Wypisać wartość odwrotną do argumentu f
C. Zwrócić wartość odwrotną do argumentu f
D. Zwrócić wartość bezwzględną argumentu f
Niepoprawne odpowiedzi wynikają z niepełnego zrozumienia funkcji i jej założeń. Wypisanie wartości bezwzględnej z f sugerowałoby że funkcja korzysta z mechanizmu wyjściowego takiego jak console.log co nie ma miejsca w tym przypadku. Funkcja jedynie zwraca wynik za pomocą return a nie wypisuje go na konsolę. Zwrócenie wartości odwrotnej do f oznaczałoby że funkcja miałaby inny cel: przekształcenie liczby na jej odwrotność czyli wartość 1/f co wymagało by dodatkowej logiki i warunkowania aby uniknąć dzielenia przez zero. Podobnie wypisanie wartości odwrotnej do f również wskazywałoby na potrzebę użycia mechanizmu wyjściowego a nie tylko return. Kluczowym błędem w takich rozumowaniach jest nieodróżnianie funkcji zwracających wartość od tych które wypisują wynik oraz niedocenienie znaczenia przekształcania wartości co jest fundamentem programowania funkcyjnego. Dobre praktyki programistyczne wymagają jasno zdefiniowanego celu funkcji co w tym przypadku jest poprawnie zrealizowane poprzez zwracanie wartości bezwzględnej co jest częstym i użytecznym wzorcem w wielu zastosowaniach praktycznych.

Pytanie 26

W jakiej technologii nie zachodzi możliwość przetwarzania danych wprowadzanych przez użytkowników na stronach internetowych?

A. JavaScript
B. CSS
C. AJAX
D. PHP
CSS (Cascading Style Sheets) to język stylów, który służy do opisywania wyglądu i formatu dokumentów HTML. Jego głównym celem jest kontrolowanie układu, kolorów, czcionek oraz innych aspektów wizualnych strony internetowej. CSS nie ma możliwości przetwarzania danych wprowadzanych przez użytkowników, gdyż nie posiada funkcji logiki programistycznej ani operacji na danych. Przykładowo, CSS może zmieniać kolor tła lub rozmiar tekstu, ale nie może zbierać informacji z formularzy ani reagować na interakcje użytkownika w sposób, w jaki robią to języki programowania takie jak JavaScript czy PHP. Może to prowadzić do mylnych przekonań, że CSS jest bardziej wszechstronny, niż jest w rzeczywistości, jednak jego zastosowanie ogranicza się wyłącznie do aspektów stylistycznych. W praktyce, aby przetwarzać dane użytkownika, niezbędne są inne technologie, które mogą współpracować z CSS, ale same w sobie nie są w stanie tego zrobić.

Pytanie 27

W katalogu www znajdują się podkatalogi html oraz styles, w których umieszczone są pliki o rozszerzeniu html oraz pliki z rozszerzeniem css. Aby dołączyć styl.css do pliku HTML, należy zastosować

A. <link rel="Stylesheet" type="text/css" href="/style/styl.css" />
B. <link rel="Stylesheet" type="text/css" href="styl.css" />
C. <link rel="Stylesheet" type="text/css" href="../style/styl.css" />
D. <link rel=" Stylesheet" type="text/css" href="www/style/styl. css" />
Poprawna odpowiedź to <link rel="Stylesheet" type="text/css" href="../style/styl.css" />. Użycie tej ścieżki względnej jest kluczowe, ponieważ wskazuje na lokalizację pliku styl.css w stosunku do pliku HTML, w którym jest osadzony. Folder 'www' zawiera podfoldery 'html' oraz 'style', a aby poprawnie zaadresować plik styl.css, który jest w folderze 'style', musimy wyjść z folderu 'html' (stąd '../') i następnie wejść do folderu 'style', gdzie znajduje się plik styl.css. W praktyce jest to zgodne z dobrą praktyką organizacji plików w projektach webowych, ponieważ ułatwia zarządzanie i lokalizowanie zasobów. Warto również zauważyć, że poprawne wskazanie ścieżki do plików CSS jest niezbędne dla prawidłowego renderowania stylów na stronie, co wpływa na jej wygląd i użytkowalność. Wszyscy deweloperzy front-end powinni być świadomi znaczenia dokładnego wskazywania ścieżek oraz stosować się do konwencji dotyczących organizacji struktur plików w projekcie.

Pytanie 28

Wskaż prawdziwe stwierdzenie dotyczące polecenia:

CREATE TABLE IF NOT EXISTS adres (ulica VARCHAR(70) CHARACTER SET utf8);
A. IF NOT EXISTS stosuje się opcjonalnie, aby upewnić się, że w bazie danych nie istnieje już taka tabela.
B. Do tabeli nie można wprowadzać nazw ulic zawierających polskie znaki.
C. Rekordem tabeli nie może być '3 MAJA'.
D. Klauzula CHARACTER SET utf8 jest obowiązkowa.
Dobrze, że wybrałeś właściwą odpowiedź! Polecenie CREATE TABLE IF NOT EXISTS jest rzeczywiście używane w SQL, aby stworzyć tabelę tylko wtedy, gdy nie istnieje ona już w bazie danych. To jest bardzo praktyczne narzędzie, które pozwala uniknąć błędów, gdy próbujemy stworzyć tabelę, która już istnieje. Jest to zgodne z dobrymi praktykami zarządzania danymi i jest oparte na standardach SQL. Dodatkowo, warto pamiętać, że klauzula CHARACTER SET utf8, chociaż nie jest obowiązkowa, pozwala na przechowywanie znaków specjalnych, w tym polskich. Jest to ważne, gdy pracujemy z danymi, które zawierają różne zestawy znaków. Dlatego, nawet jeśli nie jest to wymagane, często jest to dobra praktyka. Podobnie, warto pamiętać, że typ danych VARCHAR(70) pozwala na przechowywanie dowolnych ciągów znaków, w tym dat i nazw, więc nie ma żadnych ograniczeń co do tego, jakie informacje mogą być przechowywane w tabeli.

Pytanie 29

Skrypt w języku JavaScript, który zajmuje się płacami pracowników, ma na celu stworzenie raportu dla osób zatrudnionych na umowę o pracę, które otrzymują wynagrodzenie w przedziale 4000 do 4500 zł, w tym przedziale obustronnie domkniętym. Jakie jest kryterium do wygenerowania raportu?

A. umowa == 'praca' || (pensja >= 4000 && pensja <= 4500)
B. umowa == 'praca' || (pensja >= 4000 || pensja <= 4500)
C. umowa == 'praca' && (pensja >= 4000 || pensja <= 4500)
D. umowa == 'praca' && (pensja >= 4000 && pensja <= 4500)
Wielu uczniów ma kłopoty z poprawnym rozumieniem operatorów logicznych i jak je łączyć. Na przykład, odpowiedź umowa == 'praca' || (pensja >= 4000 || pensja <= 4500) jest niepoprawna, bo mówi, że wystarczy spełnić chociaż jeden z warunków, co nie zgadza się z tym, czego chcieliśmy. W tej sytuacji, jeśli pracownik nie ma umowy o pracę, a jego pensja wynosi 5000 zł, to raport i tak może się wygenerować, co jest sprzeczne z zamysłem pytania. Inny błąd to użycie '||' w odpowiedzi umowa == 'praca' && (pensja >= 4000 || pensja <= 4500) – to znowu prowadzi do nieprawidłowego wniosku. Gdy pensja wynosi 3500 zł, raport ma szansę na generację, mimo że nie spełnia wymogu dotyczącego płac. W odpowiedzi umowa == 'praca' || (pensja >= 4000 && pensja <= 4500) też widać błędne zrozumienie operatorów, co prowadzi do sytuacji, w której raport może być generowany dla pracowników z pensjami poniżej 4000 zł, tylko dlatego, że mają umowę o pracę. Kluczowy błąd to brak dostrzegania, że w takich sytuacjach wszystkie warunki muszą być spełnione, co oznacza, że trzeba używać operatora '&&'. Zrozumienie operatorów logicznych to podstawa w programowaniu i bardzo ważny element przy tworzeniu skutecznych skryptów.

Pytanie 30

Na tabeli dania, której wiersze zostały pokazane poniżej, wykonano przedstawioną kwerendę:

SELECT * FROM dania WHERE typ < 3 AND cena < 30 LIMIT 5;
Ile wierszy wybierze ta kwerenda?
idtypnazwacena
11Gazpacho20
21Krem z warzyw25
31Gulaszowa ostra30
42Kaczka i owoc30
52Kurczak pieczony40
63wierzbowy przysmak35
72Mintał w panierce30
82Alle kotlet30
93Owoce morza20
103Grzybki, warzywka, sos15
113Orzechy i chipsy10
123Tatar i jajo15
133Bukiet warzyw10
A. 5
B. 2
C. 13
D. 8
Twoja odpowiedź jest jak najbardziej trafna. To zapytanie SQL, które mamy, wybiera z tabeli 'dania' te wiersze, gdzie 'typ' jest mniejszy niż 3, a 'cena' nie przekracza 30. Wiem, że dodanie 'LIMIT 5' może wydawać się istotne, ale w tym przypadku tak naprawdę nie wpływa to na wynik, bo tylko jeden wiersz pasuje – danie 'Gazpacho'. Warto pamiętać, że w SQL, gdy używamy warunku 'WHERE', łączymy je z operatorem AND, co oznacza, że muszą być spełnione jednocześnie. Klauzula 'LIMIT' jest przydatna w różnych sytuacjach, ale tutaj, nawet z ograniczeniem do 5, i tak mamy tylko jeden wynik.

Pytanie 31

Dla przedstawionego fragmentu dokumentu HTML:

<div class="menu"></div>
zdefiniowano formatowanie CSS selektora klasy "menu" tak, aby kolor tła bloku był zielony. Która definicja stylu CSS odpowiada temu formatowaniu?
A. #menu { background-color: rgb(0,255,0); }
B. div.menu { background-color: green; }
C. menu { background-color: rgb(0,255,0); }
D. div:menu { color: green; }
Podstawowy problem w niepoprawnych odpowiedziach wynika z mylenia różnych rodzajów selektorów CSS: typu, klasy i identyfikatora, a także pseudo-klas. W HTML mamy wyraźnie wskazany element `<div class="menu"></div>`. Atrybut `class` mówi wprost, że do stylowania należy użyć selektora klasy, czyli zapisu z kropką: `.menu` lub bardziej precyzyjnie `div.menu`. Użycie dwukropka w zapisie `div:menu` wygląda jak próba zastosowania pseudo-klasy, ale `menu` nie jest żadną standardową pseudo-klasą CSS. Pseudo-klasy to np. `:hover`, `:active`, `:first-child`. Przeglądarka taki selektor po prostu zignoruje, więc styl się nie zastosuje. Kolejnym typowym nieporozumieniem jest zamiana klasy na identyfikator. Znak `#` w CSS oznacza selektor id, więc `#menu` pasowałby do elementu `<div id="menu">`, a nie do `<div class="menu">`. Id i klasa to dwie różne rzeczy: id powinno być unikalne w całym dokumencie, a klasę można stosować wielokrotnie. W realnych projektach front-endowych mieszanie tych dwóch mechanizmów prowadzi do chaosu w kodzie i trudnych do wykrycia błędów, dlatego warto od początku rozróżniać `.` od `#` bardzo świadomie. Pojawia się też zapis `menu { background-color: rgb(0,255,0); }`. Taki selektor odnosi się do znacznika HTML o nazwie `menu`, czyli do `<menu>...</menu>`. Istnieje taki tag w HTML5, ale w pytaniu nie ma go w ogóle, jest zwykły `<div>`. Sam fakt, że klasa nazywa się „menu”, nie oznacza, że selektor typu `menu` będzie pasował. CSS nie „zgaduje” naszych intencji, tylko ściśle dopasowuje selektor do struktury dokumentu. To częsty błąd myślowy: patrzymy na nazwę klasy i podświadomie traktujemy ją jak nazwę znacznika. Moim zdaniem kluczowa lekcja z tego pytania jest taka: najpierw patrzymy na HTML i dokładnie identyfikujemy, czy mamy do czynienia z klasą (`class`), identyfikatorem (`id`), czy konkretnym tagiem (`div`, `p`, `nav` itd.). Dopiero potem dobieramy odpowiedni selektor CSS: `.` dla klasy, `#` dla id, samą nazwę znacznika dla selektora typu. Takie systematyczne podejście bardzo ułatwia dalszą pracę z arkuszami stylów i pomaga budować czytelne, skalowalne style zgodnie z dobrymi praktykami branżowymi.

Pytanie 32

Która z definicji CSS określa formatowanie nagłówka h1: tekst nadkreślony, z odstępami między wyrazami 10 px i czerwonym kolorem tekstu?

h1{
  text-decoration: overline;
  word-spacing: 10px;
  color: red;
}                       A.

h1{
  text-decoration: overline;
  letter-spacing: 10px;
  color: red;
}                       B.

h1{
  text-transform: none;
  line-height: 10px;
  color: rgb(255,0,0);
}                       C.

h1{
  text-decoration: underline;
  line-height: 10px;
  color: rgb(255,0,0);
}                       D.
A. B.
B. A.
C. D.
D. C.
Niektóre z odpowiedzi, które wybrałeś, zawierają nieprawidłowe pojęcia i błędy w zrozumieniu CSS. Polecenie 'letter-spacing' stosowane w odpowiedzi B jest służy do określania odległości między literami, nie między wyrazami. Jest to różnica kluczowa, która ma duży wpływ na wygląd i czytelność tekstu. Odpowiedź C nie zawiera żadnego z wymaganych stylów, co pokazuje brak zrozumienia dla zadania. Używanie 'underline' zamiast 'overline', jak to miało miejsce w odpowiedzi D, prowadzi do podkreślenia tekstu zamiast nadkreślenia. To ilustruje błąd w zrozumieniu różnych stylów tekstu dostępnych w CSS. W codziennej praktyce, zrozumienie różnicy między tymi dwoma stylami jest kluczowe dla efektywnego formatowania tekstu. W CSS, jest ważne aby dokładnie rozumieć, co każde polecenie robi, oraz jak te polecenia wpływają na ostateczny wygląd strony.

Pytanie 33

Wskaż poprawną definicję stylu CSS dla przycisku typu submit o właściwościach: czarny kolor tła, brak obramowania, marginesy wewnętrzne 5 px.

input[type=submit] {
  background-color: #000000;
  border: none;
  padding: 5px;
}                         A.

input[type=submit] {
  background-color: #ffffff;
  border: none;
  padding: 5px;
}                         B.

input=submit {
  background-color: #000000;
  border: none;
  margin: 5px;
}                         C.

input=submit {
  background-color: #000000;
  border: 0px;
  margin: 5px;
}                         D.
A. C.
B. B.
C. A.
D. D.
Dobrze! Wybrałeś prawidłową odpowiedź. Odpowiedź A jest poprawna, ponieważ to styl CSS dla przycisku typu submit spełnia wszystkie podane wymagania. Wygląda to mniej więcej tak: 'input[type='submit'] { background-color: black; border: none; padding: 5px; }'. 'input[type='submit']' to selektor, który wskazuje elementy wejściowe o typie 'submit'. Następnie, wewnątrz nawiasów klamrowych, mamy trzy deklaracje. 'background-color: black;' określa, że przycisk ma czarne tło. 'border: none;' usuwa wszelkie obramowanie. 'padding: 5px;' ustawia marginesy wewnętrzne na 5 pikseli. Pisanie czystego i efektywnego kodu CSS jest kluczową umiejętnością dla każdego doświadczonego dewelopera front-endu. Dobrze napisane style CSS mogą znacznie poprawić wydajność strony internetowej i ułatwić jej utrzymanie.

Pytanie 34

Jakie zadanie wykonuje funkcja agregująca AVG w poniższym zapytaniu?

SELECT AVG(cena) FROM uslugi;
A. sprawdzić, ile usług znajduje się w tabeli
B. obliczyć średnią arytmetyczną cen wszystkich usług
C. zsumować ceny wszystkich usług
D. wyznaczyć największą cenę za usługi
Dobra robota z odpowiedzią! Funkcja AVG w SQL służy do obliczania średniej z wartości w danej kolumnie, tutaj mamy kolumnę 'cena' w tabeli 'uslugi'. Korzystając z AVG, możesz łatwo dowiedzieć się, jaki jest średni koszt usług, co jest mega pomocne w analizowaniu wydatków. Moim zdaniem, średnia arytmetyczna ma spore znaczenie w raportach finansowych, przy podejmowaniu decyzji w biznesie i śledzeniu trendów rynkowych. Fajnie jest też wiedzieć, że ta funkcja ignoruje wartości NULL, co sprawia, że wyniki są bardziej wiarygodne, kiedy nie wszystkie usługi mają podane ceny. Warto pamiętać, że najlepiej używać funkcji agregujących z klauzulami GROUP BY, żeby móc dokładniej analizować, na przykład średnie ceny w różnych kategoriach usług.

Pytanie 35

Jaką operację trzeba wykonać podczas edytowania zdjęcia w programie graficznym, aby zamienić białe tło na przezroczystość?

A. Zmienić saturację obrazu
B. Skadrować obraz
C. Maksymalnie zmniejszyć jasność
D. Dodać kanał alfa
Aby zamienić białe tło na przezroczystość w edytorze grafiki, kluczowym krokiem jest dodanie kanału alfa do obrazu. Kanał alfa jest używany do zarządzania przezroczystością pikseli w obrazie rastrowym, co pozwala na zachowanie tylko tych elementów, które mają być widoczne. Proces ten jest szczególnie istotny przy pracy z grafiką stosowaną w projektach multimedialnych, takich jak strony internetowe, animacje czy prezentacje. Po dodaniu kanału alfa, można użyć narzędzi selekcji, takich jak różdżka czy lasso, aby zaznaczyć obszar białego tła i usunąć go, co skutkuje uzyskaniem przezroczystości. Dobrą praktyką jest również zapisanie pliku w formacie obsługującym przezroczystość, jak PNG, co zapewnia, że efekt końcowy zostanie zachowany, a tło będzie rzeczywiście przezroczyste. Przykład zastosowania można znaleźć w tworzeniu grafik do mediów społecznościowych, gdzie przezroczystość tła pozwala na lepsze dopasowanie elementów do różnych szablonów.

Pytanie 36

W zaprezentowanym fragmencie algorytmu użyto

Ilustracja do pytania
A. dwie pętle.
B. jedną pętlę.
C. jeden blok decyzyjny.
D. trzy bloki operacyjne (procesy).
W przedstawionym fragmencie algorytmu zastosowano jedną pętlę co jest zgodne z poprawną odpowiedzią. Pętla to konstrukcja programistyczna pozwalająca wielokrotnie wykonywać fragment kodu dopóki spełniony jest określony warunek. W analizowanym schemacie widzimy jednokrotną pętlę oznaczoną powrotem do wcześniejszego punktu co jest charakterystyczne dla takich struktur. Najczęściej używane pętle to for while i do-while różniące się sposobem sprawdzania warunku początkowego. Pętle są fundamentalne w algorytmice i pozwalają na realizację złożonych operacji takich jak iteracja po tablicach czy przetwarzanie danych wejściowych. Ich zastosowanie zwiększa efektywność kodu i upraszcza jego strukturę. Dobrą praktyką jest dbanie o czytelność pętli i unikanie skomplikowanych zależności co poprawia zrozumienie kodu przez innych programistów. Warto również pamiętać o zasadach optymalizacji np. minimalizowanie liczby iteracji co przekłada się na lepszą wydajność.

Pytanie 37

<?php  
$pi = 3.14;
var_dump($pi);
?>
Jakie będzie wyjście po wykonaniu przedstawionego kodu PHP?
A. int(314)
B. float(3.14)
C. string(3)
D. object(3.14)
Odpowiedź 'float(3.14)' jest poprawna, ponieważ w kodzie PHP zmienna \$pi została zainicjalizowana jako liczba zmiennoprzecinkowa z wartością 3.14. Funkcja var_dump() służy do wyświetlania typu oraz wartości zmiennej, a w przypadku liczby zmiennoprzecinkowej wynik będzie wskazywał na typ float. Warto zauważyć, że PHP automatycznie rozpoznaje typy zmiennych, a liczby zmiennoprzecinkowe są powszechnie używane w obliczeniach wymagających precyzji, takich jak matematyka finansowa czy fizyka. W kontekście programowania w PHP, dobrym zwyczajem jest korzystanie z funkcji var_dump() podczas debugowania kodu, aby mieć jasny obraz typów danych i ich wartości w danym momencie. W praktyce, dobrze jest również implementować typowanie w PHP 7 i nowszych, co umożliwia lepszą kontrolę nad typami zmiennych, co z kolei prowadzi do bardziej stabilnego i czytelnego kodu. Warto także zwrócić uwagę na zasadę, że odpowiednie typy danych są kluczowe dla wydajności i niezawodności aplikacji, co czyni tę wiedzę szczególnie istotną dla każdego programisty."

Pytanie 38

Fragment kwerendy SQL zaprezentowany w ramce ma na celu uzyskanie

SELECT COUNT(wartosc) FROM ...
A. liczbę kolumn.
B. liczbę wierszy.
C. średnią wartość w kolumnie wartosc.
D. sumę wartości w kolumnie wartosc.
Instrukcja COUNT w kwerendzie SQL służy do zliczania liczby wierszy w tabeli, które spełniają określone kryteria. Wyrażenie SELECT COUNT(wartosc) FROM ... zlicza wiersze, które mają niepustą wartość w kolumnie wartosc. Funkcja COUNT jest jedną z funkcji agregujących w SQL, które pozwalają na wykonywanie operacji na zestawach danych. Zastosowanie tej funkcji jest szczególnie istotne w sytuacjach, gdy potrzebujemy szybko uzyskać informację o liczebności danych, co jest kluczowe w analizie danych oraz raportowaniu. Warto zauważyć, że COUNT(*) policzyłoby wszystkie wiersze, niezależnie od tego, czy zawierają wartości NULL, natomiast COUNT(kolumna) ignoruje wiersze z wartościami NULL w podanej kolumnie. To rozróżnienie jest kluczowe w optymalizacji zapytań oraz w zapewnieniu dokładności wyników. W praktyce biznesowej, zliczanie wierszy może być wykorzystywane do śledzenia liczby zamówień, ilości produktów w magazynie oraz innych wskaźników operacyjnych, co sprawia, że funkcja COUNT jest podstawowym narzędziem każdego analityka danych.

Pytanie 39

ID_PracownikaNazwiskoImięStanowiskoWynagrodzenie
1KowalskiKrzysztofkasjer3215,76
2NowakAntonikierownik5350,00
3ZającAlicjaksięgowy4568,70
4KrólWitoldkasjer3045,00
5NowikGrzegorzkasjer2750,65
6KotulskiAndrzejkierowca3467,00
7TutkaKatarzynakierownik4935,33
8PoradaJakubmagazynier3321,56
Które zapytanie SQL należy wykonać na tabeli Pracownicy, aby otrzymać średnie wynagrodzenie dla pracownika na stanowisku kasjer?
A. SELECT SUM(*) FROM Pracownicy AND Stanowisko= 'kasjer';
B. SELECT AVG(Wynagrodzenie) FROM Pracownicy WHERE Stanowisko='kasjer';
C. SELECT SREDNIA(Wynagrodzenie) AND Stanowisko='kasjer' FROM Pracownicy;
D. SELECT AVG(kasjer.Wynagrodzenie) FROM Pracownicy;
Poprawne zapytanie to SELECT AVG(Wynagrodzenie) FROM Pracownicy WHERE Stanowisko='kasjer';, bo dokładnie robi to, o co chodzi w treści zadania. Funkcja AVG() w SQL jest standardową funkcją agregującą, która liczy średnią arytmetyczną z wartości liczbowych w danej kolumnie. W tym przypadku kolumna to Wynagrodzenie, czyli kwoty wypłat, a klauzula WHERE Stanowisko='kasjer' zawęża zestaw rekordów tylko do pracowników na stanowisku kasjera. Najpierw więc silnik bazy danych filtruje wiersze (kasjerów), a dopiero potem na tej ograniczonej grupie liczy średnią. To jest bardzo typowy i poprawny schemat pracy z danymi w SQL: najpierw filtrujesz, potem agregujesz. Moim zdaniem warto zauważyć, że taka konstrukcja jest uniwersalna – w praktyce w firmach często liczy się średnie wynagrodzenia dla różnych stanowisk, działów, lokalizacji. Wtedy zmienia się tylko warunek w klauzuli WHERE. Można też pójść krok dalej i użyć GROUP BY, np. SELECT Stanowisko, AVG(Wynagrodzenie) FROM Pracownicy GROUP BY Stanowisko; żeby dostać średnie dla wszystkich stanowisk naraz, co jest wygodne np. w raportach HR. To, co masz w odpowiedzi, to w zasadzie „wersja jednostanowiskowa” takiego raportu. Ważna dobra praktyka: zawsze filtrujemy w klauzuli WHERE, a nie próbujemy wpychać warunków do funkcji agregującej. Dzięki temu zapytanie jest czytelne, zgodne ze standardem SQL i dobrze optymalizowane przez silnik bazy. W realnych projektach staramy się też nadać alias wynikom agregacji, np. SELECT AVG(Wynagrodzenie) AS SredniaKasjera FROM Pracownicy WHERE Stanowisko='kasjer';, żeby w raportach i w kodzie aplikacji od razu było wiadomo, co oznacza zwracana kolumna.

Pytanie 40

Proces zmierzający do osiągnięcia przez stronę internetową jak najwyższych pozycji w rankingach wyszukiwarek internetowych nosi nazwę

A. walidacji HTML.
B. responsywności.
C. pozycjonowania.
D. optymalizacji wydajności.
Proces, o który chodzi w pytaniu, dotyczy bezpośrednio widoczności strony w wynikach wyszukiwania, a nie tylko jej technicznej jakości czy wyglądu. Wiele osób myli pojęcia, bo wszystkie wymienione hasła są związane z tworzeniem stron WWW, ale ich cele są inne. Walidacja HTML to sprawdzanie, czy kod strony jest zgodny ze standardami W3C. Używa się do tego np. W3C Markup Validation Service. To ważne dla poprawności, dostępności i czasem też dla późniejszego łatwiejszego pozycjonowania, ale sama walidacja nie „podciągnie” strony w wynikach Google, jeśli nie ma przemyślanej strategii SEO. To raczej fundament techniczny, a nie proces zdobywania pozycji w wyszukiwarce. Optymalizacja wydajności z kolei skupia się na szybkości ładowania strony, zużyciu zasobów serwera, kompresji grafik, cache’owaniu, minimalizacji plików CSS i JavaScript. Jasne, wyszukiwarki biorą pod uwagę performance jako czynnik rankingowy, ale jest to tylko jeden z elementów większej układanki. Samo przyspieszenie strony bez pracy nad treścią, słowami kluczowymi czy linkami nie będzie pełnym procesem pozycjonowania. Responsywność oznacza dostosowanie wyglądu i układu strony do różnych rozdzielczości i urządzeń, głównie smartfonów i tabletów. Stosuje się do tego media queries w CSS, elastyczne siatki (grid, flexbox), obrazki skalujące się do szerokości ekranu. To bardzo ważny aspekt UX i zgodności z wytycznymi Google dotyczącymi mobile‑first, ale nadal jest to tylko jeden z czynników technicznych. Typowy błąd myślowy polega na uznaniu, że jeśli strona jest poprawna, szybka i ładnie wygląda na telefonie, to „samo się wypozycjonuje”. W rzeczywistości pozycjonowanie to szersza strategia SEO, obejmująca analizę fraz kluczowych, optymalizację treści, strukturę linków wewnętrznych, pozyskiwanie linków zewnętrznych i ciągłe monitorowanie efektów. Dlatego tylko odpowiedź związana z pozycjonowaniem dokładnie oddaje sens procesu opisanego w pytaniu.