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: 1 maja 2026 11:20
  • Data zakończenia: 1 maja 2026 11:20

Egzamin niezdany

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

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Jakie metody są związane z predefiniowanym obiektem Date w języku JavaScript?

A. row()
B. getMonth() oraz getDay()
C. fromCodePoint()
D. concat() oraz pop()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku JavaScript obiekt Date jest predefiniowanym obiektem, który umożliwia operacje związane z datami i czasem. Metody getMonth() oraz getDay() są kluczowymi funkcjami, które pozwalają na uzyskanie informacji o dacie. Metoda getMonth() zwraca miesiąc danej daty, przy czym wartości są indeksowane od 0 (styczeń) do 11 (grudzień). Z kolei metoda getDay() zwraca dzień tygodnia, gdzie wartości wynoszą od 0 (niedziela) do 6 (sobota). Przykładowe użycie tych metod może wyglądać następująco: var date = new Date('2023-10-05'); var month = date.getMonth(); var day = date.getDay(); console.log(month); // 9, console.log(day); // 4. Zgodnie z dokumentacją ECMAScript, obiekt Date i jego metody są standardem w JavaScript, co czyni je niezbędnymi w programowaniu webowym oraz aplikacjach. Dzięki tym metodom programiści mogą efektywnie zarządzać datami w różnych kontekstach, od planowania wydarzeń po analizy czasowe.

Pytanie 2

Wykres słupkowy należy zapisać w formacie rastrowym tak, aby jakość jego krawędzi była jak najlepsza, również dla dużego powiększenia, unikając efektu aliasingu. Do tego celu można zastosować format

A. CDR
B. JPEG
C. PNG
D. SVG

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wybierając PNG do zapisu wykresu słupkowego w formacie rastrowym, podjąłeś technicznie uzasadnioną decyzję. PNG to format grafiki rastrowej, który umożliwia zapis obrazów bezstratnie, co jest kluczowe, kiedy zależy nam na zachowaniu ostrych krawędzi – szczególnie przy wykresach, gdzie szczegółowość i czytelność mają pierwszorzędne znaczenie. W odróżnieniu od JPEG, PNG nie stosuje kompresji stratnej, przez co nie pojawiają się charakterystyczne rozmycia czy artefakty wokół linii i tekstów. Z mojego doświadczenia, jeśli chcesz potem wykres powiększać, PNG sprawdza się znakomicie – szczególnie przy plikach przygotowanych w wysokiej rozdzielczości (np. 300 dpi lub więcej). Co ważne, PNG obsługuje przezroczystość i bez problemu radzi sobie z płaskimi kolorami oraz prostymi gradientami, więc wyniki są bardzo przewidywalne. Warto wiedzieć, że format ten jest od lat szeroko akceptowany zarówno w druku, jak i na stronach internetowych. W branży najczęściej poleca się PNG do materiałów edukacyjnych, raportów czy prezentacji, gdy liczy się precyzja i wyrazistość. To taki standardowy wybór dla wszelkich diagramów, infografik czy schematów. Oczywiście, jeśli wykres byłby w pełni wektorowy, najlepszym wyjściem byłby SVG, ale jeśli ma być rastrowy – PNG jest bez dwóch zdań najlepszy. Nawet przy dużym powiększeniu krawędzie pozostają ostre, a efekt aliasingu praktycznie nie występuje, jeśli odpowiednio dobierzesz rozdzielczość wyjściową.

Pytanie 3

W języku SQL, aby dodać atrybut klucza podstawowego do pola id w istniejącej tabeli produkt należy użyć składni

A. ALTER TABLE produkt DROP CONSTRAINT id
B. ALTER TABLE produkt ALTER COLUMN id INT
C. ALTER TABLE produkt ADD PRIMARY KEY (id)
D. ALTER TABLE produkt DROP PRIMARY KEY

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna składnia to ALTER TABLE produkt ADD PRIMARY KEY (id), bo dokładnie to polecenie dodaje do istniejącej tabeli nowy klucz podstawowy oparty na kolumnie id. Instrukcja ALTER TABLE służy do modyfikowania struktury tabeli, a klauzula ADD PRIMARY KEY definiuje ograniczenie (constraint) typu klucz podstawowy dla wskazanej kolumny lub zestawu kolumn. W praktyce oznacza to, że kolumna id musi być unikalna i nie może przyjmować wartości NULL. Silnik bazy danych (np. MySQL, PostgreSQL, SQL Server) zwykle tworzy do tego indeks typu UNIQUE, który przyspiesza wyszukiwanie po kluczu głównym. Moim zdaniem warto pamiętać, że takie polecenie będzie działać tylko wtedy, gdy dane w kolumnie id już spełniają warunki klucza podstawowego: brak duplikatów i brak wartości pustych. W realnym projekcie często robi się to w dwóch krokach: najpierw uzupełnia się brakujące wartości, usuwa lub poprawia duplikaty, a dopiero potem dodaje PRIMARY KEY. Przykładowo: ALTER TABLE produkt ADD PRIMARY KEY (id); W wielu systemach, zwłaszcza w aplikacjach webowych, kolumna id jest też często ustawiana jako AUTO_INCREMENT (MySQL) lub używa sekwencji (PostgreSQL, Oracle). Wtedy definicja tabeli przy tworzeniu może wyglądać np. tak: CREATE TABLE produkt (id INT PRIMARY KEY AUTO_INCREMENT, nazwa VARCHAR(100)); Jeśli jednak tabela już istnieje i kolumna id była zwykłą kolumną, to właśnie ALTER TABLE ... ADD PRIMARY KEY (id) jest standardowym, poprawnym sposobem nadania jej roli klucza głównego. To rozwiązanie jest zgodne z ogólną składnią SQL i dobrą praktyką modelowania relacyjnych baz danych, gdzie każda tabela powinna mieć jasno zdefiniowany klucz podstawowy, najlepiej prosty, stabilny i jednoznaczny.

Pytanie 4

Na podstawie filmu wskaż, która cecha dodana do stylu CSS zamieni miejscami bloki aside i nav, pozostawiając w środku blok section?

