Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 4 lutego 2026 21:37
  • Data zakończenia: 4 lutego 2026 21:57

Egzamin zdany!

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

Wymagane minimum: 20 punktów (50%)

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

Jakie jest zadanie funkcji przedstawionej w języku JavaScript?

 function fun1(a, b) {
    if (a % 2 != 0) a++;
    for (n = a; n <= b; n+=2)
        document.write(n);
}
A. sprawdzenie, czy liczba a jest nieparzysta; w przypadku potwierdzenia, wypisanie jej
B. wypisanie liczb parzystych z zakresu od a do b
C. zwrócenie wartości liczb parzystych od a do b
D. wypisanie wszystkich liczb z zakresu od a do b
Odpowiedź "wypisanie liczb parzystych z przedziału od a do b" jest prawidłowa, ponieważ funkcja fun1(a, b) w języku JavaScript ma na celu wyświetlenie wszystkich liczb parzystych w zdefiniowanym zakresie. Funkcja najpierw sprawdza, czy liczba a jest nieparzysta; jeśli tak, to zwiększa ją o 1, co zapewnia, że zaczynamy od najbliższej liczby parzystej. Następnie, za pomocą pętli for, iteruje przez liczby od a do b, zwiększając n o 2 w każdej iteracji. Dzięki temu wypisujemy tylko liczby parzyste. Przykładowo, jeśli a = 3 i b = 9, to funkcja zacznie od 4 i wypisze 4, 6, i 8. Tego typu funkcje są przydatne w różnych kontekstach programistycznych, takich jak generowanie sekwencji liczb dla algorytmów matematycznych, generowanie danych testowych czy też przy pracy z interfejsami użytkownika, gdzie występują interwały liczbowe. Dobrą praktyką jest zawsze jasno określać zakres przetwarzanych danych, co ta funkcja realizuje, zapewniając, że wyniki są zgodne z oczekiwaniami użytkownika.

Pytanie 2

W kodzie HTML znajdziemy formularz. Jaki rezultat zostanie pokazany przez przeglądarkę, jeśli użytkownik wprowadził do pierwszego pola wartość "Przykładowy text"?

Ilustracja do pytania
A. Efekt 2
B. Efekt 1
C. Efekt 4
D. Efekt 3
Efekt 2 jest prawidłowy, ponieważ odpowiada dokładnemu odwzorowaniu HTML. Kod zawiera element <textarea> oraz dwa pola typu checkbox. Przeglądarka wyświetla pole tekstowe o określonym rozmiarze, gdzie użytkownik może wpisać tekst. Checkboxy pozwalają na wybór opcji, niezależnych od siebie, co odróżnia je od radiobuttonów. Przykładowy text wpisany w pole <textarea> zostanie wyświetlony w miejscu tego pola, co jest dobrze widoczne na obrazie odpowiadającym efektowi 2. Warto pamiętać, że <textarea> stosuje się do dłuższych form tekstu, co jest standardem w projektowaniu formularzy. Użycie checkboxów jest zgodne z dobrymi praktykami, gdy użytkownik może zaznaczyć dowolną liczbę opcji. Jest to ważne, aby dostarczyć użytkownikowi intuicyjny interfejs do wprowadzania i wyboru danych. W HTML ważne jest, aby kod był semantyczny i zgodny z oczekiwaniami użytkowników, co ten przykład dobrze ilustruje. Formularze powinny być zawsze testowane pod kątem użyteczności i poprawności w różnych przeglądarkach.

Pytanie 3

Narzędzie phpMyAdmin służy do administrowania serwerem

A. FTP
B. plików
C. WWW
D. baz danych
Poprawnie – phpMyAdmin to narzędzie służące do administrowania serwerem baz danych, najczęściej MySQL lub MariaDB. Działa jako aplikacja webowa, czyli obsługujesz ją przez przeglądarkę, ale jej głównym zadaniem nie jest zarządzanie stroną WWW, tylko właśnie strukturą i danymi w bazie. Dzięki phpMyAdmin możesz tworzyć nowe bazy danych, zakładać i usuwać tabele, definiować typy kolumn, klucze główne i obce, indeksy, a także wykonywać zapytania SQL, eksportować i importować dane (np. do formatu SQL, CSV, czasem też JSON), robić backupy i przywracać je, zarządzać użytkownikami i ich uprawnieniami do konkretnych baz. W praktyce, gdy stawiasz stronę w PHP opartą na WordPressie, Joomla czy autorskim CMS-ie, to bardzo często pierwsze narzędzie, po które się sięga do ogarnięcia bazy, to właśnie phpMyAdmin. Z mojego doświadczenia to jest taki „szwajcarski scyzoryk” do MySQL – niby prosty interfejs, ale pod spodem pełna moc SQL-a. Warto też wiedzieć, że phpMyAdmin nie zastępuje poprawnie napisanego kodu aplikacji czy mechanizmów migracji baz danych, ale w codziennej pracy administratora i programisty webowego jest niesamowicie przydatny: do szybkiego podglądu rekordów, debugowania problemów z danymi, sprawdzania wydajności zapytań czy ręcznej korekty błędnie zapisanych wpisów. Dobrą praktyką jest ograniczanie dostępu do phpMyAdmina (np. przez hasło, IP, HTTPS), bo daje on bardzo szerokie możliwości ingerencji w dane – a więc jest newralgicznym punktem z punktu widzenia bezpieczeństwa.

Pytanie 4

W języku HTML zdefiniowano znacznik ```link``` Wartość nofollow atrybutu rel

A. oznacza, że kliknięcie na link otworzy go w osobnej karcie przeglądarki.
B. jest informacją dla robota wyszukiwarki Google, aby nie podążał za tym linkiem.
C. jest informacją dla przeglądarki internetowej, aby nie formatowała słowa "link" jako odnośnika.
D. oznacza, że kliknięcie na link nie przeniesie do strony website.com.
Dobrze, że to wybrałeś! Atrybut rel='nofollow' w tagu <a> w HTML mówi robotom wyszukiwarek, jak Google, żeby nie śledziły tego linku. Często używa się go w SEO, czyli w optymalizacji stron. Dzięki temu możemy zdecydować, które linki na naszej stronie są ważne, a które nie. Jeśli mamy na myśli, żeby dana strona była mniej widoczna w wyszukiwarkach, to ten atrybut się przyda. Tylko musisz pamiętać, że zbyt wiele linków z 'nofollow' może sprawić, że wyszukiwarki nie będą patrzyły na naszą stronę za dobrze. Moim zdaniem, warto to dobrze przemyśleć!

Pytanie 5

Na ilustracji pokazano relację jeden do wielu. Łączy ona

Ilustracja do pytania
A. klucz podstawowy id tabeli filmy z kluczem obcym rezyserzy_id tabeli rezyserzy
B. klucz podstawowy id tabeli filmy z kluczem podstawowym id tabeli rezyserzy
C. klucz obcy rezyserzy_id tabeli filmy z kluczem obcym id tabeli rezyserzy
D. klucz obcy rezyserzy_id tabeli filmy z kluczem podstawowym id tabeli rezyserzy
W kontekście relacji jeden do wielu w bazach danych często dochodzi do nieporozumień związanych z błędnym przypisaniem kluczy. Klucz podstawowy w jednej tabeli nigdy nie może być kluczem obcym w innej relacji tego typu, ponieważ klucz podstawowy musi być unikalny i jednoznacznie identyfikować rekord w swojej tabeli. Podobne błędy pojawiają się przy przypisywaniu klucza obcego jako odnoszącego się do innego klucza obcego, co nie jest prawidłowym podejściem, ponieważ klucz obcy powinien odnosić się do klucza podstawowego w innej tabeli, aby zapewnić integralność referencyjną. Klucz obcy nie może być kluczem podstawowym w relacji jeden do wielu, ponieważ naruszałoby to zasadę unikalności wymaganej dla klucza podstawowego. Częstym błędem jest także mylenie kierunku relacji, co prowadzi do projektowania niepraktycznych struktur danych, które są trudne do zarządzania i skalowania. Prawidłowe zastosowanie kluczy obcych i podstawowych oraz zrozumienie ich roli w strukturze bazy danych stanowi fundament dla efektywnego modelowania danych, co jest zgodne z najlepszymi praktykami w projektowaniu systemów zarządzania relacyjnymi bazami danych. Kluczowe jest, aby projektanci baz danych byli świadomi tych zasad i potrafili je stosować w praktyce, aby uniknąć problemów z integralnością danych i późniejszymi trudnościami przy ich modyfikacji lub rozszerzaniu struktury bazy danych. Poprawne zrozumienie relacji między tabelami oraz ich implementacja jest niezbędna dla utrzymania spójności i wydajności systemów bazodanowych w długim okresie użytkowania.

