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: 30 kwietnia 2026 22:18
  • Data zakończenia: 30 kwietnia 2026 22:18

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

W języku SQL, aby usunąć wszystkie rekordy z tabeli, nie eliminując jej samej, można skorzystać z polecenia

A. TRUNCATE
B. ALTER
C. DROP
D. UPDATE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie TRUNCATE w języku SQL jest używane do usunięcia wszystkich danych z tabeli w sposób szybki i efektywny, bez potrzeby usuwania samej tabeli. TRUNCATE działa na poziomie struktury bazy danych, co oznacza, że nie zapisuje informacji o usuniętych rekordach w dzienniku transakcji, co czyni operację znacznie szybszą w porównaniu do innych metod, takich jak DELETE. W praktyce, gdy chcesz zresetować tabelę do stanu pustego, TRUNCATE jest najlepszym wyborem. Przykładem zastosowania może być sytuacja, gdy tabela tymczasowa zawiera dane, które nie są już potrzebne po zakończeniu procesu przetwarzania. W takim przypadku użycie polecenia TRUNCATE pozwala na szybkie usunięcie wszystkich rekordów, a sama struktura tabeli pozostaje nienaruszona do przyszłego użycia. Dobrą praktyką jest również stosowanie TRUNCATE w sytuacjach, gdzie nie potrzebujemy zachować historii operacji na danych, co zwiększa wydajność bazy danych. Zgodnie z zaleceniami standardów SQL, TRUNCATE jest bardziej odpowiednie do operacji na dużych zbiorach danych, gdyż minimalizuje czas operacji i obciążenie systemu.

Pytanie 2

Aby sprawdzić, czy kod JavaScript działa poprawnie, należy skorzystać z

A. konsoli w przeglądarce internetowej
B. kompilatora C++
C. interpretera PHP
D. interpretera PERL

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Konsola w przeglądarce to świetne narzędzie do sprawdzania i naprawiania kodu JavaScript. Dzięki niej możesz od razu zobaczyć, co działa, a co nie. Na przykład, kiedy wpiszesz `console.log('Hello, World!');`, to od razu zobaczysz wynik w konsoli. To bardzo fajny sposób na szybkie testowanie, bo nie musisz czekać ani niczego dodatkowo uruchamiać. Konsola ma też sporo innych przydatnych funkcji, jak inspekcja obiektów czy monitorowanie zdarzeń, więc naprawdę warto się z nią zaprzyjaźnić. Właściwie, każda popularna przeglądarka, jak Chrome czy Firefox, dodaje różne ciekawe opcje, które pomagają w debugowaniu. Z mojego doświadczenia, korzystanie z konsoli to kluczowy element nauki i pracy z JavaScript.

Pytanie 3

W instrukcji warunkowej języka JavaScript należy zweryfikować sytuację, w której wartość zmiennej a mieści się w zakresie (0, 100), a wartość zmiennej b jest większa od zera. Taki warunek można zapisać w sposób następujący

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

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wybór odpowiedzi 'if (a>0 && a<100 && b>0)' jest prawidłowy, ponieważ precyzyjnie spełnia określone wymagania zawarte w pytaniu. Warunek ten sprawdza, czy zmienna 'a' mieści się w przedziale od 0 do 100 (wyłączając 0 i 100), a także potwierdza, że zmienna 'b' jest większa od zera. Operator '&&' (AND) jest kluczowy w tym przypadku, ponieważ wymaga spełnienia wszystkich zdefiniowanych warunków jednocześnie. Przykładowo, jeśli mamy zmienne 'a' równe 50 i 'b' równe 10, to warunek zostanie spełniony i kod wewnątrz instrukcji 'if' zostanie wykonany. Zastosowanie takich warunków jest powszechne w programowaniu, zwłaszcza w sytuacjach wymagających walidacji danych, gdzie musimy upewnić się, że wszystkie kryteria są spełnione przed kontynuowaniem dalszych operacji. Standardy kodowania zalecają wykorzystanie prostych i jednoznacznych instrukcji warunkowych, co przyczynia się do lepszej przejrzystości i utrzymywalności kodu. Stosując odpowiednią logikę w warunkach, minimalizujemy ryzyko wystąpienia błędów w logice aplikacji.

Pytanie 4

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. wykluczenia.
B. grupowania.
C. sumy.
D. części wspólnej.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowo – w filmie została użyta funkcja grupowania. W grafice wektorowej, np. w programach typu Inkscape, CorelDRAW czy Illustrator, grupowanie służy właśnie do logicznego połączenia kilku obiektów w jeden „zestaw”, ale bez trwałego mieszania ich geometrii. To znaczy: tekst dalej pozostaje tekstem, wielokąt dalej jest wielokątem, tylko są traktowane jak jeden obiekt przy przesuwaniu, skalowaniu czy obracaniu. Dzięki temu operacja jest w pełni odwracalna – w każdej chwili możesz rozgrupować elementy i edytować każdy osobno. Moim zdaniem to jest podstawowa dobra praktyka w pracy z projektami, które mogą wymagać późniejszych poprawek: podpisy, etykiety, logotypy, schematy techniczne. Jeśli połączysz tekst z kształtem za pomocą operacji boolowskich (suma, część wspólna, wykluczenie), to tekst zwykle zamienia się na krzywe, przestaje być edytowalny jako tekst. To bywa potrzebne przy przygotowaniu do druku czy eksportu do formatu, który nie obsługuje fontów, ale nie wtedy, gdy zależy nam na łatwej edycji. Z mojego doświadczenia: przy projektowaniu interfejsów, ikon, prostych banerów na WWW czy grafik do multimediów, najrozsądniej jest najpierw grupować logicznie elementy (np. ikona + podpis), a dopiero na samym końcu, gdy projekt jest ostateczny, ewentualnie zamieniać tekst na krzywe. Grupowanie pozwala też szybko zaznaczać całe moduły projektu, wyrównywać je względem siebie, duplikować całe zestawy (np. kafelki menu, przyciski z opisami) bez ryzyka, że coś się rozjedzie. W grafice komputerowej to taka podstawowa „organizacja pracy” – mniej destrukcyjna niż różne operacje na kształtach i zdecydowanie bardziej elastyczna przy późniejszych zmianach.

Pytanie 5

Jaką kompetencję społeczną możemy przypisać osobie, która potrafi wyrażać swoje zdanie oraz argumentować swoje racje, nie naruszając przy tym granic własnych i innych ludzi?

A. Konformizm
B. Asertywność
C. Akomodacja
D. Empatia

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Asertywność to umiejętność wyrażania swoich myśli, uczuć i przekonań w sposób pewny, ale z szacunkiem dla innych. Osoba asertywna potrafi argumentować swoje racje, nie naruszając przestrzeni emocjonalnej innych ludzi. Na przykład, w sytuacji konfliktu w pracy, osoba asertywna z łatwością przedstawi swoje stanowisko, jednocześnie słuchając argumentów drugiej strony. Asertywność jest kluczowa w budowaniu zdrowych relacji interpersonalnych, ponieważ pozwala na otwartą komunikację i wyrażanie potrzeb bez wywoływania antagonizmu. W praktyce asertywność jest często stosowana w negocjacjach, gdzie ważne jest, aby jasno przedstawiać swoje oczekiwania, ale również być otwartym na propozycje partnera. Standardy komunikacji interpersonalnej podkreślają rolę asertywności jako fundamentu dla efektywnego działania w zespole i rozwiązywania konfliktów. Właściwe stosowanie asertywności przyczynia się do tworzenia środowiska sprzyjającego współpracy i wzajemnemu szacunkowi.

Pytanie 6

Jeśli zmienna $x przechowuje dowolną dodatnią liczbę naturalną, przedstawiony kod źródłowy PHP ma za zadanie wyświetlić:

$licznik = 0;
while ($licznik != $x)
{
    echo $licznik;
    $licznik++;
}
A. liczby wczytywane z klawiatury, tak długo aż zostanie wczytana wartość x
B. losowe liczby z przedziału (0, x)
C. kolejne liczby od 0 do x-1
D. kolejne liczby od x do 0

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Właściwa odpowiedź sugeruje, że kod PHP wyświetla liczby naturalne od 0 do x-1. Przez inicjalizację zmiennej $licznik wartością 0 i stopniowe zwiększanie jej wartości o 1 w każdej iteracji pętli while, aż do osiągnięcia wartości $x, proces ten jest realizowany. Jest to typowy przykład użycia pętli while w programowaniu, gdzie chcemy wykonać dane działanie wielokrotnie, zazwyczaj do momentu, gdy spełniony jest określony warunek. Zastosowanie takiego podejścia jest powszechne nie tylko w PHP, ale w większości języków programowania. W tym konkretnym przypadku, zastosowanie pętli while pozwala na efektywne wygenerowanie liczby naturalnej w określonym zakresie, co jest często potrzebne w różnych algorytmach czy operacjach matematycznych.

Pytanie 7

Delegacja domeny to

A. zmiana rejestratora domeny.
B. umieszczenie informacji o zewnętrznych serwerach, które obsługują stronę.
C. utrata okresu ważności domeny z możliwością odnowienia jej.
D. zmiana nazwy domeny.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowo – delegacja domeny to właśnie umieszczenie informacji o zewnętrznych serwerach nazw (DNS), które obsługują daną domenę. W praktyce oznacza to, że w panelu rejestratora domeny wskazujesz adresy serwerów DNS (np. ns1.hosting.pl, ns2.hosting.pl), a od tego momentu to one odpowiadają za tłumaczenie nazwy domeny na adresy IP serwerów WWW, poczty itd. Moim zdaniem to jedno z kluczowych pojęć w administracji usługami internetowymi, bo bez poprawnej delegacji domena „nie istnieje” w praktycznym użyciu. Delegacja nie zmienia samej nazwy domeny, nie przenosi jej do innego rejestratora, tylko mówi światu: „tej domeny szukaj na tych konkretnych serwerach DNS”. W dobrych praktykach branżowych używa się co najmniej dwóch serwerów DNS, najlepiej w różnych lokalizacjach, żeby zwiększyć niezawodność. W panelu hostingodawcy zwykle konfigurujesz rekordy DNS (A, AAAA, CNAME, MX, TXT itd.), a w panelu rejestratora tylko delegujesz domenę na te serwery. Przykład z życia: kupujesz domenę w firmie A, a hosting masz w firmie B. Wtedy w firmie A ustawiasz delegację na serwery DNS firmy B. Dzięki temu ruch do Twojej domeny trafia na właściwy serwer WWW. W dużych projektach często deleguje się domenę na profesjonalne usługi DNS (np. Cloudflare), żeby zyskać dodatkowe funkcje jak CDN, ochrona przed DDoS czy łatwe zarządzanie rekordami. To wszystko dalej opiera się na tym samym mechanizmie – poprawnej delegacji domeny w rejestrze.

Pytanie 8

Wynikiem działania poniższej pętli for w przedstawionym kodzie PHP jest wyświetlenie liczb:

<?php
   for($i=5;$i>1;$i-=2)
       echo ($i%2)." ";
?>
A. 1 0 1 0
B. 1 0 1
C. 1 0
D. 1 1

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to 1 1, ponieważ analizując przedstawioną pętlę for, zaczynamy od zmiennej $i, która ma wartość 5. Pętla będzie działać tak długo, jak wartość $i jest większa od 1. W każdym kroku $i jest zmniejszane o 2, co oznacza, że w kolejnych iteracjach przyjmuje wartości 5, 3, a następnie 1. Wartości te są poddawane operacji modulo 2. Operacja modulo zwraca resztę z dzielenia, która dla liczb nieparzystych (5 i 3) wynosi 1 oraz dla liczby parzystej (0) wynosi 0. Zatem, w pierwszej iteracji, $i = 5, 5 % 2 = 1, a w drugiej iteracji, $i = 3, 3 % 2 = 1. Ostatecznie, pętla nie wykonuje się, gdy $i = 1, ponieważ warunek $i > 1 nie jest już spełniony. W rezultacie, poprawnym wynikiem działania tego fragmentu kodu jest wyświetlenie dwóch wartości 1. Przykład zastosowania takiej konstrukcji można znaleźć w sytuacjach, w których chcemy przetworzyć kolekcję liczb i wyodrębnić ich parzystość lub nieparzystość, co jest powszechną operacją w programowaniu.

Pytanie 9

Interpreter PHP zwróci błąd i zaniecha wykonania kodu, jeżeli programista

A. będzie definiował zmienne w obrębie warunku
B. nie umieści średnika po wyrażeniu w instrukcji if, jeśli za nim znajduje się sekcja else
C. pobierze wartość z formularza, w którym pole input nie zostało wypełnione
D. będzie tworzył kod bez odpowiednich wcięć

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Niepostawienie średnika po wyrażeniu w instrukcji if, gdy następuje sekcja else, prowadzi do błędu składniowego w PHP. W języku PHP średnik jest używany do zakończenia instrukcji, co oznacza, że każda linia kodu, która stanowi osobną instrukcję, powinna być zakończona średnikiem. W przypadku używania instrukcji warunkowej if z sekcją else, zastosowanie średnika po pierwszej instrukcji (if) jest kluczowe. Przykładowo, poprawny kod wyglądałby tak: "if ($warunek) { //kod } else { //kod }". Jeśli pominiemy średnik po instrukcji if, interpreter PHP nie będzie w stanie prawidłowo zinterpretować kodu, co skutkuje błędem. Jest to zgodne z dobrymi praktykami programowania, które zalecają dbałość o szczegóły w składni, aby uniknąć błędów podczas wykonywania skryptów. Praktyka ta jest istotna, szczególnie w większych projektach, gdzie błędy składniowe mogą prowadzić do trudnych do zdiagnozowania problemów.

Pytanie 10

Którą wartość atrybutu name znacznika <meta> wykorzystuje się do kontrolowania obszaru widzialnego na różnych urządzeniach, na których jest wyświetlana strona internetowa?

A. description
B. keywords
C. viewport
D. generator

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie wskazana została wartość „viewport”. W praktyce właśnie meta name="viewport" służy do kontrolowania tzw. obszaru widzialnego (ang. viewport) na urządzeniach mobilnych i desktopowych. Przeglądarka mobilna domyślnie zakłada szeroką stronę i sztucznie ją pomniejsza, żeby „zmieściła się” na ekranie telefonu. Dopiero meta viewport mówi jej: potraktuj szerokość ekranu urządzenia jako bazową szerokość strony. Najczęściej spotykana, zgodna z dobrymi praktykami konstrukcja to: <meta name="viewport" content="width=device-width, initial-scale=1.0">. Parametr width=device-width ustawia szerokość obszaru widzialnego na szerokość ekranu urządzenia, a initial-scale=1.0 definiuje początkowe powiększenie. Dzięki temu layout responsywny oparty na media queries w CSS działa poprawnie, bez dziwnych przeskalowań i zbyt małej czcionki. W nowoczesnym front-endzie przyjmuje się, że każda strona, która ma być używalna na telefonach, tabletach i laptopach, powinna mieć prawidłowo ustawiony meta viewport. Moim zdaniem to jest absolutna podstawa RWD, zaraz obok poprawnego użycia jednostek względnych (np. %, vw, em) i zaprojektowania siatki w CSS. Warto też pamiętać, żeby nie przesadzać z blokowaniem powiększania (np. user-scalable=no), bo to pogarsza dostępność strony dla osób słabiej widzących i jest uznawane za złą praktykę. Podsumowując: jeśli chcesz mieć stronę, która naprawdę „żyje” na różnych ekranach, meta name="viewport" to obowiązkowy element w sekcji <head>.