A. nav { float: right; } section { float: right; }
B. aside {float: left; }
C. nav { float: right; }
D. nav { float: left; } aside { float: left; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź opiera się na tym, jak działają własności float w CSS i w jakiej kolejności przeglądarka renderuje elementy blokowe. Jeśli w dokumencie HTML kolejność znaczników to np. <aside>, potem <section>, a na końcu <nav>, to bez dodatkowego stylowania wszystkie trzy ustawią się pionowo, jeden pod drugim, w tej właśnie kolejności. Dodanie float zmienia sposób, w jaki elementy „odpływają” od normalnego przepływu dokumentu i jak układają się obok siebie. W stylu nav { float: right; } section { float: right; } sprawiamy, że zarówno nav, jak i section są przesuwane do prawej krawędzi kontenera, natomiast aside (bez float) pozostaje w normalnym przepływie, czyli z lewej strony. Ponieważ przeglądarka układa elementy w kolejności występowania w kodzie, najpierw wyrenderuje aside po lewej, potem section „odpłynie” w prawo, a na końcu nav też „odpłynie” w prawo, ustawiając się po prawej stronie, ale dalej od góry niż section. Efekt wizualny jest taki, że po lewej mamy aside, po prawej nav, a section ląduje między nimi, dokładnie tak jak było pokazane na filmie. Moim zdaniem to zadanie dobrze pokazuje, że przy floatach zawsze trzeba myśleć o trzech rzeczach naraz: kolejności elementów w HTML, kierunku „pływania” (left/right) oraz o tym, które elementy pozostawiamy w normalnym przepływie. W praktyce w nowoczesnych projektach częściej używa się flexboxa albo CSS Grid do takich układów, bo są czytelniejsze i mniej problematyczne. Przykładowo, zamiast kombinować z float, można by użyć display: flex; na kontenerze i ustawić order dla aside i nav. Float nadal jednak pojawia się w starszych layoutach i w zadaniach egzaminacyjnych, więc warto dobrze rozumieć jego zachowanie, choćby po to, żeby poprawnie modyfikować istniejące style lub naprawiać „rozjechane” układy w starszych projektach.

Pytanie 5

Jakie polecenie SQL zmieni w tabeli tab wartość w kolumnie kol z Ania na Zosia?

A. UPDATE tab SET kol = 'Zosia' WHERE kol = 'Ania'
B. UPDATE tab SET kol = 'Ania' WHERE kol = 'Zosia'
C. ALTER TABLE tab CHANGE kol = 'Ania' kol = 'Zosia'
D. ALTER TABLE tab CHANGE kol = 'Zosia' kol = 'Ania'

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie SQL UPDATE tab SET kol = 'Zosia' WHERE kol = 'Ania' jest poprawne, ponieważ używa ono właściwej składni do aktualizacji wartości w istniejącej tabeli. W tym przypadku komenda ta zmienia wszystkie wystąpienia wartości 'Ania' w kolumnie 'kol' na 'Zosia'. Jest to klasyczna operacja aktualizacji, która jest szeroko stosowana w zarządzaniu bazami danych. Przykładowo, jeśli w tabeli 'tab' znajdują się rekordy przedstawiające użytkowników, a potrzebujemy zmienić imię 'Ania' na 'Zosia', to powyższa komenda wykona tę operację poprawnie. Zgodnie z zasadami dobrych praktyk, warto również przed dokonaniem aktualizacji wykonać zapytanie SELECT, aby upewnić się, jakie rekordy zostaną zmienione. Dodatkowo, do zminimalizowania ryzyka wystąpienia niezamierzonych zmian, warto przeprowadzić tę operację w kontekście transakcji, aby móc cofnąć zmiany w razie potrzeby, co jest szczególnie istotne w przypadku krytycznych danych.

Pytanie 6

W programie MS Access w ustawieniach pola klasa należy określić maskę wprowadzania danych. Jaką maskę należy ustawić, aby dane wprowadzone składały się z trzech znaków w formacie: obowiązkowa cyfra, następnie dwie obowiązkowe litery?

Ogólne
Rozmiar pola3
Format
Maska wprowadzania
Tytuł
Wartość domyślna
Reguła spr. poprawności
Tekst reguły spr. poprawności
WymaganeNie
Zerowa dł. dozwolonaTak
IndeksowaneNie
Kompresja UnicodeTak
Tryb IMEBez formantu
Tryb zdania edytora IMEBrak
Tagi inteligentne
A. 0CC
B. 0LL
C. CLL
D. 000

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W MS Access maska wprowadzania danych jest używana do kontrolowania formatu danych wprowadzanych do pola. Dla pola, w którym dane muszą mieć postać jednej cyfry, a następnie dwóch liter, odpowiednia maska to 0LL. Zero (0) oznacza, że na tej pozycji musi znajdować się cyfra i jest to wymóg obowiązkowy. Litera L oznacza, że na tej pozycji musi znajdować się litera i jest to również wymóg obowiązkowy. W ten sposób maska 0LL wymusza, aby dane były dokładnie w formacie jednej cyfry i dwóch liter. Praktyczne zastosowanie tego typu maski może być widoczne w sytuacjach, gdzie istnieje konieczność katalogowania produktów, gdzie oznaczenie musiałoby zawierać numer identyfikacyjny w postaci cyfry i skrót literowy identyfikujący kategorię. Takie podejście do formatowania danych zapewnia spójność i poprawność danych wprowadzanych do bazy, zgodnie z dobrymi praktykami zarządzania danymi, co jest kluczowe w systemach bazodanowych, gdzie dane są często przetwarzane i analizowane.

Pytanie 7

Jaką rolę odgrywa kwerenda krzyżowa w systemie baz danych MS Access?

A. Prezentuje zliczone wartości z określonego pola, organizując je w wiersze oraz kolumny
B. Eliminuje rekordy z tabel zgodnie z określonymi kryteriami
C. Zmienia już istniejące dane w tabeli
D. Dodaje do wskazanej tabeli dane z innej tabeli

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kwerenda krzyżowa w MS Access jest niezwykle przydatnym narzędziem, które umożliwia prezentację zliczonych wartości w formie tabeli przestawnej. Dzięki tej funkcji użytkownicy mogą analizować dane w sposób bardziej zrozumiały i przejrzysty, przyporządkowując wartości do odpowiednich wierszy i kolumn. Na przykład, w przypadku bazy danych sprzedaży, kwerenda krzyżowa może przedstawiać zliczenie sprzedaży według miesięcy w układzie tabelarycznym, gdzie wiersze reprezentują poszczególne miesiące, a kolumny różne kategorie produktów. To znacznie ułatwia porównania i analizę trendów. Kwerendy krzyżowe są zgodne z najlepszymi praktykami analizy danych, ponieważ pozwalają na efektywne podsumowywanie informacji i umożliwiają łatwe generowanie raportów, co jest kluczowe w procesach decyzyjnych w organizacjach. W kontekście analizy danych, warto również zwrócić uwagę na możliwość stosowania dodatkowych funkcji agregujących, takich jak SUMA, ŚREDNIA czy MAX, co zwiększa elastyczność i dokładność wyników.

Pytanie 8

Aby umożliwić wybór kilku opcji jednocześnie w rozwijanej liście formularza HTML, należy dodać atrybut do znacznika select

Ilustracja do pytania
A. value
B. disabled
C. multiple
D. size

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Atrybut multiple w znaczniku select w HTML to super sprawa, bo dzięki niemu można zaznaczyć więcej niż jedną opcję z listy rozwijalnej. To się przydaje, jak ktoś musi wybrać kilka elementów w formularzu. Jak dodasz atrybut multiple, to przeglądarka pokazuje to jako pole do wyboru, gdzie można klikać na kilka wartości za pomocą klawiszy Ctrl albo Shift. Fajnie, że ten atrybut nie wymaga żadnych dodatkowych wartości, wystarczy, że go wrzucisz do znacznika select. To zgodne z dobrymi praktykami UX, bo pozwala na większą elastyczność i interaktywność formularzy. Co więcej, nie trzeba być programistycznym guru, żeby to wdrożyć, więc każdy może to zrobić. Używa się go w różnych aplikacjach webowych, zwłaszcza tam, gdzie zbieranie danych od użytkowników w prosty i przejrzysty sposób jest ważne.

Pytanie 9

Określ rezultat działania podanego kodu PHP, jeśli zmienna tab jest tablicą. ```$tab = explode(",","jelenie,sarny,dziki,lisy,borsuki"); echo $tab[1]." ".$tab[2];```

A. lisy borsuki
B. dziki lisy
C. sarny dziki
D. jelenie sarny

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wynik działania tego kodu PHP to 'sarny dziki'. Dzieje się tak dzięki funkcji explode oraz indeksom tablicy. Funkcja explode dzieli tekst na kawałki według separatora, który w tym przypadku to przecinek. Więc, kiedy zastosujemy ją na ciągu 'jelenie,sarny,dziki,lisy,borsuki', dostaniemy tablicę, gdzie indeks 0 to 'jelenie', indeks 1 to 'sarny', indeks 2 to 'dziki', indeks 3 to 'lisy', a indeks 4 to 'borsuki'. Potem, polecenie echo wyświetla wartości z indeksów 1 i 2, które mają 'sarny' oraz 'dziki'. To całkiem praktyczne w programowaniu, zwłaszcza gdy przerabiamy i manipulujemy danymi tekstowymi. Dzięki explode łatwo dzielimy dane na mniejsze kawałki, co przydaje się w różnych sytuacjach, jak analiza danych czy robienie formularzy, a nawet w pracy z plikami CSV.

Pytanie 10

Który z podanych formatów pozwala na zapis zarówno dźwięku, jak i obrazu?

A. PNG
B. MP3
C. MP4
D. WAV

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Format MP4, znany również jako MPEG-4 Part 14, jest jednym z najpopularniejszych formatów multimedialnych, który umożliwia jednoczesny zapis zarówno dźwięku, jak i obrazu. Dzięki zastosowaniu zaawansowanej kompresji, MP4 pozwala na przechowywanie wysokiej jakości materiałów w stosunkowo małych plikach, co czyni go idealnym do przesyłania i strumieniowania w Internecie. MP4 obsługuje wiele kodeków, takich jak H.264 dla wideo oraz AAC dla dźwięku, co pozwala na szeroką kompatybilność z różnymi urządzeniami, od smartfonów po odtwarzacze multimedialne. Format ten jest zgodny z wieloma standardami, co czyni go wszechstronnym wyborem dla twórców treści. Przykłady jego zastosowania obejmują filmy wideo na platformach streamingowych, klipy muzyczne i wideoklipy. Dzięki swoim zaletom, MP4 stał się de facto standardem w przemyśle multimedialnym, co w znacznym stopniu przyczyniło się do jego popularności oraz wszechstronności.

Pytanie 11

W języku CSS atrybut font-size przyjmuje, zgodnie z nazwami, wartości

A. wyłącznie small, medium, large
B. zaledwie big oraz small
C. z zestawu xx-small, x-small, medium, large, x-large, xx-large
D. jedynie small, smaller, large, larger

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Właściwość font-size w CSS pozwala na określenie rozmiaru czcionki za pomocą różnych wartości, w tym predefiniowanych słów kluczowych, które umożliwiają łatwe dostosowanie wielkości tekstu w dokumentach HTML. Oprócz typowych wartości takich jak small, medium i large, CSS oferuje również bardziej szczegółowe opcje, takie jak xx-small, x-small, x-large oraz xx-large. Dzięki temu projektanci mogą lepiej dopasować rozmiar tekstu do kontekstu wizualnego strony. Użycie tych wartości pozwala na uniknięcie problemów z uniwersalnością, gdyż są one zrozumiałe i zgodne z różnymi rozdzielczościami ekranów. Na przykład, podczas projektowania responsywnej witryny, zastosowanie wartości xx-large dla nagłówków oraz x-small dla przypisów skutecznie poprawia czytelność i estetykę. Zgodnie z najlepszymi praktykami, warto również rozważyć użycie jednostek względnych, takich jak em czy rem, co pozwala na jeszcze większą elastyczność w dostosowywaniu rozmiarów tekstu do preferencji użytkownika oraz rozmiaru ekranu.

Pytanie 12

Która z poniższych funkcji języka PHP zamieni wyraz „kota” na wyraz „mysz” w zdaniu „ala ma kota”?

A. replace("kota", "mysz", "ala ma kota");
B. str_replace( "kota", "mysz", "ala ma kota");
C. str_replace("ala ma kota", "kota", "mysz");
D. replace("ala ma kota", "kota", "mysz");

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja str_replace w języku PHP jest używana do zastępowania fragmentów tekstu w łańcuchach znaków. W przypadku podanego zadania, funkcja ta ma trzy argumenty: pierwszy argument to szukany ciąg ("kota"), drugi argument to ciąg, który ma zastąpić ten szukany ("mysz"), a trzeci argument to łańcuch, w którym ma zostać dokonana zmiana ("ala ma kota"). Dzięki tej funkcji, wynikowym tekstem po zastosowaniu będzie "ala ma mysz", co jest dokładnie tym, co chcemy osiągnąć. W praktyce, str_replace jest często wykorzystywana w aplikacjach webowych do dynamizowania treści, gdzie na przykład użytkownik może podać różne dane, które należy przetworzyć. Stosowanie str_replace jest zgodne z najlepszymi praktykami programowania w PHP – umożliwia łatwe i efektywne manipulowanie danymi tekstowymi, co jest integralną częścią wielu projektów. Dodatkowo, warto zaznaczyć, że str_replace jest funkcją case-sensitive, co oznacza, że rozróżnia wielkość liter, więc stosowanie jej wymaga staranności w kontekście przetwarzania tekstów.

Pytanie 13

Globalne zmienne do przechowywania informacji o ciasteczkach oraz sesjach: $_COOKIE oraz $_SESSION stanowią część języka

A. C#
B. Perl
C. JavaScript
D. PHP

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź PHP jest prawidłowa, ponieważ $_COOKIE i $_SESSION to superglobalne tablice w tym języku, które są wykorzystywane do zarządzania danymi sesyjnymi oraz ciasteczkami. $_COOKIE umożliwia przechowywanie danych na komputerze użytkownika w formie ciasteczek, które mogą być odczytywane przez serwer przy każdym żądaniu. Ciasteczka mogą być używane do identyfikacji użytkownika, zapamiętywania preferencji lub sesji. Przykładowe zastosowanie to np. pamiętanie, czy użytkownik jest zalogowany oraz jakie preferencje dotyczące wyświetlania treści ustawił. Z kolei $_SESSION jest używane do przechowywania danych sesji na serwerze, co zapewnia większe bezpieczeństwo, ponieważ dane nie są również dostępne po stronie klienta. Przykładem zastosowania $_SESSION jest przechowywanie informacji o użytkowniku, takich jak jego identyfikator, które mogą być używane do autoryzacji w różnych częściach aplikacji. W obu przypadkach, przy użyciu tych mechanizmów, programiści muszą pamiętać o optymalizacji wydajności oraz przestrzeganiu zasad ochrony prywatności użytkowników, co jest kluczowe w kontekście aktualnych regulacji dotyczących danych osobowych.

Pytanie 14

W języku JavaScript stworzono obiekt Samochod. Aby wywołać jedną z jego metod, trzeba wpisać

A. Samochod.spalanie_na100
B. Samochod.kolor
C. Samochod()
D. Samochod.spalanie()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku JavaScript obiekt to podstawowa jednostka, która pozwala na grupowanie danych i funkcji w jednym miejscu. W kontekście zdefiniowanego obiektu Samochod, aby wywołać jego metodę, należy skorzystać z notacji kropkowej. Poprawne użycie to Samochod.spalanie(), co wskazuje na wywołanie metody 'spalanie' z obiektu 'Samochod'. Ta metoda może zawierać logikę obliczającą zużycie paliwa lub inne operacje związane z danym samochodem. Warto zauważyć, że metody w JavaScript są funkcjami przypisanymi do obiektów, co umożliwia ich wywołanie za pomocą notacji kropkowej. Przykładowo, jeśli obiekt Samochod ma zdefiniowaną metodę spalanie, możemy ją zainicjować i uzyskać wynik, co czyni nasz kod bardziej modularnym i czytelnym. Użycie odpowiednich metod jest zgodne z zasadami programowania obiektowego, które są fundamentem JavaScript. Metody obiektów mogą korzystać z właściwości innych obiektów, co zwiększa elastyczność programowania. Ta architektura jest zgodna ze standardem ECMAScript, który definiuje zasady dotyczące obiektów i funkcji w JavaScript.

Pytanie 15

W dokumentacji CMS WordPress znajduje się zdanie:
"Enable comments for this post"
Co oznacza to zdanie?

A. Włącz formatowanie wpisu.
B. Włącz edycję wpisu.
C. Włącz możliwość dodawania komentarzy do wpisu.
D. Włącz publikację wpisu.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie – komunikat „Enable comments for this post” w WordPressie oznacza dokładnie włączenie możliwości dodawania komentarzy do konkretnego wpisu. W praktyce jest to po prostu przełącznik, który decyduje, czy pod danym postem będzie widoczny formularz komentowania i lista komentarzy użytkowników. Z mojego doświadczenia to jedna z podstawowych opcji zarządzania interakcją z czytelnikami w systemach CMS. WordPress ma wbudowany system komentarzy i dla każdego wpisu z osobna można zdecydować, czy chcesz dopuścić dyskusję, czy raczej ma to być „statyczna” treść bez opinii użytkowników. Włączenie komentarzy nie wpływa na możliwość edycji, publikacji ani formatowania treści – to zupełnie osobne funkcje. Edycja odbywa się w edytorze blokowym lub klasycznym, publikacja jest kontrolowana przyciskiem „Opublikuj” / „Zaktualizuj”, a formatowanie dotyczy układu tekstu, nagłówków, obrazków, list itd. Włączanie komentarzy to raczej kwestia konfiguracji modułu dyskusji. W dobrych praktykach administracji WordPressa zaleca się świadome zarządzanie komentarzami: włączać je tam, gdzie istotna jest interakcja (np. blog, poradniki, aktualności), a wyłączać na stronach typu regulamin, polityka prywatności czy strony czysto informacyjne. W ustawieniach dyskusji można też ustawić moderację, wymóg zatwierdzania komentarzy, filtrowanie spamu czy ograniczenia dla niezalogowanych. W poważniejszych serwisach często łączy się natywne komentarze WordPressa z dodatkowymi wtyczkami (np. antyspam, integracja z social media), ale podstawowy przełącznik zawsze oznacza to samo: czy ten konkretny wpis ma mieć aktywną sekcję komentarzy, czy nie.

Pytanie 16

W diagramie ER powiązanie między dwoma zbiorami encji nazywamy

A. krotką.
B. atrybutem.
C. dziedziną.
D. związkiem.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to „związek”, bo w diagramie ER (Entity-Relationship) właśnie tak nazywamy powiązanie między dwoma zbiorami encji. Mamy encje, czyli zbiory obiektów z rzeczywistości, na przykład „Klient” i „Zamówienie”, a pomiędzy nimi rysujemy relację: „Klient składa Zamówienie”. Ta linia, często z nazwą i krotnością (1:1, 1:N, N:M), to właśnie związek. W notacji Chen’a czy notacji Crow’s Foot zawsze chodzi o to samo: formalne opisanie, jak dane z jednego zbioru encji są powiązane z danymi z innego zbioru. W praktyce projektowania baz danych związek w diagramie ER prawie zawsze przekłada się na relację w modelu relacyjnym: albo na klucz obcy (np. tabela zamówienia ma kolumnę klient_id), albo na dodatkową tabelę asocjacyjną przy relacjach wiele‑do‑wielu (np. tabela produkt_zamówienie). Moim zdaniem ważne jest, żeby od początku myśleć o związku nie tylko jako o kresce na diagramie, ale jako o czymś, co później będzie miało konkretne odwzorowanie w SQL, w kluczach obcych, indeksach i ograniczeniach integralności. Z punktu widzenia dobrych praktyk branżowych, poprawne modelowanie związków to podstawa: pozwala zadbać o integralność referencyjną, unikać duplikacji danych i poprawnie odzwierciedlić reguły biznesowe. Na przykład relacja 1:N między Klientem a Zamówieniem jasno mówi, że jedno zamówienie należy do dokładnie jednego klienta, ale klient może mieć wiele zamówień. Dzięki temu, gdy później piszesz kwerendy SQL, dokładnie wiesz, jak łączyć tabele za pomocą JOIN i które klucze obce są obowiązkowe. W praktyce w firmach, które poważnie podchodzą do projektowania baz, diagram ER z dobrze opisanymi związkami jest normalnym elementem dokumentacji technicznej i ułatwia współpracę między programistami, analitykami i administratorami baz danych.

Pytanie 17

Mamy do czynienia z tablicą o nazwie tab, która zawiera liczby całkowite różniące się od zera. Zawarty w języku PHP kod ma na celu:

foreach ($tab as &$liczba)
    $liczba = $liczba * (-1);
unset($liczba);
A. obliczyć wartość bezwzględną elementów tej tablicy
B. zmienić wszystkie elementy tablicy na liczby o przeciwnym znaku
C. wyliczenie iloczynu wszystkich wartości w tablicy
D. przekształcić elementy tablicy na wartości zapisane w zmiennej liczba

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest prawidłowa, ponieważ przedstawiony kod w języku PHP używa pętli foreach do iteracji po tablicy o nazwie tab. Dzięki zastosowaniu operatora & przed nazwą zmiennej $liczba, zmienna ta jest przekazywana przez referencję. Oznacza to, że każda modyfikacja dokonywana na zmiennej $liczba wpływa bezpośrednio na odpowiedni element tablicy. Wewnątrz pętli każda liczba w tablicy jest mnożona przez -1, co skutkuje zmianą jej znaku na przeciwny. W praktyce taka operacja jest powszechnie stosowana, gdy istnieje potrzeba szybkiej zmiany wszystkich wartości w strukturze danych na ich negatywne odpowiedniki, na przykład w algorytmach matematycznych lub finansowych. Istotnym aspektem jest również unikanie modyfikacji oryginalnych danych, co jest kluczowe w procesie przetwarzania danych. Po zakończeniu pętli unset($liczba) usuwa referencję, aby uniknąć niepożądanych efektów ubocznych. Takie podejście jest zgodne z dobrymi praktykami programowania, które kładą nacisk na zarządzanie pamięcią i poprawność danych.

Pytanie 18

Przedstawiony blok reprezentuje czynność

Ilustracja do pytania
A. podjęcia decyzji.
B. wyświetlenia danych.
C. wczytania danych.
D. zastosowania gotowej procedury lub funkcji.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Ten blok w kształcie rombu to klasyczny symbol decyzji w schemacie blokowym algorytmu. Zgodnie z przyjętymi standardami notacji (np. ANSI/ISO dla diagramów przepływu), romb oznacza miejsce, w którym program musi coś sprawdzić i na podstawie wyniku tej kontroli wybrać jedną z gałęzi dalszego działania. Innymi słowy: następuje podjęcie decyzji na podstawie warunku logicznego, który zwykle daje odpowiedź typu TAK/NIE (TRUE/FALSE). W praktyce, w kodzie programistycznym taki romb odpowiada instrukcjom warunkowym, takim jak if, if...else, switch, operator trójargumentowy itp. Przykład: „jeśli użytkownik jest zalogowany, pokaż panel administracyjny, w przeciwnym razie przekieruj do logowania”. W schemacie blokowym byłby to właśnie romb z pytaniem „Użytkownik zalogowany?”. Z rombu wychodziłyby dwie strzałki: jedna podpisana „tak”, druga „nie”, prowadzące do różnych bloków akcji. Moim zdaniem warto wyrobić sobie nawyk automatycznego kojarzenia: romb = warunek = rozgałęzienie przepływu. Dzięki temu łatwiej później projektować algorytmy, niezależnie od języka programowania. W praktyce webowej też ma to duże znaczenie: np. sprawdzenie, czy dane z formularza są poprawne, czy użytkownik ma odpowiednie uprawnienia, czy plik istnieje na serwerze. Za każdym razem, gdy w głowie pojawia Ci się „jeśli… to… w przeciwnym razie…”, w schemacie blokowym powinien pojawić się właśnie taki romb, czyli blok podjęcia decyzji. To jest fundament logicznej struktury programu i jedna z podstawowych konstrukcji algorytmicznych.

Pytanie 19

Ile razy powtórzy się pętla w JavaScript?

var x=1, i=0;
do{
    x*=3;
    i++;
}
while(x!=27);
A. 27 razy
B. 2 razy
C. 3 razy
D. 26 razy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W przedstawionym kodzie JavaScript, pętla do-while wykonuje się do momentu, gdy zmienna x nie jest równa 27. Zaczynając od wartości x równej 1, przy każdym przejściu przez pętlę zmienna x jest mnożona przez 3. Kolejno, x przyjmuje wartości: 3, 9, 27. Zatem pętla wykonuje się trzy razy, ponieważ dopiero po trzecim cyklu x osiąga wartość 27, co powoduje zakończenie pętli. Do-while zawsze wykonuje przynajmniej jedno przejście, niezależnie od warunku końcowego, dzięki czemu jest przydatna w sytuacjach, gdy operacja musi być przeprowadzona co najmniej raz. Dobrym przykładem wykorzystania tego mechanizmu jest oczekiwanie na spełnienie określonego warunku, np. uzyskanie poprawnej odpowiedzi od użytkownika. Warto zwrócić uwagę, że w przypadku operacji matematycznych wymagających określonej liczby iteracji, pętla do-while zapewnia prostotę i przejrzystość implementacji, zgodnie z dobrymi praktykami zapewniającymi łatwość w czytaniu i utrzymaniu kodu.

Pytanie 20

Polecenie TRUNCATE TABLE w systemie MySQL stosuje się do usuwania

A. tabel.
B. wierszy tabeli.
C. baz danych.
D. kolumn.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie – TRUNCATE TABLE w MySQL służy do usuwania wszystkich wierszy z tabeli, a nie samej tabeli. Technicznie jest to polecenie DDL (Data Definition Language), chociaż z punktu widzenia efektu końcowego zachowuje się „podobnie” do bardzo szybkiego DELETE bez klauzuli WHERE. Różnica jest jednak istotna. TRUNCATE TABLE usuwa wszystkie rekordy naraz, zwykle poprzez opróżnienie całych segmentów danych, dzięki czemu jest znacznie szybsze niż klasyczne DELETE FROM tabela, które kasuje każdy wiersz osobno i loguje każdą operację. W MySQL po TRUNCATE bardzo często licznik AUTO_INCREMENT resetuje się do wartości początkowej, co w praktyce oznacza, że nowe rekordy dostaną takie same ID, jak kiedyś istniały. To jest ważne np. w środowisku testowym, gdy chcesz „wyczyścić” tabelę i zacząć od zera. W środowisku produkcyjnym trzeba uważać, bo po TRUNCATE nie da się przywrócić danych zwykłym ROLLBACK (w większości silników MySQL, np. InnoDB, traktowane jest to jak operacja DDL i commitowana jest natychmiast). Moim zdaniem TRUNCATE najlepiej używać wtedy, gdy mamy tabelę pomocniczą, logi, cache albo dane tymczasowe, które można bezpiecznie wyrzucić w całości i nie potrzebujemy historii zmian. Dobrą praktyką jest też upewnienie się, że na tabeli nie ma powiązań przez klucze obce, bo w MySQL TRUNCATE na tabeli referencjonowanej przez FOREIGN KEY może się nie udać albo wymagać wcześniejszego wyłączenia ograniczeń referencyjnych. W skrócie: TRUNCATE TABLE to narzędzie do szybkiego, hurtowego kasowania wszystkich wierszy tabeli, z zachowaniem samej struktury tej tabeli (kolumny, indeksy, definicje kluczy zostają).

Pytanie 21

Głównym celem systemu CMS jest oddzielenie treści portalu informacyjnego od jego wyglądu. Taki efekt osiąga się przez generowanie zawartości

A. ze statycznych plików HTML oraz wyglądu za pomocą technologii FLASH
B. z bazy danych oraz wyglądu ze zdefiniowanego szablonu
C. ze statycznych plików HTML oraz wyglądu ze zdefiniowanego szablonu
D. z bazy danych oraz wyglądu za pomocą atrybutów HTML

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Podstawowym zadaniem systemu CMS (Content Management System) jest efektywne oddzielenie treści od warstwy prezentacyjnej, co znacząco ułatwia zarządzanie stroną internetową. Systemy CMS wykorzystują bazy danych do przechowywania treści, co pozwala na dynamiczne generowanie stron internetowych na podstawie zdefiniowanych szablonów. Przy pomocy szablonów można łatwo zmieniać wygląd i układ strony, co jest kluczowe w dzisiejszym szybko zmieniającym się środowisku online. Przykładowo, w systemach takich jak WordPress, treści są przechowywane w bazie danych MySQL, a szablony w PHP. Dzięki temu możesz zmieniać motyw i dostosowywać wygląd strony bez konieczności modyfikacji poszczególnych elementów treści. Dobre praktyki branżowe wskazują na konieczność stosowania tego typu rozdzielenia, co nie tylko przyspiesza proces aktualizacji serwisu, ale także poprawia jego bezpieczeństwo i ułatwia utrzymanie. Takie podejście jest również korzystne w kontekście SEO, ponieważ pozwala na optymalizację treści bez ryzyka wprowadzenia błędów w kodzie.

Pytanie 22

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

A. CDR
B. BMP
C. PNG
D. JPG

Brak odpowiedzi na to pytanie.

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

Pytanie 23

Aby zdefiniować stylizację tabeli w języku CSS w sposób, który umożliwi wyróżnienie wiersza, na który aktualnie najeżdża kursor myszy np. innym kolorem, należy użyć

A. pseudoklasy :hover
B. pseudoklasy :visited
C. nowego selektora klasy dla wiersza tabeli
D. pseudoelementu :first-line

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Pseudoklasa :hover jest techniką CSS, która pozwala na zastosowanie stylów do elementu, gdy użytkownik na niego najedzie kursorem myszy. Dzięki temu można w prosty sposób wyróżnić wiersze tabeli, co zwiększa interaktywność i czytelność danych. W przypadku tabeli, aby wyróżnić aktualnie wskazywany wiersz, należy użyć reguły CSS, która odnosi się do elementu <tr> (wiersza tabeli) z zastosowaniem pseudoklasy :hover. Przykładowy kod CSS może wyglądać następująco: table tr:hover { background-color: #f0f0f0; } co spowoduje, że tło wiersza zmieni się na jasno szare, gdy kursor myszy znajdzie się nad tym wierszem. Taki sposób formatowania jest szczególnie przydatny w przypadku długich tabel, które mogą być trudne do przeglądania. Pseudoklasa :hover jest powszechnie stosowana w projektowaniu stron internetowych, w zgodności z W3C CSS Specification, co zapewnia jej szeroką kompatybilność z różnymi przeglądarkami. Warto także zauważyć, że można łączyć pseudoklasę :hover z innymi selektorami, aby uzyskać bardziej zaawansowane efekty wizualne.

Pytanie 24

Najłatwiejszym sposobem na zmianę obiektu z numerem 1 na obiekt z numerem 2 jest

Ilustracja do pytania
A. narysowanie obiektu docelowego
B. animacja obiektu
C. zmiana warstwy obiektu
D. geometriczne przekształcenie obiektu

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Geometryczne transformowanie obiektu to proces, który pozwala na zmiany w wielkości, kształcie, pozycji lub orientacji obiektu bez modyfikacji jego struktury. W przypadku zamiany obiektu oznaczonego cyfrą 1 na obiekt oznaczony cyfrą 2, transformacja geometryczna, jak skalowanie, jest najprostszą metodą. Skalowanie pozwala na proporcjonalne powiększenie obiektu, co jest niezbędne, gdy chcemy zwiększyć jego rozmiar bez zniekształceń. W praktyce, narzędzia do obróbki grafiki czy modelowania 3D, takie jak Adobe Illustrator czy AutoCAD, oferują funkcje do precyzyjnego skalowania. Kluczowe jest zachowanie proporcji, co można osiągnąć poprzez skalowanie względem określonego punktu odniesienia. Transformacje geometryczne są fundamentalne w wielu dziedzinach, takich jak projektowanie graficzne, inżynieria czy animacja komputerowa, i są zgodne z najlepszymi praktykami, które promują efektywność i precyzję w pracy z obiektami wizualnymi.

Pytanie 25

Na zakończenie dnia w systemie zarządzania magazynem sklepu spożywczego generowany jest raport, który przedstawia produkty oraz ich dostawców, dla których ilość na stanie jest mniejsza niż 10 sztuk. Do stworzenia tego raportu zastosowano kwerendę

A. SELECT
B. CHECK TABLE
C. UPDATE
D. INSERT INTO

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'SELECT' jest poprawna, ponieważ to polecenie służy do pobierania danych z bazy danych. Kwerenda SELECT umożliwia zdefiniowanie, jakie kolumny oraz z jakich tabel chcemy wyświetlić. W kontekście raportu dla sklepu spożywczego, który wyświetla produkty z ich dostawcami, gdzie stan magazynowy jest mniejszy niż 10 sztuk, kwerenda SELECT pozwoli na precyzyjne określenie kryteriów wyszukiwania, takich jak nazwa produktu, nazwa dostawcy oraz warunek dotyczący stanu magazynowego. Przykładowa kwerenda mogłaby wyglądać następująco: 'SELECT product_name, supplier_name FROM inventory WHERE stock < 10'. W praktyce, stosowanie kwerend SELECT w raportach umożliwia monitorowanie stanów magazynowych, co jest kluczowe dla efektywnego zarządzania zapasami oraz podejmowania decyzji o zamówieniach. Takie podejście jest zgodne z dobrymi praktykami w zarządzaniu danymi w sklepach detalicznych, gdzie ciągłe monitorowanie stanu magazynowego jest kluczowe dla utrzymania płynności sprzedaży i zadowolenia klientów.

Pytanie 26

Aby utworzyć tabelę w systemie baz danych, trzeba użyć komendy SQL

A. CREATE TABLE
B. ADD TABLE
C. PLUS TABLE
D. NEW TABLE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Żeby stworzyć tabelę w bazie danych, musisz użyć polecenia CREATE TABLE. To jest taki standard w SQL, który jest mega popularny w zarządzaniu bazami danych. Jak używasz tego polecenia, to definiujesz, jak ma wyglądać twoja tabela – nazwę, kolumny i jakie dane będą w tych kolumnach. Na przykład, jeśli chcesz mieć tabelę z informacjami o użytkownikach, będziesz mógł napisać coś takiego: `CREATE TABLE users (id INT PRIMARY KEY, name VARCHAR(100), email VARCHAR(100));`. Fajnie jest również ustawić klucz główny (PRIMARY KEY), bo to zabezpiecza unikalność danych w tabeli. To wszystko jest zgodne z zasadami normalizacji danych, co pomaga uniknąć dublowania informacji i poprawia integralność bazy. Tak więc, znajomość CREATE TABLE to podstawa, gdy pracujesz z bazami danych, bo to klucz do dalszego działania z danymi, ich modyfikowania i zarządzania nimi.

Pytanie 27

Aby uzyskać dane z tabeli pracownicy dotyczące jedynie osób, które ukończyły 26 lat, należy zastosować zapytanie

A. SELECT * FROM wiek WHERE pracownicy > 25
B. SELECT * FROM pracownicy AND wiek > 25
C. SELECT * FROM pracownicy WHERE wiek > 25
D. SELECT * FROM pracownicy OR wiek > 25

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby wyświetlić rekordy z tabeli pracownicy, które dotyczą pracowników powyżej 26 roku życia, należy zastosować odpowiednie zapytanie SQL. Poprawne zapytanie to 'SELECT * FROM pracownicy WHERE wiek > 25;'. W tym przypadku, klauzula WHERE filtruje wyniki, zapewniając, że tylko ci pracownicy, którzy mają więcej niż 25 lat, zostaną zwróceni. Warto zauważyć, że w SQL operator '>' oznacza, że zwracane będą tylko rekordy, dla których warunek jest spełniony. Ponadto, wybranie wszystkich kolumn poprzez SELECT * jest powszechną praktyką, gdyż pozwala na uzyskanie pełnych informacji o pracownikach, bez konieczności wskazywania poszczególnych kolumn. Jest to zgodne z zasadami użycia SQL, gdzie operacje na danych są wykonywane poprzez polecenia definiujące wybrane tabele i warunki. Przykład zastosowania tego zapytania może być użyty w aplikacjach biznesowych, gdzie analiza wieku pracowników jest niezbędna do podejmowania decyzji kadrowych, a także w raportach dotyczących zatrudnienia. Takie zapytanie jest fundamentalne dla zarządzania danymi w relacyjnych bazach danych.

Pytanie 28

Jaki typ mechanizmu zapewnienia bezpieczeństwa podczas uruchamiania aplikacji jest zawarty w środowisku .NET Framework?

A. Mechanizm wykonywania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) oraz na rolach (RBS - Role-Based Security)
B. Mechanizm wykonywania aplikacji realizowany przez funkcję Windows API (Application Programming Interface)
C. Mechanizm wykonywania aplikacji dla bibliotek klas
D. Mechanizm wykonywania aplikacji realizowany przez frameworki aplikacji webowych (ASP.NET)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź wskazująca na mechanizm oparty na uprawnieniach kodu (CAS - Code Access Security) oraz rolach (RBS - Role-Based Security) jest poprawna, ponieważ .NET Framework implementuje te mechanizmy w celu zapewnienia bezpieczeństwa aplikacji. CAS pozwala na kontrolowanie dostępu do zasobów systemowych na podstawie tożsamości i uprawnień kodu. To oznacza, że aplikacje mogą działać w ograniczonym środowisku, w którym mogą mieć dostęp tylko do tych zasobów, które zostały im jawnie przydzielone, co minimalizuje ryzyko nieautoryzowanego dostępu. RBS natomiast umożliwia przypisywanie uprawnień na podstawie ról użytkowników, co ułatwia zarządzanie bezpieczeństwem w aplikacjach, zwłaszcza w kontekście aplikacji wieloużytkownikowych. Przykładem zastosowania CAS może być aplikacja, która korzysta z zasobów sieciowych - może być skonfigurowana tak, aby nie miała dostępu do lokalnych plików użytkownika, co zabezpiecza przed nieautoryzowanym odczytem danych. W branży, stosowanie CAS i RBS jest zgodne z najlepszymi praktykami zarządzania bezpieczeństwem, które zalecają ograniczanie dostępu do zasobów na zasadzie minimalnych uprawnień.

Pytanie 29

Który z typów plików dźwiękowych oferuje największą kompresję rozmiaru?

A. CD-Audio
B. PCM
C. MP3
D. WAV

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Format MP3 (MPEG Audio Layer III) jest standardem kompresji stratnej, który znacząco zmniejsza rozmiar pliku dźwiękowego, zachowując przy tym akceptowalną jakość dźwięku. Technologia ta wykorzystuje algorytmy psychoakustyczne, które eliminują dźwięki, które są mniej słyszalne dla ludzkiego ucha. Dzięki temu możliwe jest osiągnięcie redukcji rozmiaru pliku o 70-90% w porównaniu z jakością oryginalnego nagrania. Praktyczne zastosowanie formatu MP3 jest szerokie: od przesyłania muzyki przez internet po użycie w odtwarzaczach multimedialnych oraz smartfonach. Możliwość dostosowania bitrate'u (od 32 kbps do 320 kbps) pozwala użytkownikom na balansowanie pomiędzy jakością a rozmiarem pliku. MP3 stał się de facto standardem w dystrybucji muzyki cyfrowej, a jego wsparcie w praktycznie każdym odtwarzaczu audio czyni go niezwykle uniwersalnym. Warto również dodać, że MP3 jest zgodny z wieloma standardami, takimi jak ID3, które umożliwiają dołączanie metadanych do plików audio, co dodatkowo podnosi jego funkcjonalność.

Pytanie 30

Który z poniższych zapisów w HTML określa kodowanie znaków stosowane w dokumencie?

A. <charset="UTF-8">
B. <meta encoding="UTF-8">
C. <meta charset="UTF-8">
D. <encoding="UTF-8">

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zapis <meta charset="UTF-8"> jest prawidłową deklaracją kodowania znaków w dokumencie HTML. Element <meta> jest używany w sekcji <head> dokumentu i pozwala na zdefiniowanie różnych metadanych, w tym kodowania znaków. Użycie "UTF-8" jako wartości dla atrybutu charset oznacza, że dokument będzie używał kodowania Unicode, które jest standardem preferowanym w sieci. Dzięki temu, dokumenty mogą poprawnie wyświetlać znaki z różnych języków, co jest kluczowe w zglobalizowanym świecie internetu. Przykładem zastosowania tego zapisu może być strona internetowa, która zawiera teksty w wielu językach, co wymaga wsparcia dla różnorodnych znaków diakrytycznych i symboli. Warto również podkreślić, że zgodnie z zasadami dobrych praktyk, zawsze powinno się definiować kodowanie znaków w dokumencie HTML, aby uniknąć problemów z wyświetlaniem treści, co może negatywnie wpłynąć na doświadczenia użytkowników oraz SEO strony.

Pytanie 31

Aby wykonać usunięcie tabeli, należy użyć kwerendy

A. TRUNCATE TABLE
B. UNIQUE
C. DROP TABLE
D. DELETE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to DROP TABLE, ponieważ jest to standardowa komenda SQL używana do całkowitego usunięcia tabeli z bazy danych. Użycie tej komendy powoduje nie tylko usunięcie samej struktury tabeli, ale również wszystkich danych, które były w niej przechowywane. Przykładowo, jeśli mamy tabelę 'Użytkownicy' i chcemy ją usunąć, piszemy: DROP TABLE Użytkownicy; Należy jednak pamiętać, że po wykonaniu tej operacji nie można odzyskać ani tabeli, ani jej danych, dlatego ważne jest, aby przed takim krokiem wykonać odpowiednie kopie zapasowe lub upewnić się, że dane są już zbędne. W kontekście dobrych praktyk, przed usunięciem tabeli warto przeanalizować wpływ na inne obiekty bazy danych, takie jak klucze obce, które mogą być związane z usuwaną tabelą. Istotne jest również zrozumienie, że DROP TABLE nie można użyć, jeśli w tabeli istnieją aktywne ograniczenia lub jeśli jest ona częścią jakiejś transakcji. W takiej sytuacji, czynności te należy zrealizować w odpowiedniej kolejności, aby uniknąć błędów.

Pytanie 32

Programista stworzył w języku C++ pętlę mającą na celu obliczenie wartości 5! (5! = 1 * 2 * 3 * 4 * 5). Niestety, popełnił błąd logiczny, gdyż

int a = 1; 
for (int i=1; i < 5; i++)
{
a = a * i;
}
cout << a;
A. Parametr i pętli powinien być rozpoczęty od wartości 0 zamiast 1.
B. Parametr i pętli powinien być zmniejszany zamiast zwiększany.
C. W drugim parametrze pętli powinno być porównanie i < 6 zamiast i < 5.
D. Zmienna a powinna być inicjowana wartością 0 zamiast 1.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W poprawnej odpowiedzi wskazano, że w drugim parametrze pętli powinno być porównanie i < 6 zamiast i < 5. W kontekście obliczania silni 5! (czyli 5*4*3*2*1), pętla for powinna iterować od 1 do 5, co oznacza, że końcowy warunek pętli powinien uwzględniać 5. W przeciwnym razie, ostatnia iteracja, w której i wynosi 5, nie będzie wykonana, co skutkuje błędnym wynikiem. Prawidłowa pętla powinna wyglądać tak: for (int i=1; i <= 5; i++) lub for (int i=1; i < 6; i++). Takie podejście jest zgodne z zasadami programowania, które zalecają, aby końcowy warunek pętli obejmował ostatnią wartość, która ma być przetwarzana. Dobrą praktyką w programowaniu jest również przemyślenie granic pętli, aby zapewnić, że wszystkie wymagane wartości są uwzględniane w obliczeniach, co jest kluczowe w takich obliczeniach matematycznych jak silnia.

Pytanie 33

Aby skutecznie stworzyć relację typu m…n, która będzie wolna od redundancji danych, konieczne jest

A. zaprojektowanie tabeli pomocniczej.
B. bezpośrednie połączenie kluczy obcych z obu tabel.
C. bezpośrednie połączenie kluczy podstawowych obu tabel.
D. uporządkowanie przynajmniej jednej z tabel.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Stworzenie tabeli pomocniczej to kluczowy element w projektowaniu relacji typu m:n (wiele do wielu) w bazach danych. Taka relacja, aby była efektywna i nienarażona na redundancję danych, wymaga wprowadzenia dodatkowej tabeli, która będzie pełniła rolę pośrednika między dwiema głównymi tabelami. Tabela pomocnicza zawiera klucze obce, które odnoszą się do kluczy podstawowych obu tabel, co pozwala na zminimalizowanie duplikacji danych. Na przykład, w bazie danych dotyczącej studiów, jeśli mamy tabelę studentów i tabelę kursów, relacja m:n między nimi mogłaby być reprezentowana przez tabelę pomocniczą 'Zapisani', która zawierałaby identyfikatory studentów i identyfikatory kursów. Dzięki temu każdy student może być zapisany na wiele kursów, a każdy kurs może mieć wielu studentów, bez powielania informacji. Tworzenie takich tabel pomocniczych jest zgodne z zasadami normalizacji danych, co jest standardem w projektowaniu baz danych, mającym na celu optymalizację struktury danych oraz eliminację redundancji.

Pytanie 34

Jak, wykorzystując język PHP, można zapisać w ciasteczku wartość znajdującą się w zmiennej dane na okres jednego dnia?

A. setcookie("dane", "dane", 0);
B. setcookie("dane", $dane, time());
C. setcookie("dane", $dane, 0);
D. setcookie("dane", $dane, time() + (3600*24));

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to setcookie("dane", $dane, time() + (3600*24));, ponieważ umożliwia ona zapisanie wartości zmiennej $dane w ciasteczku o nazwie "dane" na okres jednego dnia. Funkcja setcookie() w PHP przyjmuje trzy podstawowe argumenty: nazwę ciasteczka, jego wartość oraz czas wygaśnięcia. W tym przypadku, używając time() + (3600*24), ustawiamy czas wygaśnięcia ciasteczka na aktualny czas plus 24 godziny (3600 sekund w godzinie razy 24). Jest to zgodne z najlepszymi praktykami zarządzania sesjami i danymi użytkowników, ponieważ pozwala na przechowywanie informacji, które są dostępne dla użytkownika przez dłuższy czas, co może być przydatne w różnych scenariuszach, takich jak zapamiętywanie preferencji użytkownika lub stanu logowania. Użycie odpowiednich czasów wygaśnięcia wpływa na bezpieczeństwo i prywatność danych. Dobre praktyki sugerują także, aby ciasteczka były używane w sposób przemyślany, aby nie obniżać wydajności aplikacji ani nie narażać danych użytkowników na nieautoryzowany dostęp.

Pytanie 35

W zaprezentowanym fragmencie algorytmu użyto

Ilustracja do pytania
A. trzy bloki operacyjne (procesy).
B. dwie pętle.
C. jeden blok decyzyjny.
D. jedną pętlę.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
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 36

Definicja obiektu została zapisana w języku JavaScript jako var osoba={imie:"Anna", nazwisko:"Kowalska", rok_urodzenia:1985}; Jak można odwołać się do właściwości nazwisko?

A. osoba.nazwisko
B. osoba[1]
C. osoba[2]
D. osoba::nazwisko

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku JavaScript obiekty są kluczowymi strukturami danych, które pozwalają na grupowanie danych w formie par klucz-wartość. W omawianym przypadku mamy obiekt osoba, który zawiera trzy właściwości: imie, nazwisko oraz rok_urodzenia. Aby uzyskać dostęp do właściwości nazwisko, należy użyć notacji kropkowej, co jest standardową metodą w JavaScript. Notacja kropkowa jest czytelna i intuicyjna, co czyni ją preferowanym sposobem odwołania się do właściwości obiektu. Przykładowo, aby wyświetlić nazwisko, możemy użyć polecenia console.log(osoba.nazwisko), co zwróci wartość 'Kowalska'. Inna metoda dostępu do właściwości obiektu to notacja z nawiasami kwadratowymi, na przykład osoba['nazwisko'], która również zadziała, ale jest mniej czytelna, zwłaszcza w przypadku kluczy, które zawierają znaki specjalne. Warto podkreślić, że zgodnie z ECMAScript, standardem, na którym bazuje JavaScript, obiekty są fundamentalnym elementem języka, a umiejętność ich wykorzystania jest kluczowa dla każdego programisty.

Pytanie 37

Tabela Pracownicy zawiera informacje na temat pracowników różnych działów, co jest zaznaczone przez pole liczbowe dzial. Z racji tego, że zazwyczaj kwerendy dotyczą tylko działu 2, można uprościć zapytania do tej tabeli, tworząc wirtualną tabelę o nazwie Prac_dzial2 przy użyciu zapytania

A. CREATE VIEW Prac_dzial2 AS SELECT * FROM Pracownicy WHERE dzial=2;
B. VIEW Prac_dzial2 SELECT FROM Pracownicy WHERE dzial=2;
C. VIEW Prac_dzial2 FROM Pracownicy WHERE dzial=2;
D. CREATE VIEW Prac_dzial2 FROM Pracownicy WHERE dzial=2;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'CREATE VIEW Prac_dzial2 AS SELECT * FROM Pracownicy WHERE dzial=2;' jest poprawna, ponieważ wykorzystuje standardowe polecenie SQL do tworzenia widoku. Widok jest wirtualną tabelą, która umożliwia użytkownikom wykonywanie zapytań w oparciu o wcześniej zdefiniowane kryteria, co może znacznie uprościć złożoność zapytań w bazach danych. W tym przypadku, widok 'Prac_dzial2' automatycznie filtruje dane, zwracając jedynie pracowników przypisanych do działu 2. Przy pomocy tego widoku, użytkownicy mogą szybko uzyskać dostęp do tego subsetu danych bez konieczności każdorazowego pisania złożonych zapytań. Z perspektywy zarządzania bazą danych, tworzenie widoków jest uznawane za dobrą praktykę, ponieważ pozwala na lepszą organizację i bezpieczeństwo danych, a także stanowi dodatkową warstwę abstrakcji, która może ułatwić stosowanie polityk dostępu. Na przykład, jeśli firma zmieni strukturę działów, wystarczy zaktualizować definicję widoku, co nie wymaga modyfikacji wszystkich zapytań korzystających z tego widoku.

Pytanie 38

Który element blokowy języka HTML5 jest przeznaczony do umieszczenia w nim nawigacji witryny? 

A. main
B. aside
C. nav
D. header

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie wskazany został element <nav>, który w HTML5 jest semantycznym kontenerem przeznaczonym specjalnie na nawigację. Według specyfikacji HTML Living Standard element <nav> służy do grupowania głównych bloków odsyłaczy nawigacyjnych, takich jak menu główne, menu w stopce, menu kategorii czy paginacja. Przeglądarki, czytniki ekranu i różne narzędzia asystujące rozpoznają ten znacznik jako obszar nawigacyjny, co bardzo poprawia dostępność (accessibility) strony. Z mojego doświadczenia, gdy struktura jest zrobiona semantycznie, screen readery potrafią jednym skrótem klawiaturowym przeskoczyć do nawigacji, co jest ogromnym ułatwieniem dla użytkowników niewidomych. W praktyce w <nav> umieszczamy listy linków, najczęściej w postaci <ul><li><a>…</a></li></ul>. Przykładowo: <nav><ul><li><a href="/">Strona główna</a></li><li><a href="/oferta">Oferta</a></li><li><a href="/kontakt">Kontakt</a></li></ul></nav>. Taka konstrukcja jest zgodna z dobrymi praktykami front-endu: semantyczny HTML, czytelna struktura, łatwiejsze stylowanie w CSS i prostsza nawigacja w JavaScript. Co ważne, <nav> nie jest zwykłym divem – jego nazwa od razu mówi, do czego służy, co ułatwia pracę całego zespołu projektowego. W projektach komercyjnych często stosuje się kilka bloków <nav> na jednej stronie: główne menu w headerze, dodatkowe menu w stopce, czasem boczne menu kategorii. Standardy W3C dopuszczają to, pod warunkiem że te sekcje rzeczywiście służą do nawigowania. Dobrym zwyczajem jest nie umieszczać w <nav> pojedynczych przypadkowych linków w tekście artykułu – ten znacznik jest przewidziany dla istotnych struktur nawigacyjnych, a nie dla zwykłych hiperłączy w treści. Dzięki temu kod HTML pozostaje przejrzysty, łatwiej go walidować i utrzymywać w większych projektach.

Pytanie 39

W poniższym kodzie PHP wykonano operację na bazie danych. Której funkcji należy użyć, aby pobrać liczbę zmienionych w tabeli wierszy?

$zapytanie="UPDATE kadra SET stanowisko='Programista' WHERE id < 10";
mysqli_query($db, $zapytanie);
A. mysqli_affected_rows()
B. mysqli_field_count()
C. mysqli_use_result()
D. mysqli_num_rows()

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Gratulacje! Wybrałeś poprawną odpowiedź, która jest funkcją mysqli_affected_rows(). Ta funkcja jest specyficzna dla języka PHP i jest używana do zwracania liczby wierszy, które zostały zmienione, dodane lub usunięte przez ostatnie wywołanie funkcji mysqli_query() na serwerze MySQL. W kontekście operacji takich jak INSERT, UPDATE, REPLACE lub DELETE, mysqli_affected_rows() jest nieocenionym narzędziem do śledzenia ilości wykonanych zmian w bazie danych. Dlatego właśnie w przypadku przedstawionego pytania, gdzie w kodzie PHP wykonano operację UPDATE na bazie danych, idealnym rozwiązaniem jest użycie funkcji mysqli_affected_rows() do pobrania liczby zmienionych wierszy. Jest to kluczowe zrozumienie, aby efektywnie manipulować danymi w bazach danych MySQL za pomocą języka PHP.

Pytanie 40

W języku JavaScript należy sformułować warunek, który będzie prawdziwy, gdy zmienna a będzie jakąkolwiek liczbą naturalną dodatnią (również nie zerową) lub gdy zmienna b będzie liczbą mieszczącą się w przedziale od 10 do 100, włącznie. Wyrażenie logiczne zastosowane w tym warunku powinno mieć formę

A. (a>0) && ((b>=10) && (b<=100))
B. (a>0) || ((b>=10) || (b<=100))
C. (a>0) || ((b>=10) && (b<=100))
D. (a>0) && ((b>=10) || (b<=100))

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź (a>0) || ((b>=10) && (b<=100)) jest poprawna, ponieważ precyzyjnie odwzorowuje wymagane warunki. Warunek logiczny składa się z dwóch głównych części. Pierwsza część, (a>0), sprawdza, czy zmienna a jest liczbą naturalną dodatnią. Liczby naturalne dodatnie to liczby całkowite większe od zera, co oznacza, że a musi być większe od zera, aby warunek był spełniony. Druga część warunku, ((b>=10) && (b<=100)), wymaga, aby zmienna b znajdowała się w przedziale od 10 do 100, włącznie z tymi wartościami. Zastosowanie operatora && w tej części oznacza, że obie nierówności muszą być spełnione jednocześnie. Operator || łączy te dwie części, co oznacza, że wystarczy spełnić jeden z warunków, aby cały wyrażenie logiczne zwróciło prawdę. Jest to zgodne z zasadami programowania, które wskazują na konieczność precyzyjnego definiowania warunków w celu uniknięcia niejasności. W praktyce takie wyrażenie jest niezwykle przydatne w sytuacjach, gdy konieczne jest weryfikowanie wartości zmiennych przed ich dalszym przetwarzaniem, co pozwala na zwiększenie bezpieczeństwa i stabilności aplikacji.