Pytanie 6

Przed przystąpieniem do tworzenia kopii zapasowej bazy danych, aby była ona poprawna i zdatna do późniejszego przywrócenia, konieczne jest sprawdzenie

A. uprawnień dostępu do serwera bazy danych
B. poprawności składni zapytań
C. opcji udostępnienia bazy danych
D. spójności bazy danych
Spójność bazy danych to kluczowy aspekt, który należy sprawdzić przed wykonaniem kopii bezpieczeństwa. Oznacza to, że wszystkie dane w bazie muszą być zgodne z ustalonymi regułami i zapewniać prawidłowe relacje między różnymi tabelami oraz rekordami. Na przykład, jeżeli w bazie danych znajdują się relacje między tabelami, to każda referencja musi wskazywać na istniejący rekord. W praktyce, przed wykonaniem kopii zapasowej, administratorzy często przeprowadzają operacje takie jak walidacja danych, aby upewnić się, że nie ma błędów, które mogłyby prowadzić do nieprawidłowych wyników po przywróceniu danych. Dobre praktyki w zarządzaniu bazami danych, takie jak regularne wykonywanie kontroli spójności oraz audytów danych, pomagają zminimalizować ryzyko problemów z danymi. Warto również korzystać z narzędzi automatyzacyjnych, które mogą wykrywać niezgodności w danych, co znacznie ułatwia proces przed wykonaniem kopii zapasowej.

Pytanie 7

Jakie formatowanie obramowania jest zgodne ze stylem border-style: dotted solid;?

Ilustracja do pytania
A. Formatowanie 4
B. Formatowanie 3
C. Formatowanie 2
D. Formatowanie 1
Obramowanie w CSS może mieć różne style, które wpływają na estetykę i funkcjonalność projektów webowych. Styl „dotted” oznacza kropkowane obramowanie, które nadaje elementom lekkość i subtelność. Z kolei „solid” oznacza jednolite, ciągłe obramowanie, zapewniające wyraźną separację. W przypadku mieszanych stylów, jak „border-style: dotted solid;”, mamy kombinację, która często stosowana jest dla efektu wizualnego, gdzie różne krawędzie mają różny charakter. Obramowanie typu „dashed” jest mylące dla „dotted”, ponieważ oba są przerywane, ale „dashed” jest bardziej surowe i strukturalne, używane, gdy potrzeba mniej subtelnych, lecz nadal nie ciągłych obramowań. Natomiast styl „double” jest złożony z dwóch linii równoległych, co tworzy elegancki, ale wyrazisty efekt, używany w celach dekoracyjnych. Typowym błędem jest nieodróżnianie tych stylów, co prowadzi do niezamierzonych efektów wizualnych. W praktyce, wybór stylu obramowania powinien być świadomy i dostosowany do kontekstu użytkowego oraz estetycznego, co ma kluczowe znaczenie w projektowaniu stron internetowych zgodnie z zasadami user experience.

Pytanie 8

Jaki program służy do tworzenia i edytowania grafiki wektorowej?

A. Audacity
B. Corel Draw
C. Wordpad
D. Paint
Corel Draw to profesjonalny program do edycji grafiki wektorowej, który jest szeroko stosowany w branży projektowej. Grafika wektorowa jest oparta na matematycznych równaniach, co pozwala na skalowanie obrazu do dowolnych rozmiarów bez utraty jakości. Corel Draw oferuje zaawansowane narzędzia, takie jak krzywe Béziera, które umożliwiają precyzyjne rysowanie kształtów i linii. Program ten jest wykorzystywany do projektowania logo, ilustracji, plakatów, a także materiałów marketingowych. Przykładem praktycznego zastosowania może być tworzenie wizytówek, gdzie projektant może wykorzystać możliwości Corel Draw do stworzenia unikalnego i profesjonalnego wzoru. Dobre praktyki w pracy z grafiką wektorową obejmują korzystanie z warstw, co pozwala na organizowanie elementów projektu oraz stosowanie kolorów Pantone, co jest szczególnie istotne w druku. Corel Draw jest zgodny z różnymi standardami branżowymi, co czyni go preferowanym wyborem w wielu agencjach kreatywnych.

Pytanie 9

$i=10; $a=0; while $i) { $a=$a+2; $i--; } W języku PHP przedstawiono fragment kodu. Jaka będzie wartość zmiennej a po zakończeniu pętli?

A. 2
B. 10
C. 0
D. 20
W analizowanym fragmencie kodu PHP, mamy do czynienia z pętlą while, która działa tak długo, jak zmienna $i jest różna od zera. Na początku $i przyjmuje wartość 10, a zmienna $a jest inicjalizowana na 0. W obrębie pętli $a jest zwiększana o 2 w każdej iteracji, a zmienna $i jest dekrementowana o 1. Pętla wykona się więc 10 razy, co oznacza, że $a zostanie zwiększone 10 razy o 2, co daje łącznie: 2 * 10 = 20. Takie podejście do zarządzania pętlami jest zgodne z najlepszymi praktykami programowania, gdzie unika się złożonych operacji wewnątrz pętli na rzecz prostych i efektywnych obliczeń. Warto zauważyć, że sprawdzanie warunków oraz aktualizowanie zmiennych w pętli są kluczowe dla uniknięcia nieskończonych pętli oraz błędów logicznych, co jest istotne w kontekście utrzymania i czytelności kodu.

Pytanie 10

Kto z wymienionych zajmuje się nieprzerwanym przygotowaniem systemu bazy danych do pracy produkcyjnej, zarządzaniem kontami użytkowników oraz instalowaniem aktualizacji systemu bazodanowego?

A. Twórcy narzędzi dla deweloperów
B. Administratorzy serwerów oraz sieci komputerowych
C. Administratorzy systemu bazy danych
D. Projektanci i programiści Systemu Zarządzania Bazą Danych
Wybór projektantów narzędzi deweloperskich jako odpowiedzialnych za przygotowanie systemu bazy danych do pracy produkcyjnej jest błędny, ponieważ ich głównym zadaniem jest projektowanie i rozwijanie narzędzi oraz aplikacji, które ułatwiają proces tworzenia oprogramowania. Nie zajmują się oni bezpośrednio zarządzaniem bazami danych, lecz tworzą rozwiązania, które mogą być wykorzystywane przez administratorów baz danych. Z kolei administratorzy serwerów i sieci komputerowych koncentrują się na zarządzaniu infrastrukturą sieciową i serwerową, co obejmuje utrzymanie sprzętu oraz zapewnienie jego dostępności i wydajności. Ich praca jest istotna dla ogólnego funkcjonowania systemów, ale nie zajmują się oni bezpośrednio bazami danych ani nie zarządzają nimi. Ostatnia grupa, czyli projektanci i programiści Systemu Zarządzania Bazą Danych, koncentruje się na tworzeniu oprogramowania do zarządzania bazą danych oraz na jego rozwoju. Choć ich praca jest niezbędna w kontekście tworzenia funkcjonalności bazy danych, to nie odpowiadają oni za codzienne zarządzanie i utrzymanie działającego systemu. Dlatego też tylko administratorzy systemu bazy danych są odpowiedzialni za ciągłe przygotowanie systemu do pracy produkcyjnej oraz zarządzanie użytkownikami.