Pytanie 11

W instrukcji warunkowej w języku JavaScript należy zweryfikować sytuację, w której zmienne a i b są większe od zera, przy czym zmienna b nie przekracza wartości 100. Taki warunek powinien być zapisany w następujący sposób:

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

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Warunek zapisany jako 'if (a > 0 && b > 0 && b < 100)' jest prawidłowy, ponieważ spełnia wszystkie wymagane kryteria. Składnia tego wyrażenia logicznego wskazuje, że zarówno zmienna 'a' musi być większa od zera, jak i zmienna 'b' musi być większa od zera oraz mniejsza od 100. Użycie operatora '&&' (AND) oznacza, że wszystkie warunki muszą być spełnione, aby blok kodu wewnątrz instrukcji 'if' został wykonany. To jest zgodne z najlepszymi praktykami programowania, które zalecają, aby warunki były wyraźnie zdefiniowane i logicznie powiązane, aby uniknąć nieporozumień i błędów. W praktycznych zastosowaniach, jeśli chcemy np. przyznać użytkownikowi dostęp do systemu tylko wtedy, gdy spełnione są konkretne kryteria, takie podejście zapewnia, że nasze instrukcje są wykonywane tylko w odpowiednich okolicznościach. Dodatkowo, definiując precyzyjnie nasze warunki, zwiększamy czytelność kodu, co jest kluczowe w projektach zespołowych, gdzie wiele osób może pracować nad tym samym kodem.

Pytanie 12

Na ilustracji pokazano tabelę z połączonymi komórkami. Jakie atrybuty scalania zastosowano, aby uzyskać ten efekt?

Ilustracja do pytania
A. colspan w drugim wierszu i pierwszej komórce oraz rowspan w trzecim wierszu i czwartym wierszu
B. colspan w drugim wierszu we wszystkich trzech komórkach oraz rowspan w trzecim wierszu ostatniej komórce
C. rowspan w drugim wierszu i pierwszej komórce oraz colspan w trzecim wierszu, trzeciej komórce
D. colspan w drugim wierszu i pierwszej komórce oraz rowspan w trzecim wierszu, trzeciej komórce

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest prawidłowa, ponieważ zastosowanie atrybutów colspan i rowspan w tabeli HTML pozwala na efektywne zarządzanie układem danych. Atrybut colspan w drugiej komórce pierwszego wiersza łączy dwie komórki poziomo, co jest użyteczne, gdy chcemy, aby nagłówki lub dane rozciągały się na kilka kolumn. W trzecim wierszu, atrybut rowspan w trzeciej komórce łączy trzy komórki pionowo, co może być przydatne, gdy mamy dane, które powinny być przedstawione obok siebie w kilku rzędach. Tego typu operacje scalania są powszechnie stosowane w projektowaniu stron internetowych, szczególnie w przypadku układów, które wymagają elastyczności i skalowalności. W praktyce, takie podejście pozwala na lepsze wykorzystanie przestrzeni ekranowej i ułatwia czytelność danych. Dobrą praktyką jest również stosowanie CSS do dodatkowego stylizowania takich tabel, co zwiększa ich atrakcyjność wizualną. Ważne jest, aby zrozumieć, że używanie colspan i rowspan wpływa na dostępność danych, dlatego należy je stosować świadomie i z uwzględnieniem użytkowników korzystających z technologii wspomagających.

Pytanie 13

Poleceniem SQL służącym do wstawiania nowego rekordu z danymi jest

A. CREATE
B. INSERT INTO
C. ADD
D. UPDATE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to `INSERT INTO`, bo właśnie tym poleceniem w SQL dodajemy nowe rekordy (wiersze) do tabeli w bazie danych. W praktyce wygląda to najczęściej tak: `INSERT INTO klienci (imie, nazwisko, email) VALUES ('Jan', 'Kowalski', '[email protected]');`. Silnik bazy danych (np. MySQL, PostgreSQL, SQL Server) odczytuje listę kolumn, dopasowuje do nich wartości z sekcji `VALUES` i tworzy nowy wiersz. To jest podstawowa operacja DML (Data Manipulation Language), obok `UPDATE`, `DELETE` i `SELECT`. W dobrych praktykach zawsze warto jawnie podawać listę kolumn po `INSERT INTO`, zamiast polegać na kolejności kolumn w tabeli. Dzięki temu, gdy ktoś doda nową kolumnę do tabeli albo zmieni ich kolejność, nasze zapytania się nie „wysypią” albo – co gorsza – nie wstawią danych w złe pola. Moim zdaniem to jest jedna z tych rzeczy, które odróżniają kod „na szybko” od kodu, który można utrzymywać latami. Warto też pamiętać o kwestii typów danych: wartości podawane w `VALUES` muszą pasować do typów kolumn (np. tekst w `VARCHAR`, liczba w `INT`, data w `DATE`). W aplikacjach webowych zapytania `INSERT` bardzo często pojawiają się przy obsłudze formularzy – np. rejestracja użytkownika, zapis zamówienia, dodawanie komentarza. Dobrą praktyką jest również używanie parametrów zapytań (prepared statements), a nie sklejanie stringów, żeby uniknąć podatności na SQL Injection. Podsumowując: jeśli chcesz dodać nowy rekord do istniejącej tabeli, standard SQL przewiduje właśnie `INSERT INTO` jako właściwe i jedyne poprawne polecenie do tego celu.

Pytanie 14

Baza danych 6-letniej szkoły podstawowej zawiera tabelę uczniowie z kolumnami: imie, nazwisko, klasa. Wszyscy uczniowie w klasach 1 - 5 zaliczyli do następnej klasy. Aby zwiększyć wartość w kolumnie klasa o 1, należy wykorzystać następujące polecenie

A. SELECT nazwisko, imie FROM klasa=klasa+1 WHERE klasa>1 OR klasa<5;
B. UPDATE uczniowie SET klasa=klasa+1 WHERE klasa>=1 AND klasa<=5;
C. UPDATE nazwisko, imie SET klasa=klasa+1 WHERE klasa>1 OR klasa<5;
D. SELECT uczniowie FROM klasa=klasa+1 WHERE klasa>=1 AND klasa<=5;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to 'UPDATE szkola SET klasa=klasa+1 WHERE klasa>=1 AND klasa<=5;'. To polecenie SQL jest zgodne z praktykami stosowanymi do aktualizacji danych w bazach danych. Funkcja UPDATE służy do modyfikacji istniejących rekordów w tabeli. W tym przypadku chcemy zwiększyć wartość w kolumnie 'klasa' dla wszystkich uczniów, którzy są obecnie w klasach od 1 do 5. Warunek 'WHERE klasa>=1 AND klasa<=5' zapewnia, że tylko uczniowie z tych klas zostaną zaktualizowani, co jest zgodne z logiką biznesową wskazującą, że wszyscy uczniowie klas 1-5 zdali do następnej klasy. Dzięki temu mamy pewność, że operacja jest przeprowadzana w bezpieczny sposób, minimalizując ryzyko błędów w danych. W praktyce, takie operacje są często stosowane, np. na koniec roku szkolnego, gdy uczniowie przechodzą do wyższej klasy. Ponadto, w kontekście najlepszych praktyk, ważne jest, aby przed wykonaniem operacji UPDATE przeprowadzić odpowiednie zabezpieczenia, takie jak tworzenie kopii zapasowych danych, aby uniknąć utraty informacji.

Pytanie 15

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

A. font-weight: Verdana;
B. font-name: Verdana;
C. font-family: Verdana;
D. font-style: Verdana;

Brak odpowiedzi na to pytanie.

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

Pytanie 16

Która z poniższych funkcji w języku PHP zamienia słowo "kota" na "mysz" w ciągu "ala ma kota"?

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

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź str_replace( "kota", "mysz", "ala ma kota") jest prawidłowa, ponieważ funkcja str_replace w PHP jest dedykowana do zastępowania określonych ciągów znaków innymi ciągami w danym tekście. W tym przypadku, str_replace przyjmuje trzy argumenty: pierwszy to ciąg, który chcemy zamienić ("kota"), drugi to ciąg, na który chcemy zamienić ("mysz"), a trzeci to tekst, w którym dokonujemy zamiany ("ala ma kota"). Funkcja przeszukuje tekst i zamienia wszystkie wystąpienia pierwszego argumentu na drugi. W praktyce, jeśli potrzebujemy na przykład zmienić fragmenty tekstu w aplikacji internetowej lub podczas przetwarzania danych, stosowanie str_replace jest bardzo efektywne i powszechnie uznawane za najlepszą praktykę w PHP. Dzięki tej funkcji programiści mogą łatwo modyfikować teksty w bazach danych lub na stronach internetowych, co zwiększa ich elastyczność oraz zwiększa wygodę użytkowników. Z tego powodu, zrozumienie działania str_replace jest kluczowe dla efektywnego programowania w PHP.

Pytanie 17

W bazie danych produkt znajdują się artykuły wyprodukowane po 2000 roku, zawierające pola nazwa oraz rok_produkcji. Klauzula SQL wyświetli zestawienie artykułów wyprodukowanych

SELECT * FROM `produkt` WHERE
SUBSTR(rok_produkcji, 3, 2) = 17;
A. po roku 2017
B. w roku 2017
C. w latach innych niż 2017
D. przed rokiem 2017

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W tej klauzuli SQL, co widzimy, filtrujemy dane z tabeli produkt. Użycie funkcji SUBSTR(rok_produkcji, 2) pozwala nam wyciągnąć dwie ostatnie cyfry z roku produkcji. To jest super przydatne, bo dzięki temu możemy uzyskać rok w formacie dwu-cyfrowym. Jak porównujemy to z 17, to znaczy, że szukamy rekordów, których rok produkcji kończy się na 17, co odpowiada pełnemu roku, czyli 2017. Takie podejście ma sens, gdy chcemy szybko przeszukać dane dotyczące konkretnego roku, nie bawiąc się w cały numer. Umiejętność korzystania z funkcji tekstowych w SQL, jak SUBSTR, jest naprawdę istotna w analizie danych, szczególnie gdy struktura tabeli nie pozwala na łatwe użycie wartości liczbowych. Ludzie pracujący z bazami danych powinni znać te sztuczki, bo to pozwala na lepsze dopasowanie filtracji danych do potrzeb. Fajne jest też dokumentowanie takich zapytań, żeby inni mogli zrozumieć, o co chodzi.

Pytanie 18

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

A. relacyjnym
B. hierarchicznym
C. jednorodnym
D. sieciowym

Brak odpowiedzi na to pytanie.

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

W zapytaniu SQL, umieszczonym w ramce, symbol gwiazdki wskazuje, że w wyniku tego zapytania

Ilustracja do pytania
A. zostaną wyświetlone wszystkie kolumny tabeli mieszkańcy
B. zostanie pominięty warunek dotyczący imienia
C. zostanie pokazane pole o nazwie "*" (gwiazdka)
D. zostaną wyświetlone wszystkie wpisy z tabeli mieszkańcy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W zapytaniach SQL użycie znaku gwiazdki (*) po klauzuli SELECT jest częstą praktyką, która wskazuje na potrzebę wyświetlenia wszystkich kolumn z tabeli wynikowej. W kontekście zapytania SELECT * FROM mieszkańcy WHERE imie = 'Anna'; oznacza to, że zostaną zwrócone wszystkie kolumny dla rekordów, które spełniają warunek imie='Anna'. Jest to szybki sposób na uzyskanie pełnych danych dla określonych kryteriów bez konieczności wyszczególniania nazw kolumn, co może być szczególnie przydatne w przypadku tabel o dużej liczbie kolumn. Ważnym aspektem jest tutaj optymalizacja zapytań; choć użycie * jest wygodne, w dużych zbiorach danych lepiej jest selekcjonować tylko te kolumny, które są rzeczywiście potrzebne do analizy, co zmniejsza obciążenie bazy danych i poprawia wydajność. W praktykach branżowych zaleca się również zwracanie uwagi na bezpieczeństwo danych i dostępność użytkowników do informacji, szczególnie w kontekście RODO i innych regulacji dotyczących ochrony danych osobowych.

Pytanie 20

W języku JavaScript trzeba sformułować warunek, który będzie spełniony, gdy zmienna a będzie dowolną liczbą naturalną dodatnią (więcej niż 0) lub gdy zmienna b będzie dowolną liczbą z przedziału domkniętego od 10 do 100. Wyrażenie logiczne w tym warunku powinno mieć postać

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:
Poprawna odpowiedź (a > 0) || ((b >= 10) && (b <= 100)) uwzględnia wymaganie, aby warunek był spełniony, gdy zmienna a jest liczbą naturalną dodatnią bądź zmienna b znajduje się w przedziale od 10 do 100, włącznie. W tym przypadku użycie operatora logicznego '||' (lub) jest kluczowe, ponieważ wystarczy, że jeden z warunków będzie prawdziwy, aby cały warunek był spełniony. Przykładem może być skrypt walidujący dane wejściowe użytkownika: jeśli zmienna a przechowuje wartość 5 (czyli liczbę naturalną dodatnią), to niezależnie od wartości zmiennej b, warunek będzie prawdziwy. Analogicznie, jeśli a wynosi 0, a b = 15, warunek również będzie spełniony, ponieważ b mieści się w wymaganym przedziale. Taka konstrukcja warunku jest zgodna z dobrą praktyką programistyczną, gdyż pozwala na jasne i zrozumiałe określenie, kiedy pewne zasady powinny być stosowane. Zastosowanie operatorów logicznych w taki sposób wspiera tworzenie czytelnych i elastycznych warunków, co jest istotne w kontekście utrzymania kodu i jego przyszłych modyfikacji.

Pytanie 21

Która zasada dotyczy programowania strukturalnego? 

A. Dla powtarzających się sekwencji instrukcji należy tworzyć procedury i funkcje.
B. W kodzie programu należy często korzystać z instrukcji skoku goto.
C. Nie można korzystać z instrukcji warunkowych if. 
D. Można tworzyć obiekty składające się z pól i metod.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź dobrze oddaje jedną z kluczowych zasad programowania strukturalnego: jeśli w programie pojawiają się powtarzające się sekwencje instrukcji, należy je wydzielać do osobnych procedur i funkcji. Chodzi o to, żeby kod był podzielony na logiczne bloki, które coś konkretnego robią i można je wielokrotnie wywoływać. Z mojego doświadczenia to właśnie ten nawyk najmocniej odróżnia „klepanie kodu” od świadomego programowania. Programowanie strukturalne opiera się na trzech podstawowych strukturach sterujących: sekwencji, selekcji (if, switch) i iteracji (pętle). Z tych klocków buduje się całe algorytmy, bez potrzeby używania chaotycznych skoków typu goto. Funkcje i procedury są naturalnym rozszerzeniem tej idei: pozwalają zamknąć fragment algorytmu w jednym miejscu, nadać mu nazwę i parametry. W praktyce, gdy masz np. fragment kodu liczący średnią z tablicy, walidujący formularz lub generujący fragment HTML, nie powtarzasz go w dziesięciu miejscach, tylko robisz funkcję, np. validateForm(), calculateAverage(), renderMenu(). To podejście daje kilka konkretnych korzyści: po pierwsze, kod jest krótszy i czytelniejszy, bo zamiast ściany instrukcji widzisz wywołania dobrze nazwanych funkcji. Po drugie, łatwiej się go testuje i debugguje, bo możesz sprawdzać działanie pojedynczych procedur. Po trzecie, zmiany w logice wprowadzasz w jednym miejscu – mniejsze ryzyko, że coś przeoczysz. W praktyce wszystkie współczesne języki używane w web devie (C, PHP, JavaScript, Python i inne) promują takie podejście jako absolutny standard. Moim zdaniem, jeśli ktoś potrafi z każdego większego problemu „wyciągnąć” sensowne funkcje i procedury, to ma już bardzo solidny fundament pod dalszą naukę programowania, także obiektowego.