Pytanie 11

Poniżej przedstawiono fragment kodu obsługującego

<?php
if ( !isset($_COOKIE[$nazwa]) )
  echo "nie ustawiono!";
else
  echo "ustawiono, wartość: " . $_COOKIE[$nazwa];
?>
A. ciasteczek
B. zmiennych tekstowych
C. baz danych
D. sesji
Odpowiedź "ciasteczek" jest poprawna, ponieważ kod PHP przedstawiony w pytaniu zajmuje się obsługą ciasteczek HTTP. Ciasteczka są to małe pliki przechowywane na urządzeniu użytkownika, które pozwalają na zachowanie stanu sesji oraz przechowywanie danych o użytkowniku. W tym przypadku, kod sprawdza, czy ciasteczko o danej nazwie (przechowywane w zmiennej $nazwa) zostało ustawione. Jeśli nie, wyświetla komunikat "nie ustawiono!", a jeśli tak, wyświetla jego wartość. Przykład zastosowania ciasteczek obejmuje przechowywanie preferencji użytkowników na stronach internetowych, takich jak wybór języka czy ostatnio przeglądane produkty w sklepie internetowym. Ważne jest, aby pamiętać o dobrych praktykach dotyczących bezpieczeństwa ciasteczek, takich jak ustalanie odpowiednich flag (np. HttpOnly, Secure), aby chronić je przed atakami typu XSS oraz CSRF. Ciasteczka pozwalają również na śledzenie sesji, co jest istotne dla personalizacji treści i analizy zachowań użytkowników. Zgodnie z RODO, należy również informować użytkowników o używaniu ciasteczek oraz uzyskać ich zgodę na ich przetwarzanie.

Pytanie 12

W relacyjnych bazach danych dane zapisywane są w

A. listach.
B. wektorach.
C. tabelach.
D. kolejkach.
W relacyjnych bazach danych dane są przechowywane w tabelach, bo cały model relacyjny opiera się właśnie na pojęciu tabeli (relacji). Tabela to po prostu uporządkowany zbiór wierszy i kolumn: kolumny opisują strukturę danych (np. id, imię, nazwisko, email), a wiersze przechowują konkretne rekordy, czyli pojedyncze wpisy. Każda kolumna ma określony typ danych, np. INTEGER, VARCHAR, DATE, co pozwala silnikowi bazy danych kontrolować poprawność zapisów i optymalizować zapytania. Tak to działa w typowych systemach jak MySQL, PostgreSQL, SQL Server czy Oracle – wszędzie podstawową jednostką przechowywania danych użytkownika jest tabela. W praktyce, kiedy projektujesz bazę dla sklepu internetowego, tworzysz tabele takie jak users, products, orders, order_items. Potem za pomocą języka SQL wykonujesz na tych tabelach operacje SELECT, INSERT, UPDATE, DELETE. Klucze główne i obce też odnoszą się do tabel – klucz główny jednoznacznie identyfikuje wiersz w tabeli, a klucz obcy wskazuje na wiersz w innej tabeli, tworząc relację między nimi. To właśnie dzięki tabelom i relacjom możesz łączyć dane z wielu miejsc, np. pobrać zamówienia wraz z danymi klienta jednym zapytaniem. Moim zdaniem warto od początku myśleć o tabeli jak o odpowiedniku arkusza w Excelu, tylko z dużo bardziej rygorystycznymi zasadami i możliwością zaawansowanych zapytań. Standard SQL zakłada, że operujemy na relacjach, a w implementacjach relacja = tabela. Dlatego odpowiedź „tabelach” jest zgodna zarówno z teorią modelu relacyjnego, jak i z praktyką codziennej pracy z bazami danych.

Pytanie 13

Który semantyczny znacznik języka HTML 5 może wystąpić tylko raz na stronie?

A. <article>
B. <section>
C. <header>
D. <main>
Poprawna odpowiedź to <main>, bo zgodnie ze specyfikacją HTML5 ten znacznik powinien pojawić się w dokumencie najwyżej raz. Element <main> reprezentuje główną, unikalną treść strony, czyli to, co jest najważniejsze dla konkretnego adresu URL. Przeglądarki, czytniki ekranu i inne narzędzia asystujące zakładają, że istnieje jedno główne miejsce, do którego użytkownik może szybko „przeskoczyć”, omijając nagłówek, menu czy stopkę. Dlatego pojedynczy <main> ma duże znaczenie dla dostępności (a11y) i użyteczności serwisu. W praktyce dobrym wzorcem jest struktura: <header> na górę, poniżej <nav> (jeśli jest), potem jeden <main>, a w nim np. <article>, <section>, <aside>, a na końcu <footer>. Wewnątrz <main> możesz mieć kilka artykułów, sekcji, nawet różne widoki aplikacji SPA, ale sam <main> jest tylko jeden. Moim zdaniem warto od początku wyrabiać sobie nawyk: dokładnie jeden <main> na stronę i absolutnie nie zagnieżdżać go wewnątrz <header>, <footer> czy <article>. To jest też zgodne z dobrymi praktykami SEO – wyszukiwarki łatwiej rozumieją, co jest esencją danej podstrony. Dodatkowo, wiele frameworków front‑endowych i systemów CMS zakłada w layoutach pojedynczy kontener na treść główną, który semantycznie powinien być właśnie <main>, a nie np. zwykłym <div id="content">. Taka semantyka sprawia, że kod wygląda czyściej, jest bardziej przyszłościowy i po prostu profesjonalny.

Pytanie 14

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

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

Pytanie 15

Poniżej przedstawiono sposób obsługi:

<?php
if (!isset($_COOKIE[$nazwa]))
    echo "nie ustawiono!";
else
    echo "ustawiono, wartość: " . $_COOKIE[$nazwa];
?>
A. baz danych
B. sesji
C. ciasteczek
D. zmiennych tekstowych
Kod PHP przedstawiony w pytaniu ilustruje użycie mechanizmu ciasteczek w przeglądarce. Ciasteczka to małe pliki tekstowe, które serwer umieszcza na komputerze użytkownika, aby przechowywać informacje między sesjami HTTP. W tym przypadku kod sprawdza, czy zmienna o nazwie $nazwa jest ustawiona w tablicy superglobalnej $_COOKIE. Jeśli ciasteczko o danej nazwie nie zostało ustawione, skrypt zwraca komunikat 'nie ustawiono!'. Gdy ciasteczko istnieje, wyświetlana jest jego wartość. Ciasteczka są powszechnie stosowane do śledzenia sesji użytkowników, przechowywania preferencji czy zachowania stanu zalogowania. Ważnym aspektem jest zrozumienie, że ciasteczka działają po stronie klienta i mogą być modyfikowane przez użytkownika, dlatego powinny być używane z ostrożnością i w połączeniu z innymi mechanizmami zabezpieczeń. Warto pamiętać, że ciasteczka mają ograniczenia co do wielkości i liczby, które mogą być przechowywane przez przeglądarkę. Implementacja ciasteczek powinna być zgodna z regulacjami dotyczącymi prywatności, takimi jak RODO, które nakładają obowiązek informowania użytkowników o ich używaniu oraz uzyskiwania zgody.

Pytanie 16