Pytanie 22

Wskaż komendę, która dokonuje aktualizacji danych w tabeli?

A. UPDATE
B. SELECT
C. CREATE
D. ALTER

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "UPDATE" jest jak najbardziej trafna. To takie podstawowe polecenie SQL, które pozwala na aktualizowanie już istniejących danych w tabeli. Możesz dzięki niemu zmienić jeden albo kilka wierszy w tabeli, w zależności od tego, jakie masz kryteria. Na przykład, jeśli mamy tabelę "pracownicy" i chcemy zwiększyć pensję programistów do 6000 zł, wystarczy użyć polecenia: `UPDATE pracownicy SET pensja = 6000 WHERE stanowisko = 'programista';`. To polecenie działa w taki sposób, że modyfikuje dane, ale przy tym dba o integralność, co jest bardzo ważne w pracy z bazami danych. Warto zawsze dodawać klauzulę WHERE, żeby zmiany dotyczyły tylko wybranych wierszy – to pomoże uniknąć sytuacji, w której przypadkiem zmienisz wszystko. Umiejętność korzystania z UPDATE jest naprawdę istotna, jeżeli chcesz efektywnie zarządzać swoimi danymi.

Pytanie 23

W języku C++ stworzono zmienną char zm1[10]; Czym jest ta zmienna?

A. liczbą
B. tablicą znaków
C. tablicą łańcuchów
D. znakiem

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zmienna char zm1[10] w języku C++ jest tablicą znaków, co oznacza, że może przechowywać do 10 pojedynczych znaków. Tablice znaków są szeroko stosowane w programowaniu do reprezentacji łańcuchów tekstowych. W C++ tablice są strukturami, które umożliwiają przechowywanie kolekcji elementów tego samego typu. Zmienna char zm1[10] alokuje pamięć dla 10 znaków, gdzie każdy znak jest typu char. Dzięki temu możemy wykorzystać taką tablicę do przechowywania napisów, takich jak imiona, tytuły czy inne teksty. Przykładowo, możemy przypisać do tej tablicy łańcuch znaków: 'Hello', co wymaga dodatkowego miejsca dla znaku null ('\0'), co oznacza koniec łańcucha. W praktyce, aby przypisać wartość do zmiennej, możemy użyć funkcji strncpy lub strcat. Zgodnie z dobrymi praktykami, warto zawsze pamiętać o maksymalnym rozmiarze tablicy, aby uniknąć przepełnienia bufora, które może prowadzić do poważnych błędów w programie. Przy tworzeniu aplikacji, które operują na tekstach, znajomość tablic znaków jest kluczowa i niezbędna dla prawidłowego zarządzania danymi tekstowymi."

Pytanie 24

Jakie będą skutki wykonania podanego zapytania w tabeli?

ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;
A. zmiana wartości kolumny nazwa2 na DOUBLE
B. dodanie kolumny nazwa2 typu zmiennoprzecinkowego
C. dodanie kolumny nazwa2 z wartością domyślną typu DOUBLE
D. zmiana nazwy kolumny z nazwa1 na nazwa2

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Pytanie dotyczy użycia polecenia SQL ALTER TABLE w celu modyfikacji struktury istniejącej tabeli. W przedstawionym zapytaniu ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL; widzimy, że użyto słowa kluczowego ADD co wskazuje na dodanie nowej kolumny do tabeli. Kolumna ta nazywa się nazwa2 i ma typ danych DOUBLE co oznacza, że będzie przechowywać wartości zmiennoprzecinkowe. Specyfikacja NOT NULL oznacza, że żadna wartość w tej kolumnie nie może być NULL co jest częstym wymogiem w bazach danych aby zapewnić spójność i prawidłowość danych. Dodawanie nowych kolumn do tabeli jest typową operacją w zarządzaniu bazami danych umożliwiającą rozbudowę ich struktury w celu spełnienia nowych wymagań biznesowych. Typ DOUBLE jest szczególnie użyteczny w przechowywaniu danych liczbowych wymagających dużej precyzji takich jak wartości finansowe czy pomiary naukowe. Ważne jest aby zawsze po dodaniu nowej kolumny dostosować aplikacje korzystające z bazy danych aby mogły poprawnie obsługiwać nowe dane co jest zgodne z najlepszymi praktykami w branży IT.

Pytanie 25

Aby grupować sekcje na poziomie bloków, które będą stilizowane za pomocą znaczników, jakiego należy użyć?

A. <span>
B. <param>
C. <p>
D. <div>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Znak <div> jest jednym z podstawowych elementów HTML, który służy do grupowania i organizowania zawartości w dokumentach HTML. Umożliwia on stosowanie stylów CSS oraz skryptów JavaScript na grupach elementów, co czyni go niezwykle użytecznym w budowie responsywnych i złożonych układów stron. W przeciwieństwie do znaku <p>, który zarezerwowany jest dla akapitów tekstu, lub <span>, który jest używany do izolowania niewielkich fragmentów tekstu w ramach większego kontekstu, <div> działa jako kontener wypełniający swoje otoczenie. Ponadto, <div> jest znacznikiem blokowym, co oznacza, że zajmuje całą szerokość dostępnego miejsca w swoim rodzicu, co jest kluczowe w projektowaniu układów. W praktyce może być używany do tworzenia sekcji strony, nagłówków, stopki czy artykułów, co pozwala na lepszą organizację kodu i stylów. W kontekście standardów, <div> jest częścią W3C HTML5, co zapewnia jego szeroką akceptację i zgodność z przeglądarkami. Użycie <div> do grupowania obszarów na poziomie bloków jest zatem najlepszą praktyką w nowoczesnym web designie.

Pytanie 26

Jakie polecenie należy zastosować, aby w trakcie tworzenia tabeli dodać klucz obcy obejmujący wiele kolumn?

A. CONSTRAINT fk_osoba_uczen FOREIGN KEY (nazwisko, imie) REFERENCES osoby (nazwisko,imie)
B. CONSTRAINT fk_osoba_uczen FOREIGN KEY ON (nazwisko, imie) REFERENCES osoby (nazwisko,imie)
C. CONSTRAINT(nazwisko,imie) FOREIGN REFERENCES KEY osoby (nazwisko, imie)
D. CONSTRAINT(nazwisko,imie) FOREIGN KEY REFERENCES osoby (nazwisko, imie)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'CONSTRAINT fk_osoba_uczen FOREIGN KEY (nazwisko, imie) REFERENCES osoby (nazwisko,imie)' jest poprawna, ponieważ poprawnie definiuje klucz obcy na wielu kolumnach. Klucz obcy jest używany do ustanawiania relacji między tabelami, co jest kluczowe w modelowaniu danych w relacyjnych bazach danych. W tym przypadku, 'fk_osoba_uczen' to nazwa ograniczenia, która pozwala na łatwe identyfikowanie klucza obcego w przyszłości. Wskazanie wielu kolumn w nawiasach po słowie kluczowym 'FOREIGN KEY' jasno określa, które kolumny tworzą klucz obcy w tabeli, podczas gdy 'REFERENCES osoby (nazwisko, imie)' precyzuje, że te kolumny odnoszą się do kolumn w tabeli 'osoby'. Tego rodzaju konstrukcja jest zgodna ze standardami SQL i dobrymi praktykami, ponieważ umożliwia zachowanie integralności danych oraz zapewnia spójność między związaną tabelą a tabelą główną. Przykładowo, gdy mamy rekordy ucznia i chcemy, aby każdy uczeń był powiązany z jego rodzicem w tabeli 'osoby', dobrze zdefiniowany klucz obcy z użyciem wielu kolumn zapobiegnie wprowadzeniu nieprawidłowych danych. Zastosowanie tej techniki ułatwia także późniejsze zapytania do bazy danych oraz zapewnia lepszą organizację danych.

Pytanie 27

W CSS zapisana reguła ```css p::first-line {font-size: 150%;} ``` wykorzystana na stronie z wieloma paragrafami, z których każdy składa się z kilku linijek, spowoduje, że

A. pierwsza linia każdego z paragrafów będzie miała większy rozmiar czcionki niż pozostałe linie
B. pierwsza linia każdego z paragrafów będzie miała mniejszy rozmiar czcionki niż pozostałe linie
C. pierwszy paragraf na stronie będzie miał całą czcionkę powiększoną
D. cały tekst w paragrafie zostanie powiększony o 150%

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zapis CSS p::first-line {font-size: 150%;} odnosi się do pseudoelementu ::first-line, który pozwala na stylizację tylko pierwszej linii tekstu w każdym paragrafie. W tym przypadku, gdy stosujemy font-size: 150%, oznacza to, że rozmiar czcionki pierwszej linii każdego paragrafu zostanie zwiększony o 50% w stosunku do domyślnego rozmiaru czcionki ustalonego w CSS. To oznacza, że pierwsza linia będzie wizualnie wyróżniać się na tle pozostałego tekstu, który pozostanie w standardowym rozmiarze czcionki. Stylizowanie pierwszej linii paragrafu jest przydatnym narzędziem w projektowaniu stron internetowych, ponieważ pozwala na zwrócenie uwagi czytelników na istotne fragmenty tekstu, co może wpływać na lepszą czytelność i odbiór treści. Dodatkowo, zgodnie z specyfikacją CSS, użycie pseudoelementów, takich jak ::first-line, jest jednym z sposobów na wprowadzenie estetycznych i funkcjonalnych zmian w tekście bez konieczności modyfikacji HTML. W praktyce, stosując ten styl, można uzyskać efekt, który poprawia hierarchię informacji w tekstach, co jest szczególnie ważne w dłuższych artykułach czy dokumentach.

Pytanie 28

Aby uruchomić skrypt JavaScript, potrzebne jest oprogramowanie

A. przeglądarki internetowej
B. debuggera JavaScript
C. serwera MySQL
D. serwera WWW

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby uruchomić skrypt JavaScript, niezbędne jest posiadanie przeglądarki internetowej, która obsługuje JavaScript. Przeglądarki takie jak Chrome, Firefox, Safari czy Edge zawierają silniki JavaScript, które interpretują i wykonują skrypty na stronach internetowych. Przykładowo, gdy użytkownik wchodzi na stronę internetową, która wykorzystuje JavaScript do dynamicznego ładowania treści lub interakcji z użytkownikiem, przeglądarka przetwarza skrypty w czasie rzeczywistym, co wpływa na doświadczenie użytkownika. Przeglądarki regularnie aktualizują swoje silniki, co przyczynia się do poprawy wydajności i bezpieczeństwa. Dodatkowo, korzystanie z narzędzi deweloperskich w przeglądarkach, takich jak konsola JavaScript, umożliwia programistom testowanie i debugowanie skryptów w łatwy sposób. W kontekście standardów webowych, JavaScript jest kluczowym elementem technologii front-end, współpracując z HTML i CSS, aby zapewnić interaktywność i responsywność stron internetowych. Warto również zauważyć, że niektóre frameworki, takie jak React czy Angular, również opierają się na JavaScript, co podkreśla jego znaczenie w nowoczesnym web developmencie.

Pytanie 29

Wskaż prawidłowe twierdzenie odnoszące się do zaprezentowanego kodu HTML.

<video width="640" height="480" controls>
    <source src="animacja.mp4" type="video/mp4">
</video>
A. Kod może nie działać w przeglądarkach, które nie wspierają HTML5.
B. Użytkownik nie będzie miał możliwości kontrolowania odtwarzania wideo.
C. Plik animacja.mp4 powinien mieć rozdzielczość 640x480 pikseli, aby można go było odtworzyć.
D. Ścieżka do pliku jest niepoprawna, nie zawiera pełnej ścieżki.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź wskazująca, że kod może nie działać w przeglądarce, jeśli nie obsługuje ona HTML5, jest poprawna, ponieważ standard HTML5 wprowadził wiele nowych elementów, w tym znacznik <video>, który umożliwia osadzanie materiałów wideo w stronach internetowych. Przeglądarki, które nie obsługują HTML5, nie będą w stanie poprawnie interpretować tego kodu, co skutkuje brakiem możliwości odtworzenia wideo. Przykładem mogą być starsze wersje Internet Explorera, które nie były zgodne z HTML5. Dobrą praktyką jest testowanie strony w różnych przeglądarkach oraz wykorzystywanie polyfilli, które mogą wspierać starsze przeglądarki w obsłudze nowych funkcjonalności. Warto również zrozumieć, że aby zapewnić szeroką dostępność treści wideo, użycie znaczników HTML5 powinno być wspierane dodatkowymi informacjami o alternatywnych formatach oraz kodowaniu wideo, co zwiększa szanse na poprawne wyświetlenie treści na różnych platformach.

Pytanie 30

Jak należy skonstruować zapytanie przy pomocy polecenia SELECT, aby wyświetlić unikalne nazwiska osób zamieszkujących osiedle?

A. SELECT AVG(nazwisko) FROM mieszkancy;
B. SELECT DISTINCT nazwisko FROM mieszkancy;
C. SELECT nazwisko FROM mieszkancy ORDER BY nazwisko;
D. SELECT TOP 10 nazwisko FROM mieszkancy;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'SELECT DISTINCT nazwisko FROM mieszkancy;' jest poprawna, ponieważ wykorzystuje klauzulę DISTINCT, która eliminuje duplikaty w wynikach zapytania. W kontekście baz danych, klauzula ta jest niezwykle użyteczna, gdy zależy nam na uzyskaniu unikalnych wartości z kolumny. W tym przypadku, wybierając unikalne nazwiska osób z tabeli 'mieszkancy', zapewniamy, że każde nazwisko pojawi się w wynikach tylko raz, co jest istotne w analizach i raportach, gdzie duplikaty mogłyby wprowadzać w błąd. Praktycznym przykładem użycia tego zapytania może być sytuacja, w której chcemy przygotować raport dla władz lokalnych o mieszkańcach danego osiedla. Zastosowanie DISTINCT pozwoli na przejrzystość raportu i jego większą użyteczność. Warto dodać, że użycie DISTINCT jest zgodne z dobrymi praktykami w programowaniu SQL, ponieważ przyczynia się do efektywnego zarządzania danymi i poprawy jakości wyników.

Pytanie 31

W języku PHP przypisano zmiennej $a wartość 1. Porównanie $a === $b zwraca true, gdy zmienna $b ma przypisaną wartość

A. '1' lub "1"
B. '1'
C. 1 lub '1'
D. *1

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź '1' lub "1" jest prawidłowa, ponieważ w PHP operator porównania identyczności (===) sprawdza zarówno wartość, jak i typ porównywanych zmiennych. Zmienna $a zainicjowana wartością 1 jest typu całkowitego (integer). Aby porównanie $a === $b zwróciło true, zmienna $b również musi być tego samego typu i mieć tę samą wartość. Wartość '1' (jako string) jest interpretowana przez PHP w kontekście operatora porównania identyczności i jest zgodna z typem integer, co sprawia, że jest akceptowalna w tym przypadku. Przykładem zastosowania może być sytuacja, gdy dane są pobierane z formularza, gdzie wartości są traktowane jako stringi, a my potrzebujemy porównać je z wartościami liczbowymi w logice aplikacji. Zastosowanie operatora === w takich przypadkach jest zgodne z dobrymi praktykami programistycznymi, ponieważ pozwala uniknąć niejednoznaczności i błędów typów, co jest szczególnie istotne w bardziej złożonych aplikacjach, gdzie poprawność danych jest kluczowa.