Jakiego znacznika w HTML użyjemy, aby uzyskać tekst wyświetlany czcionką o stałej szerokości znaku, który również uwzględnia dodatkowe spacje, tabulacje oraz znaki końca linii?

A. <code>…</code>
B. <pre>…</pre>
C. <blockquote>…</blockquote>
D. <ins>…</ins>
Znacznik <pre> w HTML jest używany do formatowania tekstu w taki sposób, aby zachować oryginalne odstępy, tabulacje oraz znaki końca linii. W przeciwieństwie do standardowego tekstu, w którym przeglądarka ignoruje dodatkowe białe znaki, <pre> traktuje je dosłownie, co jest szczególnie przydatne w przypadku wyświetlania kodu źródłowego lub tekstu, w którym ważne są układy. Przykładem użycia może być wyświetlanie kodu programistycznego w dokumentacji technicznej, gdzie precyzyjny format jest kluczowy dla zrozumienia struktury kodu. Standard HTML5 potwierdza, że <pre> jest odpowiednim znacznikiem do tego celu, a jego użycie jest zgodne z zasadami semantyki HTML, co zwiększa czytelność i dostępność treści. Praktyka ta sprzyja również urządzeniom wspomagającym, umożliwiając poprawne interpretowanie tekstu przez czytniki ekranu.

Pytanie 17

Fragment tabeli gory prezentuje polskie łańcuchy górskie oraz ich najwyższe szczyty. Przedstaw kwerendę, która oblicza średnią wysokość szczytów dla każdego łańcucha górskiego.

Idpasmonazwa wysokosc
134Góry Bystrzyckie(brak nazwy)949
137Góry BystrzyckieAnielska Kopa871
74Beskid ŻywieckiBabia Góra (Diablak)1725
41Beskid ŚląskiBarania Góra1220
145Góry KarczewskieBaraniec723
128Góry BardzkieBardzka Góra (Kalwaria)583
297TatryBeskid2012
A. SELECT pasmo, SUM(wysokosc) FROM gory GROUP BY pasmo
B. SELECT pasmo, COUNT(wysokosc) FROM gory ORDER BY pasmo
C. SELECT pasmo, AVG(wysokosc) FROM gory GROUP BY pasmo
D. SELECT pasmo, AVG(wysokosc) FROM gory LIMIT pasmo
Prawidłowa odpowiedź: SELECT pasmo, AVG(wysokosc) FROM gory GROUP BY pasmo; jest właściwa, ponieważ pozwala na wyliczenie średniej wysokości szczytów dla każdego pasma górskiego indywidualnie. Kwerenda ta wykorzystuje klauzulę GROUP BY, która grupuje rekordy na podstawie kolumny pasmo, co jest niezbędne do uzyskania agregatów danych w SQL. Funkcja AVG() jest używana do obliczania średniej wartości w grupie, co w tym przypadku odnosi się do średniej wysokości szczytów. W praktyce takie zapytania są często używane w analizie danych, gdzie istnieje potrzeba podsumowania informacji w sposób umożliwiający wyciąganie wniosków na podstawie agregacji danych. Ważne jest również zrozumienie, że bez klauzuli GROUP BY funkcja AVG() obliczyłaby średnią z całej tabeli, a nie w ramach poszczególnych pasm. Dlatego poprawne użycie tej klauzuli jest kluczowe w kontekście uzyskania precyzyjnych wyników grupowania danych w relacyjnych bazach danych. Tego rodzaju operacje są fundamentalne w analizie danych i raportowaniu biznesowym, gdzie wymagana jest konsolidacja informacji z podziałem na różne kategorie czy segmenty.

Pytanie 18

Model, w którym wszystkie dane są zapisane w jednej tabeli, określa się mianem

A. relacyjnym
B. hierarchicznym
C. sieciowym
D. jednorodnym
Model jednorodny to taka podstawowa struktura w bazach danych, gdzie wszystko trzymamy w jednej tabeli. To się fajnie sprawdza w prostych aplikacjach, bo wtedy relacje między danymi są dość oczywiste. Klasycznym przykładem może być baza kontaktów, gdzie każdy ma swoje info w jednym miejscu. Dzięki temu mamy łatwy dostęp do danych i prosto nimi zarządzać. Z mojego doświadczenia, to rozwiązanie jest super efektywne, ale jak system staje się większy i złożony, to zaczynają się schody. Wtedy inne modele, jak relacyjne, mogą mieć więcej sensu. W branży często korzysta się z modelu jednorodnego, zwłaszcza tam, gdzie szybki dostęp do danych jest kluczowy, a sztywne struktury tylko przeszkadzają. Na codzień to naprawdę przydatna rzecz, jak ktoś nie chce się męczyć z komplikacjami.

Pytanie 19

Aby stworzyć poprawną kopię zapasową bazy danych, która będzie mogła zostać później przywrócona, należy najpierw sprawdzić

A. spójność bazy
B. możliwość udostępnienia bazy danych
C. uprawnienia dostępu do serwera bazy danych
D. poprawność składni zapytań
Spójność bazy danych jest kluczowym elementem, który należy sprawdzić przed wykonaniem kopii bezpieczeństwa, ponieważ zapewnia, że wszystkie dane są zgodne i nie zawierają błędów. Spójność oznacza, że wszelkie reguły i ograniczenia, takie jak klucze główne, klucze obce oraz unikalne indeksy, są spełnione. W przypadku naruszenia spójności, kopia bazy danych mogłaby zawierać uszkodzone lub niekompletne dane, co mogłoby uniemożliwić jej prawidłowe odtworzenie w przyszłości. Przykładem może być sytuacja, gdy mamy tabelę zamówień, która odwołuje się do tabeli klientów. Jeśli rekord klienta został usunięty, a zamówienia pozostają, to mamy do czynienia z naruszeniem spójności. Standardy, takie jak ACID (Atomicity, Consistency, Isolation, Durability), podkreślają znaczenie spójności w zarządzaniu bazami danych, co czyni ją niezbędnym krokiem w procesie tworzenia kopii zapasowych.

Pytanie 20

W jakim języku została napisana podana linia kodu

Ilustracja do pytania
A. C#
B. JavaScript
C. PHP
D. Python
Kod pokazany na obrazku jest zapisany w języku JavaScript. JavaScript jest językiem programowania, który odgrywa kluczową rolę w tworzeniu dynamicznych i interaktywnych stron internetowych. Linia kodu wykorzystuje metodę document.getElementById która jest częścią Document Object Model (DOM) w JavaScript. DOM pozwala na manipulację elementami HTML strony internetowej. W tym wypadku, metoda getElementById odwołuje się do elementu o identyfikatorze paragraf1, a właściwość innerHTML umożliwia zmianę zawartości tego elementu. To podejście jest powszechnie stosowane w celu dynamicznej aktualizacji treści na stronach bez konieczności przeładowania całej strony. Znajomość JavaScriptu pozwala na tworzenie bardziej responsywnych i atrakcyjnych wizualnie aplikacji webowych. JavaScript jest integralną częścią stosu technologii sieciowych i jest szeroko stosowany w praktycznie każdej nowoczesnej witrynie internetowej. Standardy ECMAScript definiują zasady i poprawne użycie JavaScript, co wspiera rozwój profesjonalny i zgodny z dobrymi praktykami.

Pytanie 21

Jakie mogą być źródła rekordów dla raportu?