Pytanie 32

Emblemat systemu CMS o nazwie Joomla! to

Ilustracja do pytania
A. Rys. C
B. Rys. B
C. Rys. D
D. Rys. A

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłową odpowiedzią na to pytanie jest Rys. B, który przedstawia logo systemu Joomla!. Joomla! to jeden z najpopularniejszych systemów zarządzania treścią (CMS), używany do tworzenia stron internetowych i aplikacji online. Logo Joomla! składa się z czterech złączonych elementów, które symbolizują społeczność i współpracę, kluczowe wartości tej platformy open source. Joomla! oferuje wiele funkcji takich jak łatwe zarządzanie treścią, rozszerzalność przez moduły i komponenty oraz szerokie wsparcie dla różnych formatów multimedialnych. Platforma ta jest ceniona za elastyczność i możliwość dostosowania do specyficznych potrzeb projektowych, co czyni ją idealnym wyborem dla różnych typów stron, od prostych witryn po skomplikowane portale biznesowe. Wybierając Joomla! zyskujemy dostęp do społeczności deweloperów oraz bogatej bazy zasobów edukacyjnych i wsparcia technicznego. Zrozumienie znaczenia i zastosowania systemów CMS jak Joomla! jest kluczowe dla specjalistów zajmujących się tworzeniem i zarządzaniem stronami internetowymi, ponieważ umożliwia efektywną obsługę i rozwój dynamicznych treści.

Pytanie 33

Które z poniższych poleceń przyznaje użytkownikowi uczen najniższy poziom uprawnień w zakresie zmiany danych i struktury tabel?

A. GRANT DROP ON szkola.przedmioty TO uczen;
B. GRANT INSERT, DROP ON szkola.przedmioty TO uczen;
C. GRANT ALTER, SELECT ON szkola.przedmioty TO uczen;
D. GRANT SELECT ON szkola.przedmioty TO uczen;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź GRANT SELECT ON szkola.przedmioty TO uczen jest poprawna, ponieważ przyznaje użytkownikowi 'uczen' jedynie uprawnienia do odczytu danych w tabeli 'przedmioty' w bazie danych 'szkola'. Uprawnienia SELECT pozwalają na przeglądanie danych, co jest istotne w kontekście nauki czy oceny przedmiotów, ale nie zezwalają na modyfikację danych ani na zmiany w strukturze tabeli. To podejście jest zgodne z zasadą minimalnych uprawnień, co oznacza, że użytkownik powinien mieć tylko te uprawnienia, które są niezbędne do wykonania swoich zadań. W praktyce, przyznawanie tylko uprawnień SELECT jest szczególnie ważne w środowiskach edukacyjnych, gdzie chcemy zapewnić uczniom dostęp do informacji, ale jednocześnie chronić integralność danych. W kontekście dobrych praktyk, ograniczenie dostępu do danych wrażliwych jest kluczowe, a nadawanie zbyt szerokich uprawnień może prowadzić do nieautoryzowanych zmian lub utraty danych.

Pytanie 34

p { font-family: Arial, Helvetica, sans-serif; }
Zdefiniowany styl dla selektora p spowoduje, że tekst w paragrafie zostanie wyświetlony czcionką:
A. dekoracyjną.
B. bezszeryfową.
C. szeryfową.
D. maszynową.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W podanym fragmencie CSS deklaracja font-family: Arial, Helvetica, sans-serif oznacza, że przeglądarka ma najpierw spróbować użyć czcionki Arial, jeśli jej nie znajdzie – Helvetica, a jeśli żadna z tych nazwanych czcionek nie będzie dostępna w systemie użytkownika, to sięgnie po dowolną domyślną czcionkę z rodziny sans-serif. I to właśnie jest klucz: słowo kluczowe sans-serif na końcu definiuje rodzinę kroju pisma, czyli czcionkę bezszeryfową. Czcionki bezszeryfowe (sans-serif) nie mają tzw. szeryfów, czyli małych ozdobników na końcach liter. Przykłady takich krojów to właśnie Arial, Helvetica, Verdana, Roboto. W specyfikacji CSS (np. CSS Fonts Module Level 3) wyraźnie wyróżnia się generics: serif, sans-serif, monospace, cursive, fantasy itp. Zapis użyty w pytaniu jest zgodny z dobrymi praktykami: najpierw konkretne fonty, potem ogólna rodzina. W praktyce taki zapis stosuje się niemal wszędzie w projektowaniu stron WWW: dla tekstów w interfejsach, nagłówków, opisów przycisków, bo krój bezszeryfowy jest bardziej czytelny na ekranach, szczególnie przy małych rozdzielczościach i na urządzeniach mobilnych. Moim zdaniem warto zapamiętać ten schemat: najpierw nazwy konkretnych fontów, na końcu zawsze jeden z generycznych typów (sans-serif, serif, monospace itd.). Dzięki temu masz pewność, że nawet jeśli użytkownik nie ma zainstalowanego Ariala czy Helvetiki, i tak zobaczy tekst w odpowiednim rodzaju czcionki – w tym wypadku właśnie bezszeryfowej. To jest standardowa i rekomendowana praktyka w CSS, stosowana praktycznie w każdym profesjonalnym projekcie webowym.

Pytanie 35

Aby zdefiniować selektor klasy w kaskadowych arkuszach stylów, należy użyć symbolu