A. tabela
B. inny raport
C. zapytanie INSERT INTO
D. zapytanie GRANT
Tabela jest podstawowym źródłem danych, które może być wykorzystane do generowania raportów w systemach zarządzania bazami danych (DBMS). Raporty są często tworzone w oparciu o zawartość tabel, które przechowują zorganizowane dane w postaci wierszy i kolumn. Przykładowo, w systemach takich jak SQL Server czy MySQL, można użyć zapytań SELECT, aby pobrać dane z tabel i zaprezentować je w formie raportu. Stosowanie tabel jako źródła informacji jest zgodne z zasadami normalizacji danych, co pozwala na minimalizację redundancji i zwiększa integralność danych. Dobre praktyki w tworzeniu raportów zakładają, że dane powinny być pobierane z tabel skonstruowanych zgodnie z zasadami projektowania baz danych, co zapewnia efektywność i łatwość w zarządzaniu informacjami. Oprócz tego, raporty mogą być wzbogacane o różne agregacje i analizy, co czyni je bardziej użytecznymi w podejmowaniu decyzji biznesowych. W praktyce, programiści i analitycy danych często korzystają z narzędzi do wizualizacji, takich jak Tableau czy Power BI, które łączą się z danymi w tabelach, aby generować interaktywne raporty i dashboardy.

Pytanie 22

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

A. JPG
B. CDR
C. BMP
D. PNG
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

Wśród technik rozwiązywania problemów w przedsiębiorstwie znajdują się: ignorowanie, separacja, arbitraż oraz kompromis. Wskaż metodę, która szczególnie może być niebezpieczna i prowadzić do zaostrzenia konfliktu w firmie?

A. kompromis
B. arbitraż
C. separacja
D. ignorowanie
Odpowiedzią, która wskazuje na technikę szczególnie ryzykowną, jest ignorowanie. Ignorowanie problemów w firmie może prowadzić do ich eskalacji, ponieważ nie podejmowanie działań w sytuacjach konfliktowych często prowadzi do narastających napięć. Przykładowo, jeśli zespół projektowy ma niezgodności co do metodologii pracy, a kierownik postanowi to zignorować, różnice mogą się pogłębiać, prowadząc do braku współpracy i obniżenia morale. W praktyce, ignorowanie konfliktów jest jednym z najczęstszych błędów w zarządzaniu, co potwierdzają standardy zarządzania projektami, takie jak PMBOK, które zalecają aktywne podejście do rozwiązywania konfliktów. Ignorowanie problemów nie tylko wpływa na dynamikę zespołu, ale także może wpłynąć na wyniki finansowe organizacji, ponieważ niewłaściwe zarządzanie konfliktami może prowadzić do opóźnień w projektach oraz zwiększonych kosztów. Z tego względu kluczowe jest, aby menedżerowie i liderzy nie bagatelizowali konfliktów, lecz podejmowali działania w celu ich rozwiązania oraz wprowadzenia kultury otwartej komunikacji w zespole.

Pytanie 24

W jaki sposób można ustawić w CSS wygląd hiperłącza, aby linki nieodwiedzone miały kolor żółty, a odwiedzone kolor zielony?

A. a:hover {color: yellow;} a:visited{color: green;}
B. a:visited {color: yellow;} a:link{color: green;}
C. a:link {color: yellow;} a:visited{color: green;}
D. a:hover {color: green;} a:link{color: yellow;}
Wszystkie niepoprawne odpowiedzi zawierają błędne przypisania kolorów do poszczególnych stanów hiperłączy. Przede wszystkim, nieodwiedzone linki powinny być w kolorze żółtym, a odwiedzone w kolorze zielonym. W pierwszym przypadku podano kolor żółty dla stanu visited, co jest niezgodne z oczekiwaniami użytkowników i standardami projektowania. Użytkownicy mogą być zdezorientowani, gdy odwiedzone linki nie różnią się wizualnie od tych, które są jeszcze nieodwiedzone. Ponadto, inne odpowiedzi sugerują użycie :hover zamiast :link. Pseudo-klasa :hover odnosi się do linków, gdy użytkownik najeżdża na nie kursorem, a nie do stanu odwiedzonego. To może prowadzić do sytuacji, w której kolor linku zmienia się w czasie interakcji, a nie na podstawie historii przeglądania, co jest niezgodne z zamierzonym celem. Niewłaściwe stylizowanie linków może również wpływać na dostępność strony, ponieważ użytkownicy oczekują, że kolor linków będzie wskazywał, czy dany link był już klikany. Z punktu widzenia standardów CSS oraz najlepszych praktyk programowania, ważne jest, aby zachować spójność i intuicyjność w stylizacji, a także unikać mylących kolorów i efektów, które mogą zaburzać doświadczenia użytkowników.

Pytanie 25

Baza danych gromadzi dane multimedialne, co wiąże się z koniecznością przechowywania znacznych ilości danych binarnych. Jakiego typu należy użyć dla takich danych?

A. DOUBLE
B. BLOB
C. LONGTEXT
D. ENUM
Typ BLOB (Binary Large Object) jest przeznaczony do przechowywania dużych ilości danych binarnych, takich jak obrazy, wideo czy dźwięki. W kontekście baz danych, BLOB umożliwia przechowywanie danych, które nie są łatwe do reprezentacji w postaci tekstowej. Dzięki zastosowaniu tego typu danych, można efektywnie zarządzać oraz przechowywać multimedia bez obawy o przekroczenie limitów rozmiarowych, które występują przy użyciu standardowych typów danych. Przykład praktycznego zastosowania BLOB można zobaczyć w systemach zarządzania treścią (CMS), gdzie obrazy i pliki wideo są przechowywane w bazie danych, co pozwala na ich łatwe wywoływanie i wyświetlanie na stronach internetowych. Warto zauważyć, że stosując BLOB, należy również brać pod uwagę najlepsze praktyki optymalizacji, takie jak przechowywanie samych plików na zewnętrznych serwerach i trzymanie jedynie ich referencji w bazie danych, co znacząco zwiększa wydajność systemu.

Pytanie 26

System baz danych gromadzi multimedia, co wiąże się z przechowywaniem znacznych ilości danych binarnych. Jakiego typu danych należy użyć w tym przypadku?

A. DOUBLE
B. LONGTEXT
C. BLOB
D. ENUM
Wybór innych typów danych, takich jak ENUM, DOUBLE czy LONGTEXT, do przechowywania danych multimedialnych jest nieodpowiedni z kilku powodów. ENUM jest typem danych służącym do przechowywania z góry zdefiniowanych wartości, co oznacza, że jego zastosowanie ogranicza się do małych zestawów danych, takich jak kategorie czy statusy, a nie do dużych, binarnych plików multimedialnych. Przykładowo, jeśli chcielibyśmy przechować obraz jako ENUM, napotkalibyśmy na problem z rozmiarem oraz elastycznością tego rozwiązania, co w praktyce byłoby nieefektywne. DOUBLE z kolei jest typem służącym do przechowywania liczb zmiennoprzecinkowych, co również nie ma zastosowania w kontekście danych binarnych, takich jak multimedia. Użycie DOUBLE do przechowywania plików audio czy wideo byłoby błędne, ponieważ nie jest on przystosowany do przechowywania danych binarnych, a jedynie do reprezentacji wartości numerycznych. LONGTEXT, mimo że może pomieścić dużą ilość danych tekstowych, również nie jest odpowiedni do przechowywania danych binarnych. Jest to typ przeznaczony do długich łańcuchów znaków, co nie pasuje do formatu plików multimedialnych, które wymagają innego podejścia. Użycie niewłaściwych typów danych w bazach danych może prowadzić do problemów z wydajnością, a także do trudności w zarządzaniu danymi. Dlatego ważne jest, aby dobrze rozumieć różnice między typami danych i ich zastosowaniem w praktyce, aby zapewnić optymalne przechowywanie i zarządzanie danymi w aplikacjach.

Pytanie 27

Jaką instrukcję pętli stosuje się do przeprowadzenia określonej liczby operacji na obiekcie lub zmiennej, która nie jest tablicą?

A. for
B. if
C. switch
D. foreach
Wybór instrukcji 'switch' jako odpowiedzi na pytanie o pętlę wykonującą określoną liczbę operacji jest błędny z podstawowego powodu, że 'switch' nie jest pętlą. Jest to struktura kontrolna używana do wyboru jednego z wielu bloków kodu do wykonania, w zależności od wartości zmiennej. Zastosowanie 'switch' jest zatem ograniczone do sytuacji, gdy chcemy wykonywać różne operacje w zależności od konkretnej wartości, a nie do powtarzania tych samych operacji wielokrotnie. Z kolei 'foreach' jest konstrukcją, która służy do iteracji przez kolekcje lub tablice, co również nie odpowiada na postawione pytanie o pętlę wykonującą ustaloną liczbę operacji na pojedynczej zmiennej. Użycie 'if' jest również mylące; jest to instrukcja warunkowa, która decyduje o tym, czy dany blok kodu powinien zostać wykonany w oparciu o spełnienie określonych warunków. W praktyce, błędne zrozumienie roli i funkcji tych konstrukcji często prowadzi do nieefektywnego kodu, który może być trudny do zrozumienia i utrzymania. Kluczowe jest zrozumienie różnicy pomiędzy strukturami kontrolnymi a pętlami, co pozwoli na właściwe podejście do programowania i skuteczne zarządzanie logiką aplikacji. Ważne jest, aby nauczyć się, kiedy używać każdej z tych konstrukcji, aby optymalizować kod i unikać nieporozumień.

Pytanie 28

Który z opisów komentarza odzwierciedla działanie funkcji zdefiniowanej w języku PHP ```function fun1($a, $b) { if($a > $b) return $a; elseif($b > $a) return $b; else return -1; }```?

A. /* Funkcja zwraca wyższą wartość spośród dwóch podanych, w przypadku równości zwraca -1 */
B. /* Funkcja zwraca niższą wartość spośród dwóch podanych, w przypadku równości zwraca -1 */
C. /* Funkcja zwraca niższą wartość spośród dwóch podanych, w przypadku równości zwraca wartość $a */
D. /* Funkcja zwraca wyższą wartość spośród dwóch podanych, w przypadku równości zwraca wartość $a */
Wszystkie pozostałe odpowiedzi nie oddają właściwego zachowania funkcji `fun1`. Przede wszystkim, twierdzenie, że funkcja zwraca wartość niższą z dwóch podanych, jest błędne. Funkcja została zaprojektowana w taki sposób, aby zwracać wartość wyższą, a nie niższą, co jest kluczowe dla zrozumienia jej działania. Stwierdzenie, że funkcja zwraca wartość -1 w przypadku równości, jest prawdziwe, jednak nieimplikuje ono, że zwraca wartość niższą, co wprowadza w błąd. Ponadto, odpowiedzi sugerujące, że w przypadku równości funkcja zwraca wartość `$a`, są również mylące - w rzeczywistości zwraca tylko -1, co wyraźnie wskazuje na brak różnicy. Tego typu nieporozumienia mogą wynikać z braku zrozumienia logiki warunkowej w programowaniu, gdzie zastosowane instrukcje `if` i `elseif` determinują, która wartość zostanie zwrócona. W programowaniu należy zawsze analizować wyniki funkcji oraz upewnić się, że dokumentacja odpowiada rzeczywistemu działaniu kodu. Dobre praktyki obejmują również testowanie funkcji oraz jasne komunikowanie jej działania w komentarzach, aby uniknąć takich nieporozumień w przyszłości.

Pytanie 29

Wskaźnik HTML, który umożliwia oznaczenie tekstu jako błędnego lub nieodpowiedniego poprzez jego przekreślenie, to jaki?

A. <em> </em>
B. <s> </s>
C.
D. <b> </b>
Znak <b> służy do pogrubienia tekstu, co jest użyteczne do wyróżnienia ważnych informacji, ale nie ma związku z oznaczaniem tekstu nieprawidłowego. Gdybyśmy użyli <b> do przekreślenia tekstu, wprowadzałoby to w błąd użytkowników, sugerując, że tekst jest istotny, podczas gdy powinien być wyraźnie oznaczony jako nieaktualny. Z drugiej strony, znacznik <em> jest używany do podkreślenia lub akcentowania tekstu, co nie jest odpowiednie w kontekście, w którym chcemy wskazać, że coś jest błędne lub przestarzałe. Użycie <em> w tym kontekście mogłoby prowadzić do nieporozumień, co do intencji autora. Z kolei <sub> oznacza tekst dolny, który jest używany głównie w kontekście chemicznym lub matematycznym, a nie do wskazywania, że coś jest nieprawidłowe. Wykorzystanie <sub> w tej sytuacji byłoby niewłaściwe, a użytkownicy mogliby błędnie zinterpretować znaczenie tego elementu. Kluczowym aspektem w tworzeniu treści internetowych jest stosowanie odpowiednich znaczników HTML zgodnych z ich przeznaczeniem, co wpływa na czytelność, dostępność oraz zrozumienie informacji. Niewłaściwe użycie znaczników może prowadzić do chaosu informacyjnego oraz utrudniać użytkownikom percepcję treści.

Pytanie 30

Jakie zapytanie pozwoli Administratorowi cofnąć uprawnienia do przeglądania oraz modyfikacji danych w bazie gazeta dla użytkownika redaktor?

A. REVOKE SELECT, UPDATE ON gazeta.* FROM 'redaktor'@'localhost';
B. REVOKE SELECT, ALTER ON gazeta.* FROM 'redaktor'@'localhost';
C. GRANT SELECT, ALTER ON gazeta.* TO 'redaktor'@'localhost';
D. GRANT SELECT, UPDATE ON gazeta.* TO 'redaktor'@'localhost';
Wybór innych odpowiedzi prowadzi do nieporozumień dotyczących zarządzania uprawnieniami w bazach danych. Na przykład, REVOKE SELECT, ALTER ON gazeta.* FROM 'redaktor'@'localhost'; jest niewłaściwe, ponieważ ALTER nie jest związane z przeglądaniem ani aktualizowaniem danych, lecz z modyfikowaniem struktury bazy danych, co nie jest celem tego pytania. Użytkownik mógłby mylnie uznać, że ALTER jest potrzebne do zarządzania danymi, jednak w rzeczywistości dotyczy to jedynie zmiany tabel, kolumn czy indeksów. Podobnie, polecenie GRANT SELECT, UPDATE ON gazeta.* TO 'redaktor'@'localhost'; jest całkowicie przeciwne do zamierzonego celu, ponieważ GRANT przyznaje uprawnienia, a nie je odbiera, co oznacza, że narusza zasadę, która miałaby zlikwidować dostęp do bazy danych. Ostatnia propozycja, GRANT SELECT, ALTER ON gazeta.* TO 'redaktor'@'localhost'; również jest fałszywa, ponieważ wprowadza dodatkowe uprawnienia, co może prowadzić do nieautoryzowanego dostępu do danych. Kluczowym błędem myślowym jest nieodróżnienie poleceń REVOKE i GRANT oraz nieznajomość różnicy między rodzajami uprawnień, co jest fundamentalne w zarządzaniu bezpieczeństwem danych.

Pytanie 31

Podczas weryfikacji pliku HTML5 pojawił się komunikat brzmiący: "Error: Element head is missing a required instance of child element title". Co to oznacza w kontekście dokumentu?