A. : (dwukropek)
B. . (kropka)
C. #
D. *

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Selektory klas w CSS są super ważne! Używamy kropki (.) na początku, żeby zdefiniować klasę. To naprawdę ułatwia sprawę, bo można przypisać jeden styl do wielu elementów. Na przykład, jeśli zdefiniujesz klasę .przycisk, to wszystkie elementy, które ją mają, mogą wyglądać tak samo – możesz zmieniać kolory, rozmiary czy inne rzeczy. To świetne, bo dzięki temu kod jest czytelniejszy i łatwiej go ogarnąć. Klasy są bardziej elastyczne niż identyfikatory (#), które są unikalne i można je używać tylko raz w dokumencie. Dlatego, kiedy potrzebujesz, aby kilka elementów miało te same style, lepiej postawić na klasy. A tak w ogóle, użycie kropki dla klas to taki standard w CSS, który pozwala łatwiej ogarniać całą hierarchię stylów na stronie. Po prostu to się sprawdza!

Pytanie 36

Prezentowany fragment dokumentu HTML z użyciem JavaScript spowoduje, że po naciśnięciu przycisku

<img src="obraz1.png">
<img src="obraz2.png" id="id1">
<button onclick="document.getElementById('id1').style.display='none'">Przycisk</button>
A. obraz1.png zostanie zniknięty
B. obraz1.png zostanie wymieniony przez obraz2.png
C. obraz2.png zostanie wymieniony przez obraz1.png
D. obraz2.png zostanie zniknięty

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest poprawna, ponieważ przycisk w kodzie JavaScript powoduje, że po jego kliknięciu element HTML o identyfikatorze 'id1', który jest obrazem 'obraz2.png', zostanie ukryty. Wartość 'style.display' zmienia się na 'none', co jest standardowym sposobem na ukrycie elementu w dokumentach HTML. W praktyce takie podejście jest szeroko stosowane w interaktywnych aplikacjach webowych, aby poprawić doświadczenia użytkowników, umożliwiając im dynamiczne ukrywanie lub wyświetlanie treści w odpowiedzi na ich działania. Ukrywanie elementów zamiast ich usuwania z DOM ma swoje zalety, ponieważ umożliwia ich późniejsze przywrócenie, co jest bardziej efektywne w kontekście wydajności. Dobrym przykładem może być rozwijane menu na stronie, gdzie po kliknięciu na dany element, jego zawartość jest ukrywana lub pokazywana bez potrzeby przeładowywania całej strony.

Pytanie 37

Przedstawiony algorytm umożliwia wyliczenie

Ilustracja do pytania
A. reszty z dzielenia kolejnych liczb a przez liczbę n.
B. średniej arytmetycznej n liczb a wprowadzonych przez użytkownika.
C. najmniejszego wspólnego dzielnika dla n kolejnych liczb a.
D. średniej geometrycznej n liczb a wprowadzonych przez użytkownika.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Algorytm z diagramu realizuje dokładnie klasyczny wzór na średnią arytmetyczną. Najpierw wczytywana jest liczba n – ile wartości użytkownik poda. Potem zmienna „Wynik” jest zerowana, a zmienna sterująca pętlą i ustawiana na 0. Następnie działa pętla z warunkiem i < n: w każdej iteracji program wczytuje kolejną liczbę a, dodaje ją do zmiennej Wynik (czyli de facto sumuje wszystkie podane liczby), a licznik i zwiększa o 1. Gdy i przestaje być mniejsze od n, pętla się kończy i dopiero wtedy wykonywana jest operacja Wynik = Wynik / n. To jest dokładnie to, co robi wzór: średnia = (a1 + a2 + … + an) / n. Z praktycznego punktu widzenia taki algorytm to absolutna podstawa w programowaniu, szczególnie przy pracy z danymi wejściowymi: wynikami pomiarów, ocenami uczniów, czasami odpowiedzi serwera itp. W wielu językach programowania (C, Java, JavaScript, PHP) napisanie tego w kodzie sprowadza się do jednej pętli for lub while, sumowania zmiennej i jednego dzielenia na końcu. Dobrą praktyką jest, żeby dzielenie wykonywać dopiero po zsumowaniu wszystkich elementów, dokładnie tak jak na diagramie, a nie w każdej iteracji, bo to ogranicza błędy zaokrągleń i jest po prostu wydajniejsze obliczeniowo. W aplikacjach webowych ten schemat pojawia się np. przy liczeniu średniej oceny produktu z wielu głosów użytkowników, średniego czasu odpowiedzi API albo średniego czasu spędzonego na stronie. Moim zdaniem to jedno z kluczowych ćwiczeń na zrozumienie pętli i zmiennych pomocniczych, bo łączy matematykę z bardzo praktyczną logiką algorytmiczną.

Pytanie 38

Jak przeglądarka zaprezentuje kod HTML formularza?

<form>
stanowisko: <input type="text"><br>
obowiązki:<br>
<input type="checkbox" name="obowiazek1" value="1" disabled checked>
sporządzanie dokumentacji<br>
<input type="checkbox" name="obowiazek2" value="2" checked>
pisanie kodu<br>
<input type="checkbox" name="obowiazek3" value="3">
testy oprogramowania<br>
</form>
Ilustracja do pytania
A. D
B. B
C. A
D. C

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź to D ponieważ kod HTML formularza definiuje trzy pola wyboru typu checkbox z różnymi atrybutami wpływającymi na ich stan początkowy. Pierwsze pole wyboru dotyczące sporządzania dokumentacji posiada atrybuty disabled i checked co oznacza że będzie zaznaczone ale nieaktywne dla użytkownika. Oznacza to że użytkownik nie może zmienić jego stanu w przeglądarce. Drugie pole dotyczące pisania kodu ma tylko atrybut checked co oznacza że będzie zaznaczone i dostępne do edycji. Trzecie pole dotyczące testów oprogramowania nie posiada żadnego z tych atrybutów więc będzie domyślnie niezaznaczone i edytowalne. To zachowanie jest zgodne ze standardami HTML i dobrymi praktykami kodowania gdzie atrybuty kontrolują interakcje użytkownika z formularzami. Wiedza ta jest kluczowa dla projektantów stron internetowych aby zapewnić prawidłowe działanie formularzy i poprawne doświadczenie użytkownika. Formularze są podstawowym elementem interakcji z użytkownikiem dlatego zrozumienie ich działania jest niezbędne w tworzeniu funkcjonalnych i intuicyjnych interfejsów użytkownika.

Pytanie 39

Wskaż, który paragraf jest sformatowany przy użyciu podanego stylu CSS:

p {
    font-family: serif;
    background-color: Teal;
    color: white;
    font-style: italic;
}
Ilustracja do pytania
A. Paragraf 3
B. Paragraf 1
C. Paragraf 2
D. Paragraf 4

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Paragraf 4 jest prawidłowo sformatowany zgodnie z przedstawionym stylem CSS. W stylu tym zastosowano cztery właściwości: font-family o wartości serif co sugeruje użycie czcionki o kroju szeryfowym background-color ustawiony na Teal co ustawia tło na ciemnozielony kolor color ustawiony na White co oznacza że tekst powinien być biały oraz font-style ustawiony na italic co powoduje że tekst jest pochylony. Paragraf 4 spełnia te kryteria jest napisany czcionką szeryfową ma ciemnozielone tło biały tekst i jest kursywą. Zastosowanie takich stylów jest częste w projektowaniu stron internetowych gdzie ważne jest czytelne i estetyczne przedstawienie informacji. Używanie odpowiednich stylów CSS pozwala na lepszą organizację wizualną treści co jest kluczowe w tworzeniu interfejsów przyjaznych dla użytkownika. Stylowanie w CSS wspiera standardy takie jak CSS3 które wprowadzają nowe właściwości i ulepszenia umożliwiające bardziej zaawansowane i wydajne metody formatowania.

Pytanie 40

W celu wykonania kopii bazy danych biblioteka w systemie MySQL należy w konsoli użyć polecenia

A. mysqldump -u root biblioteka > kopia.sql
B. copymysql –u root biblioteka kopia.sql
C. mysqlduplicate –u root biblioteka > kopia.sql
D. backupmysql -u root biblioteka kopia.sql

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawne polecenie do wykonania kopii bazy danych MySQL to „mysqldump -u root biblioteka > kopia.sql”. Narzędzie mysqldump jest oficjalnym, standardowym programem dostarczanym razem z serwerem MySQL i właśnie ono służy do tworzenia logicznych kopii zapasowych baz danych. Działa tak, że łączy się z serwerem MySQL, odczytuje strukturę tabel oraz dane, a następnie generuje plik tekstowy zawierający instrukcje SQL typu CREATE TABLE i INSERT. Taki plik można potem w prosty sposób wgrać z powrotem, np. poleceniem „mysql -u root biblioteka < kopia.sql”. To jest bardzo wygodne w praktyce, bo backup jest przenośny między serwerami, wersjami MySQL, a nawet można go edytować ręcznie w razie potrzeby. W tym poleceniu „-u root” oznacza użytkownika bazy danych, czyli logujemy się jako użytkownik root. W realnym środowisku produkcyjnym zwykle używa się konta z mniejszymi uprawnieniami i dodatkowo opcji „-p”, żeby podać hasło (np. „mysqldump -u backup_user -p biblioteka > kopia.sql”). Nazwa „biblioteka” to nazwa bazy, którą archiwizujemy. Znak „>” to przekierowanie powłoki systemowej (bash, cmd itp.), które zapisuje wynik działania programu mysqldump do pliku „kopia.sql” zamiast wypisywać go na ekran. To przekierowanie nie jest częścią MySQL, tylko mechanizmem systemu operacyjnego, co czasem bywa mylące dla początkujących. Moim zdaniem warto od razu wyrabiać sobie dobre nawyki: używać mysqldump regularnie, najlepiej w skryptach cron (Linux) lub Harmonogramie zadań (Windows), trzymać kopie na innym serwerze i testować odtwarzanie. W praktyce administracji serwerami i bezpieczeństwa danych takie kopie logiczne są podstawą procedur disaster recovery. W dokumentacji MySQL mysqldump jest wymieniony jako jedno z głównych narzędzi do backupu i migracji baz danych, więc znajomość dokładnie tego polecenia to absolutna podstawa pracy z MySQL w środowiskach webowych i nie tylko.