A. element <title> nie został prawidłowo zamknięty przez </title>.
B. element <title> nie jest konieczny.
C. nie zdefiniowano elementu <title> w sekcji <head> dokumentu.
D. nie zdefiniowano obowiązkowego atrybutu title w tagu <img>.
Wybierając odpowiedzi, które wskazują na inne problemy z elementem <title>, możesz się trochę pogubić jeśli chodzi o podstawowe zasady HTML5. Pamiętaj, że ten element jest obowiązkowy, a jak go brakuje w sekcji <head>, to pojawia się błąd, który pokazuje, że nie wszystko się zgadza z zasadami HTML. Myślenie, że <title> nie jest wymagany, to duży błąd, bo każda strona powinna mieć ten element, żeby działała poprawnie w przeglądarkach i wyszukiwarkach. Też stwierdzenie, że <title> nie jest zamknięty przez </title>, może sugerować, że myślisz, że ten element mógłby być opcjonalny, co jest nieprawdziwe. Jeśli masz <title>, to musi być on poprawnie zdefiniowany i zamknięty. A pomijanie atrybutu title w znaczniku <img> może być mylące, bo ten atrybut dotyczy opisu obrazków, a to wcale nie jest związane z tytułem dokumentu. Pamiętaj, że brak atrybutu alt w <img> może powodować problemy z dostępnością, ale nie wpływa na walidację sekcji <head>. Ważne jest, żeby zrozumieć kontekst i rolę każdego elementu HTML w budowie strony.

Pytanie 32

Który standard video cechuje się rozdzielczością 1920 px na 1080 px?

A. Ultra HD 
B. HD Ready
C. 4K
D. Full HD
Prawidłowa odpowiedź to „Full HD”, bo właśnie ten standard oznacza rozdzielczość 1920 × 1080 pikseli w proporcjach 16:9. W praktyce, gdy mówimy o filmach na YouTube, streamach, nagraniach z kamery czy materiałach promocyjnych na stronę WWW, opcja 1080p to właśnie Full HD. Litera „p” oznacza skanowanie progresywne (progressive), czyli wyświetlanie całych klatek po kolei, co daje płynniejszy obraz niż przeplot („i” jak interlaced). W branży webowej Full HD to taki „złoty standard” jakości wideo – pliki mają jeszcze rozsądny rozmiar, a obraz jest już bardzo szczegółowy, więc nadaje się zarówno do odtwarzania w przeglądarce, jak i do osadzania w prezentacjach czy materiałach e‑learningowych. Moim zdaniem, przy projektowaniu serwisu z treściami multimedialnymi, warto domyślnie przygotowywać materiały właśnie w 1920×1080 i ewentualnie generować niższe wersje (np. 1280×720) dla urządzeń mobilnych lub słabszych łączy. W pracy grafika czy twórcy stron WWW dobrze jest też kojarzyć nazwy standardów: HD Ready to 1280×720, Full HD to 1920×1080, a 4K/Ultra HD to okolice 3840×2160. Dzięki temu łatwiej dobrać odpowiedni format eksportu z programów typu Premiere, DaVinci Resolve czy nawet z prostszych edytorów online. Z doświadczenia powiem, że klienci często mówią „chcę film w HD”, a mają na myśli właśnie Full HD, więc świadomość dokładnej rozdzielczości pomaga uniknąć nieporozumień i zbyt niskiej jakości materiałów.

Pytanie 33

W pliku konfiguracyjnym serwera Apache httpd.conf linia kodu Listen 120 oznacza

A. czwarty oktet adresu IP serwera.
B. maksymalną liczbę jednoczesnych połączeń z sieci do serwera.
C. jeden z numerów kodu błędu odpowiedzi HTTP.
D. numer portu, na którym nasłuchuje serwer.
Dyrektywa „Listen 120” w konfiguracji Apache’a bywa mylona z różnymi innymi parametrami sieciowymi, ale w rzeczywistości ma jedno, dość konkretne znaczenie: określa numer portu, na którym serwer HTTP ma nasłuchiwać połączeń. Nie ma ona żadnego związku z poszczególnymi oktetami adresu IP. Adres IP składa się z czterech oktetów, ale są one zapisywane w formacie kropkowym, np. 192.168.0.120, i konfiguruje się je w systemie operacyjnym lub wirtualnym interfejsie sieciowym, a nie dyrektywą Listen. Czasem uczniowie patrzą na „120” i kojarzą to z ostatnim oktetem adresu, ale to skrót myślowy, który tutaj kompletnie nie pasuje. Innym typowym skojarzeniem jest powiązanie liczby z kodami odpowiedzi HTTP. Jednak kody statusu w protokole HTTP mają zdefiniowane zakresy: 1xx to odpowiedzi informacyjne, 2xx – sukces, 3xx – przekierowania, 4xx – błędy po stronie klienta, 5xx – błędy po stronie serwera. Kod 120 nie jest standardowym kodem odpowiedzi HTTP opisanym w specyfikacji RFC 7231 czy nowszych. Co ważne, kody odpowiedzi są wysyłane w treści protokołu HTTP, a nie konfigurowane w ten sposób w httpd.conf. Pojawia się też czasem przekonanie, że taka liczba mogłaby oznaczać limit jednoczesnych połączeń. Limity połączeń, procesów czy wątków w Apache’u definiuje się jednak innymi dyrektywami, zależnie od użytego MPM (np. MaxRequestWorkers, ServerLimit, ThreadsPerChild). Listen nie ustawia żadnych ograniczeń wydajnościowych, tylko określa punkt wejścia do usługi – numer portu i ewentualnie adres IP. Mylenie tych pojęć wynika moim zdaniem z mieszania warstwy transportowej (port, TCP) z logiką aplikacji (kody błędów) i parametrami wydajności. Dobra praktyka w administracji serwerem to wyraźne rozróżnianie: port = gdzie nasłuchuje serwer, kody HTTP = jak odpowiada na żądania, limity = ile ruchu jest w stanie obsłużyć równocześnie.

Pytanie 34

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

A. 24 do 30 fps
B. 20 do 23 fps
C. 16 do 19 fps
D. 31 do 36 fps
Odpowiedź '24 do 30 fps' jest na miejscu, bo w tym zakresie klatki na sekundę zapewniają naprawdę płynny obraz w filmach. Standard to 24 fps, co uznaje się za minimalną liczbę klatek, aby widzowie widzieli ruch jako gładki, a nie poskakujący. W praktyce w telewizji oraz przy niektórych formatach wideo można spotkać się z 30 fps, co jeszcze bardziej poprawia wrażenia wizualne. Warto tu wspomnieć, że wiele produkcji, zwłaszcza animacji, trzyma się tych standardów. Na przykład, filmy animowane z 24 fps mają dobrą dynamikę, ale w transmisjach sportowych często korzysta się z 30 fps, żeby lepiej uchwycić szybko poruszające się obiekty. Ostatecznie, trzymanie się tych standardów w filmach i telewizji to klucz do dobrego odbioru wizualnego.

Pytanie 35

Wskaż funkcję JavaScript, która umożliwia obliczenie połowy kwadratu liczby podanej jako argument.

A. function wynik(a) { return a*a/2; }
B. function wynik(a) { return a/2+a/2; }
C. function wynik(a) { return 2*a/a; }
D. function wynik(a) { return a*2/2; }
W analizie niepoprawnych odpowiedzi można zauważyć kilka typowych pomyłek, które prowadzą do błędnych obliczeń. Pierwsza z odpowiedzi, 'function wynik(a) { return a/2+a/2; }', jest myląca, ponieważ ta funkcja w rzeczywistości wykonuje dodawanie dwóch połówek liczby, co prowadzi do uzyskania wartości równiej 'a', a nie połowy kwadratu. W ten sposób nie realizuje postawionego celu. Druga propozycja, 'function wynik(a) { return a*2/2; }', również nie przynosi oczekiwanego rezultatu. Ta funkcja najpierw mnoży 'a' przez 2, a następnie dzieli przez 2, co ponownie prowadzi do wartości równej 'a'. Takie podejście jest nieefektywne i nie spełnia wymogów zadania. Kolejna odpowiedź, 'function wynik(a) { return 2*a/a; }', jest całkowicie błędna, ponieważ ta funkcja po prostu zwraca wartość 2, niezależnie od wartości 'a', co jest niezgodne z definicją obliczania połowy kwadratu liczby. W każdym z przypadków dostrzegamy brak zrozumienia podstawowych operacji arytmetycznych oraz ich zastosowania w kontekście funkcji. Typowym błędem jest skupienie się na manipulacji wartością 'a', zamiast zrozumienia, że celem jest obliczenie kwadratu tej liczby, a następnie podzielenie wyniku przez 2, co jest kluczowym elementem zadania.

Pytanie 36

Fragment formularza zaprezentowany powyżej został przetworzony w skrypcie PHP. Wskaż poprawny sposób pobierania wartości z pola edycyjnego.

Ilustracja do pytania
A. name = GET['imie']
B. $name = $POST['Imię']
C. name = $_GET[imie]
D. $name = $_POST['imie']
W przypadku niepoprawnych odpowiedzi kluczowym problemem jest niezrozumienie sposobu działania metod przesyłania danych w HTTP oraz odpowiedniego ich odczytywania w PHP. Odpowiedź z użyciem GET['imie'] pomija istotny element składniowy: znak dolara ($) przed GET, co jest konieczne w PHP dla wszystkich zmiennych. Ponadto, $_GET nie jest odpowiednia dla formularza, który został przesłany metodą POST jak w przedstawionym formularzu; użycie $_GET wskazuje na próbę pobrania danych z URL-a, co nie jest zgodne z metodą POST. Kolejna odpowiedź z użyciem $POST['Imię'] jest błędna z dwóch powodów: brak znaku dolara przy POST oraz niezachowanie poprawnej nazwy klucza który jest case-sensitive. Klucz 'Imię' różni się od 'imie' co prowadzi do błędu, gdy próbujemy odwołać się do nieistniejącego klucza. W PHP, nazwy kluczy w superglobalnych tablicach są case-sensitive, co oznacza, że każde odstępstwo od zadeklarowanej nazwy w formularzu będzie prowadziło do błędów. Te błędy często wynikają z pośpiechu lub niedokładności, co podkreśla wagę staranności i dokładności podczas pracy z kodem. Zarówno GET jak i POST mają swoje zastosowania, ale muszą być używane zgodnie z przeznaczeniem i w odpowiedni sposób, co jest kluczowe dla poprawnego działania aplikacji webowych. Zrozumienie tych różnic jest istotne dla programistów, aby unikać typowych pułapek związanych z bezpieczeństwem i funkcjonalnością aplikacji webowych. Poprawne użycie superglobalnych tablic PHP jest fundamentem tworzenia solidnych i bezpiecznych aplikacji internetowych.

Pytanie 37

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

A. aside {float: left; }
B. nav { float: left; } aside { float: left; }
C. nav { float: right; } section { float: right; }
D. nav { float: right; }
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. &lt;aside&gt;, potem &lt;section&gt;, a na końcu &lt;nav&gt;, 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 38

Podany poniżej kod źródłowy w języku C++ ma na celu wypisywanie dla wprowadzonych dowolnych liczb całkowitych różniących się od zera:

int main(){
    int liczba;
    cin >> liczba;
    while (liczba != 0)
    {
        if ((liczba % 2) == 0)
            cout << liczba << endl;
        cin >> liczba;
    }
    return 0;
}
A. liczby pierwsze
B. jedynie liczby parzyste
C. wszystkie liczby
D. tylko liczby nieparzyste
Kod źródłowy napisany w języku C++ ma na celu wypisywanie tylko liczb parzystych. Funkcja main() wczytuje liczbę całkowitą za pomocą cin, a następnie wchodzi w pętlę while, która trwa tak długo, jak długo wczytana liczba nie jest równa zero. Wewnątrz pętli, zastosowano sprawdzenie warunku, który definiuje, czy liczba jest parzysta, poprzez operator modulo: (liczba % 2) == 0. Jeśli wynik tego działania jest równy zero, liczba jest parzysta i zostaje wypisana na ekranie. Wszelkie inne liczby (nieparzyste) nie są wyświetlane. Przykładem praktycznego zastosowania tego kodu może być program do analizy danych liczbowych, gdzie chcemy zebrać tylko liczby parzyste do dalszej obróbki, na przykład w statystyce lub w aplikacjach finansowych. Praktyczne podejście do programowania w C++ wymaga znajomości takich konstrukcji jak pętle i warunki, co jest zgodne z najlepszymi praktykami inżynieryjnymi w branży oprogramowania.

Pytanie 39

Jakie uprawnienia będzie miał użytkownik jan po wykonaniu poniższych poleceń na bazie danych?

GRANT ALL PRIVILEGES ON klienci TO jan;
REVOKE SELECT, INSERT, UPDATE, DELETE ON klienci FROM jan;
A. Będzie mógł przeszukiwać dane w tabeli klienci.
B. Będzie mógł zmieniać strukturę tabeli klienci.
C. Będzie mógł dodawać rekordy do tabeli klienci.
D. Będzie mógł eliminować rekordy z tabeli klienci.
Odpowiedź "Będzie mógł zmienić strukturę tabeli klienci" jest prawidłowa, ponieważ użytkownik jan zyskał pełne uprawnienia do tabeli klienci za pomocą polecenia GRANT ALL PRIVILEGES. Oznacza to, że posiada on wszystkie dostępne uprawnienia w tym zakresie, w tym możliwość modyfikacji struktury tabeli, co obejmuje dodawanie lub usuwanie kolumn, zmienianie typów danych oraz wprowadzanie modyfikacji do indeksów. Jednakże, zastosowane polecenie REVOKE powoduje odebranie wybranych uprawnień, tj. SELECT, INSERT, UPDATE oraz DELETE. W związku z tym, mimo że jan może zmieniać strukturę tabeli, nie ma już możliwości wprowadzania, usuwania ani przeglądania danych. Praktycznie, na przykład, jeżeli jan chciałby dodać nową kolumnę do tabeli klienci, ma taką możliwość, jednak nie będzie mógł dodać nowych rekordów ani ich edytować. To podejście jest zgodne z najlepszymi praktykami zarządzania uprawnieniami w systemach baz danych, gdzie ważne jest precyzyjne określenie, jakie operacje mogą być realizowane przez różnych użytkowników.

Pytanie 40

Tabela samochody zawiera poniższe rekordy.

idklasa_idmarkamodelrocznik
11fordka2017
22seattoledo2016
33opelzafira2018
42fiat500X2018
53opelinsignia2017
Po wykonaniu podanego zapytania SQL, jakie dane zostaną zwrócone?
SELECT model FROM samochody WHERE rocznik > 2017 AND marka = "opel";
A. opel zafira
B. zafira; insignia
C. opel zafira; opel insignia
D. zafira
Twoja odpowiedź jest nieprawidłowa, co sugeruje, że możesz nie do końca rozumieć, jak działa zapytanie SQL. Wszystkie odpowiedzi, które zawierały więcej niż jeden model samochodu, są niepoprawne, ponieważ zapytanie SQL jest skonstruowane tak, aby zwrócić tylko te modele, które spełniają oba warunki - markę 'opel' i rocznik większy niż 2017. W przypadku odpowiedzi zawierających tylko model 'zafira', ale bez wskazania marki, jest to błąd, ponieważ zapytanie SQL również wymaga, aby marka była równa 'opel'. W praktyce, błędy w konstrukcji zapytań SQL mogą prowadzić do błędnych wyników i potencjalnie do poważnych błędów w analizie danych lub oprogramowaniu. Dlatego, ważne jest, aby zrozumieć, jak prawidłowo konstruować zapytania SQL i jakie wyniki one zwracają.