Przejdź do głównej treści

Wyniki egzaminu

Nowy egzamin

Informacje o egzaminie

  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Rozpoczęcie: 17 października 2026 01:09
  • Zakończenie: 17 października 2026 01:13 

Egzamin niezdany

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

Wymagane minimum: 20 punktów (50%)

Pewność odpowiedzi

Żadna odpowiedź nie została oznaczona jako strzał.

Przy następnym egzaminie zaznaczaj niepewne odpowiedzi - zobaczysz wtedy, ile wyniku bierze się z wiedzy, a ile ze szczęścia.

Twój wynik na tle innych

Twój wynik jest lepszy niż 7% podejść do kwalifikacji INF.03.

Porównanie z 46740 zakończonymi podejściami do tej kwalifikacji (dane zbiorcze, bez wyników indywidualnych).

Zachowaj ten wynik na koncie

Załóż darmowe konto albo zaloguj się - ten egzamin przypiszemy do Twojego konta, więc wrócisz do swoich błędów, będziesz śledzić postęp i dostaniesz powtórki dobrane do Twoich odpowiedzi.

Analiza przebiegu egzaminu - sprawdź przebieg rozwiązywania pytań Przebieg egzaminu

Analiza przebiegu egzaminu

Odtwarzaj przebieg egzaminu krok po kroku i ucz się na własnych błędach - kolejność rozwiązywania, czas nad każdym pytaniem, momenty zmiany odpowiedzi.

  • Suwak czasu - przeglądaj pytania w kolejności rozwiązywania.
  • Tryb nauki - poprawne odpowiedzi i wyjaśnienia.
  • Analiza czasu - ile czasu nad każdym pytaniem.
  • Monitoring focusu - momenty opuszczenia zakładki.

Udostępnij swój wynik

Szczegółowe wyniki

Pytanie 1

Która metoda wypisze w języku JavaScript komunikat w konsoli przeglądarki?
A.
console.print("test");
Twoja odpowiedź
B.
console.log("test");
Poprawna odpowiedź
C.
console.write("test");
D.
console.echo("test");
Niepoprawna odpowiedź. Pozostałe metody nie istnieją w obiekcie console. console.write() oraz console.print() brzmią sensownie, ale nie należą do API konsoli - ich wywołanie zgłosi błąd. console.echo() myli języki: echo to instrukcja wypisywania w PHP, a nie metoda JavaScript. Komunikat w konsoli przeglądarki wypisuje console.log(), dlatego ta odpowiedź jest poprawna.

Pytanie 2

W którym języku zaimplementować aplikację działającą po stronie KLIENTA (w przeglądarce)?
A. JavaScript
Poprawna odpowiedź
B. Python
C. Perl
D. PHP
Twoja odpowiedź
Niepoprawna odpowiedź. Pozostałe języki działają po stronie SERWERA. Perl, PHP i Python generują treść na serwerze, zanim trafi do przeglądarki. Kod wykonywany w przeglądarce u klienta to JavaScript.

Pytanie 3

W MS SQL Server instrukcja RESTORE DATABASE jest używana do
A. przywrócenia bazy danych z kopii zapasowej
Twoja odpowiedź
B. aktualizacji bazy danych z kontrolą więzów integralności
C. reorganizacji bazy danych na podstawie zapisanych danych
D. usunięcia bazy danych z głównego serwera subskrybenta
Poprawna odpowiedź. Fajnie, że się zabrałeś za temat RESTORE DATABASE w MS SQL Server! To naprawdę ważne narzędzie, które pomaga w sytuacjach kryzysowych, tak jak wtedy, gdy coś pójdzie nie tak z bazą danych. Wiesz, jak to jest, czasem coś się popsuje albo niechcący usuniemy ważne dane. Dzięki temu poleceniu można szybko wrócić do wcześniejszego stanu. Istnieją różne sposoby przywracania, jak pełne, różnicowe czy punktowe, co daje dużą swobodę w pracy z danymi. Warto też pamiętać, że regularne robienie kopii zapasowych i testowanie, czy można je przywrócić, to bardzo mądra praktyka. Dzięki temu, w razie problemów, można szybko odzyskać dane. No i nie zapominaj o monitorowaniu kopii zapasowych, by mieć pewność, że wszystko działa jak należy. To naprawdę kluczowe dla bezpieczeństwa danych!

Pytanie 4

W CSS określono styl dla pola do edycji, które będzie miało tło w kolorze jasnozielonym po aktywacji.
input:focus { background-color: LightGreen; }
A. po kliknięciu myszką w celu wprowadzenia tekstu
Poprawna odpowiedź
B. gdy jest to pierwsze użycie tego elementu w dokumencie
Twoja odpowiedź
C. jeśli zostanie na nie najechane kursorem bez kliknięcia
D. w każdej sytuacji
Niepoprawna odpowiedź. Typowe błędy myślowe prowadzące do niepoprawnych odpowiedzi często obejmują mylenie różnych stanów interakcji z elementami formularzy. Na przykład, odpowiedź sugerująca, że stylizowane tło zostaje aktywowane "gdy zostanie wskazane kursorem myszy bez kliknięcia" myli pojmowanie stanu focus z prostym najechaniem kursorem. W rzeczywistości, stan focus aktywuje się tylko w wyniku interakcji, takiej jak kliknięcie lub nawigacja za pomocą klawiatury. Kolejną nieścisłością jest stwierdzenie, że formatowanie ma zastosowanie "w każdym przypadku". Takie podejście nie uwzględnia faktu, że styl focus jest specyficzny dla interakcji użytkownika, a więc jego zastosowanie jest ograniczone do sytuacji, w których element jest aktywny. Warto zauważyć, że dobrze zaprojektowane formularze online powinny wykorzystywać zdarzenia focus i blur, aby dostarczać użytkownikom pomocnych wskazówek oraz ułatwić wprowadzanie danych. Ignorowanie tych koncepcji prowadzi do projektowania interfejsów, które nie są w pełni responsywne wobec potrzeb użytkowników. Dlatego zrozumienie różnicy między focus a zwykłym wskazaniem kursorem jest kluczowe dla tworzenia efektywnych i przyjaznych dla użytkownika aplikacji internetowych.

Pytanie 5

Rekordy do raportu mogą pochodzić z
A. innego raportu
Twoja odpowiedź
B. tabeli
Poprawna odpowiedź
C. zapytania INSERT INTO
D. makropolecenia
Niepoprawna odpowiedź. Wybór innego raportu jako źródła danych może wydawać się logiczny na pierwszy rzut oka, jednak w rzeczywistości, raporty są zazwyczaj wynikiem analizy danych już zgromadzonych w bazach danych, a nie bezpośrednim źródłem tych danych. Raport oparty na innym raporcie może prowadzić do niepotrzebnej złożoności oraz braku przejrzystości w dostępie do danych. Ponadto użycie makropolecenia jako źródła do generowania raportu jest niewłaściwe, ponieważ makropolecenia są narzędziami do automatyzacji zadań, a nie strukturami danych. W kontekście zapytania 'INSERT INTO', należy zauważyć, że jest to instrukcja służąca do dodawania nowych rekordów do tabeli, a nie do pobierania danych. Wybranie takiego podejścia mogłoby wprowadzić w błąd, ponieważ nie odzwierciedla rzeczywistego procesu raportowania, który wymaga analizy istniejących danych. Często błędy myślenia w tym kontekście wynikają z pomylenia celów automatyzacji z celami analizy danych. Poprawne zrozumienie roli tabel w bazach danych pozwala na wydajne raportowanie i podejmowanie decyzji na podstawie rzeczywistych i aktualnych informacji.

Pytanie 6

Aby w języku JavaScript zrealizować wymienione czynności:
  1. wyświetlić okno do wpisania wartości z poleceniem „Podaj kwalifikację: ”, a następnie, po zatwierdzeniu,
  2. umieścić na stronie internetowej napis, w którym w miejscu kropek znajdzie się wartość pobrana z okna: „Kwalifikacja: ... ”
w znaczniku <script> należy umieścić
A.
A << prompt("Podaj kwalifikację: ");
document.write("Kwalifikacja: "+A)
B.
A = prompt("Podaj kwalifikację: ");
document.write("Kwalifikacja: "+A)
Poprawna odpowiedź
C.
A = alert("Podaj kwalifikację: ");
document.write("Kwalifikacja: "+A)
Twoja odpowiedź
D.
A = prompt("Podaj kwalifikację: ");
document.write("Kwalifikacja: ".A)
Niepoprawna odpowiedź. Rozważając podane odpowiedzi warto zauważyć kilka typowych błędów koncepcyjnych związanych z używaniem funkcji w JavaScript. Po pierwsze, w jednej odpowiedzi użyto kropki zamiast operatora konkatenacji przy próbie łączenia łańcuchów znaków, co jest błędne w JavaScript. W tym języku operator + jest standardowym sposobem na łączenie tekstu z wartościami zmiennych. Użycie kropki w tym kontekście jest błędne, ponieważ odnosi się do operacji obiektowych, nie do konkatenacji łańcuchów. Innym błędem jest wykorzystanie operatora <<, który w rzeczywistości służy do przesunięć bitowych, a nie do przypisywania wartości czy wywoływania funkcji. Takie pomyłki mogą wynikać z niezrozumienia różnic między operacjami bitowymi a przypisaniem wartości. Kolejna opcja sugerowała użycie alert() zamiast prompt(), co oznaczałoby wyświetlenie jedynie komunikatu bez możliwości wprowadzenia danych przez użytkownika, co nie spełnia założeń zadania polegających na pobraniu wartości od użytkownika. Wszystkie te błędne odpowiedzi wynikają z nieznajomości lub niepoprawnego użycia podstawowych funkcji i operatorów języka JavaScript co podkreśla znaczenie dokładnego zrozumienia podstaw języka oraz ich praktycznego zastosowania. Poprawne użycie prompt() i document.write() jest kluczowe w implementacji interaktywnych elementów na stronach internetowych, co pozwala na dynamiczne przetwarzanie danych użytkowników w aplikacjach webowych. Dobrze jest stosować się do standardów i dobrych praktyk, aby unikać podobnych błędów w przyszłości oraz by tworzyć aplikacje, które są zarówno funkcjonalne, jak i bezpieczne.

Pytanie 7

W języku PHP zainicjowano zmienną $a wartością '1'. Porównanie $a === $b przyjmuje wartość true w przypadku, gdy zmienna $b jest zainicjowana wartością
A. 1 lub '1'
B. *1
C. 1
D. '1' lub "1"
Twoja odpowiedź
Poprawna odpowiedź. W tym przykładzie kluczowe jest to, że operator === w PHP wykonuje porównanie ścisłe, czyli sprawdza jednocześnie wartość oraz typ danych. Skoro zmienna $a została zainicjowana jako '1', to jest to napis, czyli typ string, a nie liczba całkowita. Dlatego $a === $b zwróci true tylko wtedy, gdy $b też będzie napisem o dokładnie takiej samej treści. W PHP zapis '1' oraz zapis "1" oznaczają string zawierający znak 1. Różnica między apostrofami i cudzysłowami dotyczy głównie interpretacji zmiennych oraz sekwencji specjalnych w środku tekstu, ale tutaj oba zapisy dają taki sam typ i taką samą wartość. W praktyce takie rozróżnienie jest bardzo ważne np. przy obsłudze danych z formularzy, parametrów GET/POST albo wyników z API, bo wiele danych przychodzi jako tekst. Moim zdaniem warto od początku przyzwyczajać się do === zamiast ==, bo ogranicza to dziwne błędy wynikające z automatycznej konwersji typów. Dobra praktyka w PHP, szczególnie w nowszym kodzie, to jawne pilnowanie typów danych i unikanie sytuacji, gdzie język sam zgaduje, czy coś ma być liczbą, tekstem czy wartością logiczną.

Pytanie 8

Wskaż prawdziwe stwierdzenie dotyczące polecenia:
CREATE TABLE IF NOT EXISTS adres (ulica VARCHAR(70) CHARACTER SET utf8);
A. Rekordem tabeli nie może być '3 MAJA'.
B. IF NOT EXISTS stosuje się opcjonalnie, aby upewnić się, że w bazie danych nie istnieje już taka tabela.
Poprawna odpowiedź
C. Klauzula CHARACTER SET utf8 jest obowiązkowa.
D. Do tabeli nie można wprowadzać nazw ulic zawierających polskie znaki.

Brak odpowiedzi na to pytanie.

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

Pytanie 9

Jakie polecenie przywróci do działania uszkodzoną tabelę w SQL?
A. OPTIMIZE TABLE tbl_name
B. ANALYZE TABLE tbl_name
C. REPAIR TABLE tblname
Poprawna odpowiedź
D. REGENERATE TABLE tbl_name

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
REPAIR TABLE tblname jest komendą w SQL, która jest używana do naprawy uszkodzonych tabel w bazach danych, szczególnie w systemach zarządzania bazami danych, takich jak MySQL. Gdy tabela ulegnie uszkodzeniu z powodu awarii systemu, błędów oprogramowania lub innych problemów, użycie tej komendy pozwala na przywrócenie jej do stanu używalności. Przykładem może być sytuacja, gdy po awarii serwera tabela przestaje być dostępna. Wówczas wystarczy uruchomić polecenie REPAIR TABLE, aby zdiagnozować i naprawić problemy. Warto pamiętać, że ta komenda nie tylko przywraca integralność danych, ale także może poprawić wydajność tabeli, usuwając fragmentację. Praktyka wskazuje, że regularne sprawdzanie i naprawa tabel, zwłaszcza po dużych operacjach zapisu, jest dobrym nawykiem w zarządzaniu bazami danych. Dobrą praktyką jest również tworzenie kopii zapasowych tabel przed ich naprawą, co zabezpiecza dane przed potencjalną utratą w wyniku błędów przy naprawie.

Pytanie 10

Wskaż wszystkie symbole, które pozwalają na komentowanie kodu w języku PHP.
A. /* */ oraz // oraz #
Poprawna odpowiedź
B. /* */ oraz <!-- -->
C. tylko /* */
D. <?php ?> oraz //

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź, która wskazuje na znaki /* */, // oraz # jako metody komentowania w PHP jest poprawna. W języku PHP istnieją różne sposoby na dodawanie komentarzy, co jest kluczowe dla dokumentacji kodu i ułatwiania jego późniejszego zrozumienia. Komentarze wieloliniowe otaczane są przez znaki /* i */. Umożliwiają one opisanie złożonych fragmentów kodu, co jest przydatne w przypadku długich wyjaśnień. Z kolei // umożliwia tworzenie komentarzy jednoliniowych, co jest idealne dla krótkich notatek czy opisów funkcji. Dodatkowo, znak # również pozwala na tworzenie komentarzy jednoliniowych, co czyni go użytecznym w kontekście skryptów PHP, szczególnie w połączeniu z plikami konfiguracyjnymi. Właściwe stosowanie komentarzy jest częścią dobrych praktyk programistycznych, które pozwalają na lepszą współpracę w zespole oraz przyszłą konserwację kodu. Przykładowo, użycie komentarzy do wyjaśnienia zastosowania konkretnej funkcji w kodzie może znacznie ułatwić pracę innym programistom, którzy będą musieli pracować z tym kodem w przyszłości.

Pytanie 11

Wskaż blok, który jest sformatowany zgodnie z podanym stylem CSS.
background: linear-gradient(to right, LightBlue, DarkBlue);
Ilustracja do pytania
Blok 4
Blok 1
Blok 3
Blok 2
Poprawna odpowiedź

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Blok 2 jest poprawną odpowiedzią ponieważ wykorzystuje styl CSS background linear-gradient(to right LightBlue DarkBlue) co oznacza że gradient kolorów rozciąga się od lewej do prawej strony elementu CSS linear-gradient pozwala na tworzenie gładkich przejść między kolorami co jest popularną techniką w projektowaniu stron internetowych Styl ten dodaje wizualnej atrakcyjności i może być użyty w różnych częściach witryny takich jak przyciski nagłówki czy tła sekcji Właściwość gradientu pozwala na zastosowanie wielu kolorów i kontrolowanie ich punktów początkowych i końcowych co zwiększa elastyczność projektowania Ponadto gradienty są wspierane przez wszystkie nowoczesne przeglądarki co czyni je doskonałym wyborem dla responsywnych stron internetowych Wykorzystanie gradientów zamiast obrazów tła pomaga także w optymalizacji strony zmniejszając czas ładowania co jest zgodne z najlepszymi praktykami branżowymi i wpływa pozytywnie na doświadczenie użytkownika CSS oferuje również inne typy gradientów takie jak radial-gradient i conic-gradient które mogą być używane w zależności od potrzeb projektowych

Pytanie 12

Który model barw opisuje kolor za pomocą stożka przestrzeni barw?
A. CIE
B. CMY
C. HSV
Poprawna odpowiedź
D. CMYK

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Model HSV przedstawia się geometrycznie jako stożek (lub walec) przestrzeni barw: kąt to odcień, odległość od osi - nasycenie, a wysokość - jasność. Dlatego stożkiem barw opisuje kolor HSV.

Pytanie 13

Jakie z poniższych stwierdzeń poprawnie opisuje zdefiniowaną tabelę?
CREATE TABLE dane (kolumna INTEGER(3));
A. Kolumny tabeli dane są nazywane: kolumna 1, kolumna2, kolumna3.
B. Tabela o nazwie dane posiada jedną kolumnę liczb całkowitych.
Poprawna odpowiedź
C. Tabela ma jedną kolumnę, która zawiera tablice z trzema elementami.
D. Tabela o nazwie dane zawiera trzy kolumny typu całkowitego.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest prawidłowa, ponieważ w zdefiniowanej tabeli 'dane' mamy jedną kolumnę o nazwie 'kolumna', której typ danych to INTEGER. Wartość 3 w definicji INTEGER(3) oznacza, że kolumna może przechowywać liczby całkowite, a nie liczb o długości 3, co często jest mylone. W praktyce INTEGER w SQL nie ma ograniczenia do przechowywania tylko trzech cyfr; to po prostu sugeruje, że przyjmuje się, iż liczby będą miały długość do trzech cyfr, co jest w rzeczywistości ignorowane, ponieważ SQL nie narzuca takich ograniczeń. Wartości w tej kolumnie mogą być zarówno jednocyfrowe, jak i trzycyfrowe. W kontekście projektowania baz danych, dobrą praktyką jest nadawanie kolumnom zrozumiałych nazw oraz dokładne określanie ich typów danych, co ułatwia późniejsze zarządzanie danymi. Poprawne zdefiniowanie tabeli jest kluczowe dla wydajności bazy danych oraz jej integralności, dlatego dla kolumny INTEGER nie ma potrzeby dodatkowego określania ograniczeń, chyba że są one wymagane w kontekście aplikacyjnym.

Pytanie 14

<img src="/rysunek.png" alt="pejzaż"> Zapisany został kod HTML, który wstawia obrazek na stronę. Jeśli rysunek.png nie zostanie znaleziony, przeglądarka
A. w miejscu grafiki zasygnalizuje błąd wyświetlania strony
B. wyświetli w miejscu grafiki tekst "pejzaż"
Poprawna odpowiedź
C. nie załaduje strony internetowej
D. w miejscu grafiki pokaże tekst "rysunek.png"

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kiedy przeglądarka internetowa napotyka na kod HTML, który zawiera element graficzny, w takim przypadku, jeśli wskazany plik nie jest dostępny, następuje zachowanie określone przez atrybut 'alt'. W omawianym przykładzie, gdy przeglądarka nie może znaleźć pliku 'rysunek.png', wyświetli tekst alternatywny 'pejzaż'. Atrybut 'alt' jest niezwykle ważny z perspektywy dostępności oraz SEO, ponieważ pozwala na dostarczenie informacji o obrazie osobom, które nie mogą go zobaczyć, takim jak osoby niewidome korzystające z czytników ekranu. Z punktu widzenia standardów W3C, atrybut 'alt' jest zalecany dla każdego elementu <img>, aby poprawić użyteczność strony. W praktyce, dobrze skonstruowane opisy w atrybucie 'alt' mogą również wpłynąć pozytywnie na pozycjonowanie witryny w wyszukiwarkach, co czyni go kluczowym elementem podczas tworzenia treści na stronie internetowej. Z tego powodu umieszczanie informacyjnych i zrozumiałych opisów w tym atrybucie jest niezbędne nie tylko dla poprawy dostępności, ale także dla efektywnej optymalizacji SEO.

Pytanie 15

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję
A. części wspólnej.
B. grupowania.
Poprawna odpowiedź
C. wykluczenia.
D. sumy.

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 16

Który kod HTML poprawnie tworzy akapit, w którym jedno słowo jest wyróżnione znacznikiem <mark>, a inne oznaczone jako ważne <em>, przy prawidłowym zamknięciu wszystkich znaczników?
A.
<p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
Poprawna odpowiedź
B.
<p>Tekst może być <mark>wyróżniony albo <i>istotny</i> dla autora</mark></p>
C.
<p>Tekst może być <mark>wyróżniony albo <em>istotny</em> dla autora</mark></p>
D.
<p>Tekst może być <mark>wyróżniony</mark> albo <em>istotny dla autora</p>

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawny kod to
<p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
Tu <mark> wyróżnia pojedyncze słowo, <em> oznacza inne jako ważne, a każdy znacznik ma swój znacznik zamykający we właściwym miejscu. Dlatego ta wersja jest prawidłowa.

Pytanie 17

W JavaScript zdarzenie onKeydown zostanie wywołane, gdy klawisz
A. myszki został naciśnięty
B. klawiatury został naciśnięty
Poprawna odpowiedź
C. klawiatury został zwolniony
D. myszki został zwolniony

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zdarzenie onKeydown w JavaScript jest wywoływane, gdy użytkownik naciśnie klawisz na klawiaturze. To fundamentalne zdarzenie jest często wykorzystywane w aplikacjach webowych do obsługi interakcji użytkowników, takich jak wprowadzanie danych czy nawigacja po formularzach. W momencie naciśnięcia klawisza, przeglądarka emituje to zdarzenie, co pozwala programistom na reagowanie na konkretne akcje. Na przykład, jeśli chcemy stworzyć prostą grę opartą na ruchu postaci, możemy wykorzystać onKeydown do wykrywania klawiszy strzałek i poruszania postacią w odpowiednich kierunkach. Warto również zauważyć, że onKeydown różni się od onKeyup, które jest wywoływane, gdy klawisz jest zwolniony, co ma znaczenie w przypadku obsługi sekwencji klawiszy oraz klawiszy modyfikujących, takich jak Shift czy Ctrl. Zrozumienie tych różnic jest kluczowe dla tworzenia responsywnych i interaktywnych aplikacji webowych, zgodnych z najlepszymi praktykami programowania.

Pytanie 18

ALTER TABLE artykuły MODIFY cena float; Ta kwerenda ma na celu wprowadzenie zmian w tabeli artykuły.
A. dodanie kolumny cena o typie float, o ile nie istnieje
B. zmiana typu na float dla kolumny cena
Poprawna odpowiedź
C. usunięcie kolumny cena o typie float
D. zmiana nazwy kolumny cena na float

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź była trafna, bo dotyczyła zmiany typu danych w kolumnie w tabeli. Kiedy piszesz 'ALTER TABLE artykuły MODIFY cena float;', to tak naprawdę modyfikujesz kolumnę 'cena', żeby mogła przyjmować liczby zmiennoprzecinkowe. Używanie typu float jest naprawdę przydatne, gdyż ceny często mają wartości z przecinkiem, więc nie ma sensu tego trzymać w innym formacie. Z mojego doświadczenia, takie zmiany są ważne, bo pomagają w dokładnym przechowywaniu danych, co jest kluczowe w przy aplikacjach związanych z finansami czy sprzedażą online. Ale pamiętaj, że warto zawsze mieć kopię zapasową, bo jeśli masz już jakieś dane, które się nie zmieszczą w nowym typie, to może być kłopot. Generalnie, używanie 'ALTER TABLE' to podstawowa rzecz w zarządzaniu bazami danych i dobrze wiedzieć, co się robi.

Pytanie 19

Przypisanie wartości do zmiennej $dana = 125; zapisane jest w języku
A. C++
B. JavaScript
C. Python
D. PHP
Poprawna odpowiedź

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Instrukcja $dana = 125; jest charakterystyczna dla języka PHP, bo po pierwsze używa znaku dolara przed nazwą zmiennej, a po drugie ma średnik na końcu, tak jak wymagają tego standardy składni PHP. W PHP każda zmienna zaczyna się od $, np. $liczba, $imie, $userId. Jest to jedna z najbardziej rozpoznawalnych cech tego języka, od razu widać, że chodzi o kod wykonywany po stronie serwera, a nie np. o Pythona.
W typowym pliku PHP taki zapis pojawi się wewnątrz znacznika <?php ... ?>, na przykład:
<?php
$dana = 125;
echo $dana;
?>
To jest klasyczny przykład przypisania wartości typu całkowitego do zmiennej. PHP jest językiem słabo typowanym (dynamicznie typowanym), więc nie trzeba wcześniej deklarować typu zmiennej. Wystarczy ją po prostu utworzyć przez przypisanie. Z mojego doświadczenia to jest bardzo wygodne przy szybkim tworzeniu aplikacji webowych, np. liczników, prostych kalkulatorów, obsługi formularzy.
W praktyce takie przypisanie wykorzystuje się choćby przy pobieraniu danych z formularza: $wiek = (int)$_POST['wiek']; albo przy obliczeniach: $suma = $a + $b;. Dobrą praktyką jest nadawanie zmiennym czytelnych nazw i pilnowanie, żeby typ danych był przewidywalny, nawet jeśli PHP pozwala na sporą dowolność. W nowoczesnych projektach PHP (np. w frameworkach typu Laravel czy Symfony) nadal używa się dokładnie takiej składni przypisania, tylko zazwyczaj w bardziej rozbudowanych strukturach, np. w klasach, kontrolerach czy modelach. Moim zdaniem warto od początku kojarzyć znak $ jednoznacznie z PHP, bo to bardzo pomaga przy szybkim rozpoznawaniu przykładowego kodu w dokumentacji czy na forach.

Pytanie 20

Znacznik <pre> </pre> służy do prezentacji
A. treści czcionką o stałej szerokości
Poprawna odpowiedź
B. znaku przekreślenia
C. treści polską czcionką
D. znaku wielokropka

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Znacznik <pre> </pre> jest używany w HTML do wyświetlania tekstu w formacie preformatowanym, co oznacza, że zawartość wewnątrz tego znacznika jest wyświetlana czcionką o stałej szerokości, gdzie wszystkie białe znaki, w tym spacje i nowe linie, są zachowywane tak, jak zostały wpisane. To sprawia, że jest on niezwykle przydatny przy prezentacji kodu źródłowego, skryptów oraz innych danych, gdzie zachowanie dokładnego formatowania jest kluczowe. Przykładem może być kod HTML, JavaScript czy CSS, który można umieścić wewnątrz znacznika <pre> w celu poprawienia czytelności i umożliwienia użytkownikom łatwego skopiowania. Ponadto, znaczniki <pre> są często stosowane w dokumentacji technicznej, gdzie precyzyjne odwzorowanie formatowania jest istotne dla zrozumienia. Ważne jest również, aby zwrócić uwagę na to, że domyślnie tekst w elemencie <pre> nie jest łamany, co pozwala zachować jego oryginalny kształt i układ.

Pytanie 21

Formularze do zarządzania bazami danych są tworzone w celu
A. generowania raportów z danych
B. wyszukiwania rekordów spełniających określone kryteria
C. łatwiejszego wprowadzania, edytowania oraz usuwania danych
Poprawna odpowiedź
D. tworzenia powiązań w relacyjnych bazach danych

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Formularze do obsługi baz danych są kluczowym narzędziem, które umożliwia użytkownikom łatwe wprowadzanie, edytowanie i usuwanie danych w sposób zorganizowany i efektywny. Głównym celem formularzy jest zapewnienie przyjaznego interfejsu, który upraszcza interakcję z bazą danych, eliminując potrzebę bezpośredniego wprowadzania poleceń SQL czy pracy z tabelami w surowej formie. Dzięki formularzom użytkownicy mogą szybko wprowadzać dane do bazy, a także modyfikować istniejące rekordy, co jest szczególnie istotne w codziennym zarządzaniu danymi. Przykładem zastosowania formularzy jest system CRM, gdzie zespół sprzedażowy może w prosty sposób dodawać nowe informacje o klientach czy aktualizować dane kontaktowe. Dobre praktyki w projektowaniu formularzy obejmują zapewnienie walidacji danych, co pozwala na uniknięcie błędów podczas wprowadzania, oraz stosowanie odpowiednich typów pól, takich jak daty, numery czy listy rozwijane, które zwiększają użyteczność formularza. W skrócie, formularze są nieodłącznym elementem efektywnego zarządzania danymi i poprawiają wydajność pracy z bazami danych.

Pytanie 22

Jak nazywa się informacje opisujące inne informacje (dane o danych)?
A. język znaczników (markup language)
B. databus
C. metajęzyk (metalanguage)
D. metadane (metadata)
Poprawna odpowiedź

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Informacje opisujące inne dane (dane o danych) to METADANE - np. autor, data utworzenia, format czy rozmiar pliku. Dlatego mowa o metadanych.

Pytanie 23

Które wywołanie is_float() zwróci true?
A.
is_float(334)
B.
is_float(NULL)
C.
is_float('3,34')
D.
is_float(3.34)
Poprawna odpowiedź

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja is_float() zwraca true tylko dla liczby ZMIENNOPRZECINKOWEJ, a w kodzie część dziesiętną oddziela KROPKA - dlatego is_float(3.34) da true.

Pytanie 24

Wskaż nieprawdziwe zdanie dotyczące normalizacji dźwięku.
A. Funkcja normalizacja znajduje się w menu programu do edycji dźwięku.
B. Gdy najgłośniejszy fragment dźwięku ma wartość pół na skali, to wszystkie dźwięki zostaną wzmocnione dwukrotnie - w ten sposób najgłośniejszy fragment osiągnie maksymalną wartość na skali.
Poprawna odpowiedź
C. Podczas normalizacji poziom głośności całego nagrania jest wyrównywany.
D. Normalizacja polega na obniżeniu poziomu najgłośniejszej próbki w sygnale do określonej wartości, a następnie w odniesieniu do niej proporcjonalnym zwiększeniu głośności pozostałej części sygnału.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Twoja odpowiedź dobrze wskazuje na to, jak działa normalizacja. Generalnie chodzi o to, żeby dostosować głośność całego nagrania tak, aby najgłośniejszy fragment nie był za cichy. Kiedy ten najgłośniejszy kawałek jest na poziomie 50%, normalizacja podnosi głośność całego nagrania, żeby ten fragment był na maksa. W praktyce to też oznacza, że inne, cichsze części nagrania też będą głośniejsze, co jest ważne, bo pozwala to utrzymać przyjemny balans w dźwięku. Normalizacja jest bardzo powszechna, zwłaszcza w produkcji muzyki, żeby różne utwory miały podobny poziom głośności, bo różnice mogą być dość irytujące podczas słuchania. Ważne, żeby zawsze sprawdzić, czy po normalizacji nie ma jakichś zniekształceń czy clippingu. Czasem warto też używać normalizacji razem z innymi technikami, jak kompresja, żeby osiągnąć jeszcze lepszy efekt końcowy.

Pytanie 25

Jaką maksymalną liczbę znaczników &lt;td&gt; można zastosować w tabeli składającej się z trzech kolumn i trzech wierszy, która nie zawiera złączeń między komórkami oraz wiersza nagłówkowego?
A. 12
B. 9
Poprawna odpowiedź
C. 6
D. 3

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 9 jest poprawna, ponieważ w tabeli składającej się z trzech kolumn i trzech wierszy, każdy wiersz może zawierać trzy komórki danych. Zatem, aby obliczyć maksymalną liczbę znaczników &lt;td&gt;, należy pomnożyć liczbę kolumn przez liczbę wierszy: 3 kolumny x 3 wiersze = 9 znaczników &lt;td&gt;. Ważne jest, aby pamiętać, że w kontekście HTML, znacznik &lt;td&gt; służy do definiowania komórek tabeli i jest używany tylko do umieszczania danych w tabeli. Przy projektowaniu tabel w HTML, dobrym rozwiązaniem jest stosowanie przejrzystej struktury oraz odpowiednich znaczników, aby poprawić czytelność i dostępność stron. Zgodnie z dobrymi praktykami, zawsze warto używać znaczników &lt;th&gt; do nagłówków kolumn, ale w tym przypadku, zgodnie z treścią pytania, zakładamy, że nie stosujemy wiersza nagłówkowego. W efekcie maksymalna liczba komórek, które można wykorzystać w takiej tabeli, wynosi 9. Przykładem zastosowania takiej tabeli może być wyświetlanie danych o produktach, gdzie każda komórka zawierać może różne informacje, takie jak nazwa produktu, cena i ilość.

Pytanie 26

Jaki zapis szesnastkowy odpowiada kolorowi rgb(128, 16, 8)?
A.
#800F80
B.
#801008
Poprawna odpowiedź
C.
#FF1008
D.
#FF0F80

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Każdą składową RGB (0-255) zapisuje się dwucyfrowo szesnastkowo: 128 = 80, 16 = 10, 8 = 08, co po sklejeniu daje #801008. Przelicznik: 128 to połowa z 256, czyli 0x80. Zapamiętaj metodę: licz każdą składową osobno i połącz w #RRGGBB.

Pytanie 27

Weryfikację kompletności formularza, działającą po stronie przeglądarki, należy zrealizować w języku
A. CSS
B. Ruby on Rails
C. JavaScript
Poprawna odpowiedź
D. PHP

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to JavaScript, bo właśnie ten język działa bezpośrednio w przeglądarce użytkownika i pozwala na dynamiczną weryfikację formularzy jeszcze przed wysłaniem danych na serwer. JavaScript ma dostęp do drzewa DOM, więc może odczytać wartości pól, sprawdzić, czy nie są puste, czy e‑mail ma poprawny format, czy hasło ma odpowiednią długość, a nawet czy dwa pola hasła są identyczne. Z mojego doświadczenia to jest absolutny standard w nowoczesnych aplikacjach webowych: najpierw lekka walidacja po stronie klienta w JS, a dopiero potem solidna walidacja po stronie serwera.
Dobrym przykładem jest formularz rejestracji: po wpisaniu zbyt krótkiego hasła JavaScript może od razu wyświetlić komunikat pod polem, bez przeładowania strony. Można też blokować przycisk „Wyślij”, dopóki wszystkie wymagane pola nie są poprawnie wypełnione. W praktyce często używa się zdarzeń takich jak onsubmit na formularzu albo input/blur na polach, żeby na bieżąco sprawdzać dane. Można też korzystać z gotowych bibliotek walidacyjnych, ale pod spodem i tak pracuje JavaScript.
W dobrych praktykach przyjmuje się zasadę: walidacja po stronie klienta poprawia wygodę i szybkość obsługi (user experience), ale nie zastępuje walidacji po stronie serwera. JavaScript służy więc do „pierwszej linii obrony” i podpowiedzi użytkownikowi, a serwer (np. w PHP czy innym języku backendowym) musi i tak wszystko jeszcze raz sprawdzić ze względów bezpieczeństwa. Warto też pamiętać o wykorzystaniu wbudowanych mechanizmów HTML5 (atrybuty required, type="email" itd.), ale to JavaScript daje pełną kontrolę nad logiką i komunikatami błędów, bo pozwala tworzyć własne reguły i reagować na konkretne zachowania użytkownika.

Pytanie 28

Jakie wyrażenie należy umieścić w miejsce ??? w pętli napisanej w języku C++, aby na ekranie zostały wyświetlone wyłącznie elementy tablicy tab?
int tab[6];
for (int i = 0; ???; i++)
    cout << tab[i];
A. i >= 6
B. i > 6
C. i < 6
Poprawna odpowiedź
D. i <= 6

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wybór wyrażenia i < 6 jako warunku w pętli for jest poprawny, ponieważ tablica tab została zadeklarowana z sześcioma elementami, co oznacza, że indeksy tej tablicy wahają się od 0 do 5. W języku C++ indeksy tablic zaczynają się od zera, co jest standardową konwencją w wielu językach programowania, takich jak C, C++, Java czy Python. Dzięki zastosowaniu wyrażenia i < 6 w warunku pętli for, zapewniamy, że iteracja obejmuje wszystkie dopuszczalne indeksy tablicy, tj. 0, 1, 2, 3, 4 i 5. Jest to kluczowe dla uniknięcia błędów typu out-of-bounds, które mogą prowadzić do nieprzewidywalnego zachowania programu lub jego awarii. W praktyce, podczas pracy z tablicami, bardzo ważne jest upewnienie się, że indeksy używane w pętli mieszczą się w zakresie długości tablicy. Taki sposób iteracji jest zgodny z dobrymi praktykami programistycznymi, które kładą nacisk na bezpieczeństwo i niezawodność kodu. Ponadto, stosowanie wyraźnych warunków w pętlach poprawia czytelność kodu, co jest istotne w większych projektach, w których kod jest utrzymywany przez zespoły programistyczne.

Pytanie 29

Zmienna zadeklarowana w C++ jako double x*; to
A. wskaźnik
Poprawna odpowiedź
B. parametr formalny typu zmiennoprzecinkowego
C. zmienna zmiennoprzecinkowa
D. zmienna typu całkowitego

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Element zadeklarowany w języku C++ jako 'double x*;' odnosi się do wskaźnika na zmienną typu podwójnej precyzji. Wskaźniki w C++ są zmiennymi, które przechowują adresy innych zmiennych, co pozwala na dynamiczne zarządzanie pamięcią oraz efektywną manipulację danymi. W przypadku 'double x*;', zmienna 'x' jest wskaźnikiem, który może wskazywać na obiekt typu double. Użycie wskaźników jest kluczowe w programowaniu obiektowym oraz przy tworzeniu struktur danych, takich jak listy połączone czy tablice dynamiczne. Przykład użycia wskaźnika: double a = 5.0; double* x = &a; pozwala na manipulację wartością 'a' przez wskaźnik 'x'. C++ umożliwia również operacje na wskaźnikach, takie jak dereferencja, co pozwala na uzyskiwanie wartości przechowywanych pod wskazywanym adresem. W standardzie C++ wskaźniki są fundamentalnym elementem, który jest niezbędny do zrozumienia zaawansowanych konceptów, takich jak zarządzanie pamięcią oraz dynamiczne alokacje. Warto zaznaczyć, że wskaźniki muszą być używane ostrożnie, aby uniknąć błędów typu 'null pointer dereference' czy 'memory leaks'.

Pytanie 30

Która kwerenda wybierze z tabeli Uczniowie tylko osoby o imieniu „Aleksandra” urodzone PO 1998 roku?
A.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" AND rok_urodzenia > "1998";
Poprawna odpowiedź
B.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" OR rok_urodzenia < "1998";
C.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" OR rok_urodzenia > "1998";
D.
SELECT * FROM Uczniowie WHERE imie = "Aleksandra" AND rok_urodzenia < "1998";

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zadanie stawia dwa warunki, które muszą być spełnione JEDNOCZEŚNIE: imię „Aleksandra” oraz urodzenie po 1998 - takie połączenie zapewnia operator AND, a „po roku” to rok_urodzenia > "1998". Daje to SELECT * FROM Uczniowie WHERE imie = "Aleksandra" AND rok_urodzenia > "1998";. Dlatego ta kwerenda jest poprawna.

Pytanie 31

Której pseudoklasy CSS użyć, aby element zmieniał kolor po najechaniu kursorem?
A.
:active
B.
:hover
Poprawna odpowiedź
C.
:visited
D.
:coursor

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Pseudoklasa :hover zmienia wygląd elementu, gdy najedzie na niego kursor, np. a:hover { color: red; } podświetli link pod myszą. To podstawowy sposób na interaktywne reakcje bez JavaScriptu. Zapamiętaj: „hover” = unoszenie kursora nad elementem.

Pytanie 32

W programie do edycji grafiki rastrowej, aby skoncentrować się na wybranej części obrazu, nie wpływając na pozostałe jego fragmenty, można zastosować
A. warstwy
Poprawna odpowiedź
B. odwrócenie
C. zmianę rozmiaru
D. przycinanie

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Warstwy w edytorach grafiki rastrowej to fundamentalne narzędzie umożliwiające pracę na poszczególnych elementach obrazu bez wpływu na całość. Dzięki zastosowaniu warstw można oddzielić różne elementy graficzne, co pozwala na edytowanie, przekształcanie i manipulowanie nimi niezależnie. Na przykład, można umieścić tekst na oddzielnej warstwie, a następnie dowolnie zmieniać jego położenie, rozmiar czy kolor, nie wpływając na tło. Dodatkowo, warstwy umożliwiają łatwe tworzenie efektów przezroczystości oraz cieni, co zwiększa możliwości artystyczne i techniczne podczas projektowania. W praktyce, standardy dotyczące pracy z warstwami są powszechnie stosowane w branży, co podkreśla ich znaczenie w profesjonalnych edytorach takich jak Adobe Photoshop czy GIMP. Warto również dodać, że organizacja pracy z warstwami, poprzez odpowiednie ich nazywanie i grupowanie, znacznie ułatwia zarządzanie złożonymi projektami graficznymi.

Pytanie 33

Przedstawiona linia kreskowa w stylu obramowania CSS jest określona własnością
Ilustracja do pytania
A. doted
B. dashed
Poprawna odpowiedź
C. double
D. solid

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dobrze zrozumiałeś temat. Linia kreskowa w stylu CSS jest określana właściwością 'dashed'. Jest to jedna z kilku wartości, które można przypisać właściwości 'border-style' w języku CSS, aby manipulować wyglądem obramowania elementu. Stosowanie różnych styli linii pozwala na tworzenie bardziej skomplikowanych i estetycznie przyjemnych projektów. Na przykład, styl 'dashed' może być używany do zaznaczania linków lub przycisków, aby zwrócić uwagę użytkownika. Ważne jest jednak, aby zawsze pamiętać o utrzymaniu konsekwencji w projektowaniu stron internetowych. Dobre praktyki zalecają, aby wybierać styl obramowania, który najlepiej pasuje do ogólnego stylu strony. Podsumowując, właściwość 'border-style' jest kluczowym narzędziem w projektowaniu stron internetowych.

Pytanie 34

W przedstawionej regule CSS h1{color: blue} co oznacza h1?
A. deklarację
B. selektor
Poprawna odpowiedź
C. wartość
D. klasę

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W regule CSS h1{color: blue} termin h1 odnosi się do selektora, który jest używany do wybierania elementów HTML, a w tym przypadku oznacza wszystkie nagłówki pierwszego poziomu. Selekcje w CSS są kluczowym elementem stylizacji stron internetowych, ponieważ pozwalają na precyzyjne określenie, które elementy mają być stylizowane. Selekcja h1 odnosi się do wszystkich elementów <h1> w dokumencie HTML, co oznacza, że wszystkie nagłówki pierwszego poziomu zostaną stylizowane zgodnie z podaną regułą. Wartością kolorystyki, czyli blue, jest przypisana do właściwości CSS 'color', co skutkuje zmianą koloru tekstu nagłówka na niebieski. Zgodnie z W3C, CSS (Cascading Style Sheets) pozwala na oddzielenie treści od prezentacji, co zwiększa elastyczność i ułatwia zarządzanie stylem strony. Przykładem praktycznym może być strona internetowa, gdzie wszystkie nagłówki pierwszego poziomu są wyróżnione kolorem niebieskim, co przyciąga uwagę użytkowników i poprawia czytelność. Selekcja jest zatem podstawowym narzędziem w stylizacji, umożliwiającym aplikację reguł CSS do określonych elementów HTML.

Pytanie 35

Który z formatów plików graficznych używa kompresji stratnej?
A. GIF
B. BMP
C. PNG
D. JPEG
Poprawna odpowiedź

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
JPEG stosuje kompresję STRATNĄ - usuwa część informacji o obrazie, by mocno zmniejszyć plik, co sprawdza się przy zdjęciach. Dlatego stratnej kompresji używa JPEG.

Pytanie 36

W języku PHP wartość 1 została przypisana do zmiennej $a. Porównanie $a === $b zwraca true, gdy zmienna $b ma wartość
A. A. *1
Poprawna odpowiedź
B. D. "1" lub '1'
C. B. '1'
D. C. 1 lub '1'

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Porównanie w języku PHP za pomocą operatora identyczności (===) sprawdza zarówno wartość, jak i typ zmiennych. W przypadku, gdy zmienna $a została zainicjowana wartością 1 jako liczba całkowita (integer), operator ten zwróci true, jeśli zmienna $b również będzie miała wartość 1 jako liczba całkowita. Jest to kluczowe, ponieważ operator === nie przeprowadza konwersji typów, co oznacza, że porównywane zmienne muszą być tego samego typu. Wartości 1, '1' (string) czy "1" (również string) nie będą wystarczające, ponieważ są one w innych typach niż 1 (integer). Dlatego poprawna odpowiedź to A. 1. W praktyce, użycie operatora identyczności jest zalecane w sytuacjach, gdy potrzebujemy pewności, że porównywane wartości są identyczne, co zapobiega potencjalnym błędom, które mogą wyniknąć z niezamierzonych konwersji typów. Warto także zauważyć, że dobre praktyki programistyczne w PHP zalecają unikanie używania operatorów porównania, które mogą prowadzić do niejednoznacznych wyników, takich jak ==, jeśli nie jest to absolutnie konieczne.

Pytanie 37

Które stwierdzenie najlepiej opisuje klasę Owoc zdefiniowaną w języku PHP i przedstawioną na listingu?
class Owoc {
    public $nazwa;
    private $kolor;
    function set_nazwa($nazwa) {
        $this->nazwa = $nazwa;
    }
}
A. Zawiera dwa pola i jedną metodę, a pole kolor ma zasięg widzialności ograniczony wyłącznie do metod klasy.
Poprawna odpowiedź
B. Zawiera dwa pola oraz jeden konstruktor, oba pola mają zasięg widzialności ograniczony wyłącznie do metod klasy.
C. Zawiera jedno pole i dwie metody, z których jedna ma ograniczony zasięg prywatny.
D. Zawiera dwa pola i jedną metodę, a pole nazwa ma zasięg widzialności ograniczony wyłącznie do metod klasy.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Klasa Owoc rzeczywiście ma dwa pola: publiczne pole nazwa oraz prywatne pole kolor. Widoczność pola kolor ogranicza się do wnętrza klasy, co oznacza, że nie może być ono bezpośrednio dostępne z zewnątrz. Metoda set_nazwa jest jedyną zdefiniowaną metodą, która umożliwia modyfikację wartości pola nazwa. Przykładowo, można stworzyć nowy obiekt klasy Owoc i ustawić jego nazwę za pomocą tej metody: $owoc = new Owoc(); $owoc->set_nazwa('Jabłko');. Takie podejście ilustruje zasadę enkapsulacji, która jest jedną z podstaw programowania obiektowego, gdzie dane obiektu są chronione i dostępne tylko poprzez metody, co zwiększa bezpieczeństwo i integralność danych. Dobrą praktyką jest również stosowanie metod get i set do zarządzania wartościami pól, co ułatwia kontrolowanie dostępu i weryfikację danych.

Pytanie 38

W języku SQL, aby usunąć wszystkie rekordy z tabeli z możliwością wycofania operacji w ramach transakcji, należy użyć polecenia
A.
DROP TABLE
B.
DELETE FROM
Poprawna odpowiedź
C.
ALTER TABLE
D.
REMOVE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie DELETE FROM jest właściwe, bo służy do usuwania rekordów, czyli wierszy, z tabeli, a nie do kasowania samej tabeli ani zmiany jej struktury. Jeśli zapiszesz np. BEGIN TRANSACTION; DELETE FROM klienci; ROLLBACK;, to w typowej bazie obsługującej transakcje, np. PostgreSQL, MySQL z InnoDB albo SQL Server, usunięcie wierszy można wycofać. To jest właśnie kluczowe w pytaniu: chodzi o usunięcie wszystkich rekordów z możliwością cofnięcia operacji. Brak warunku WHERE oznacza, że operacja dotyczy całej tabeli, więc DELETE FROM nazwa_tabeli; usuwa wszystkie wiersze. W praktyce trzeba z tym uważać, bo jedno pominięte WHERE potrafi zrobić spory bałagan. Moim zdaniem dobra praktyka to najpierw wykonać SELECT z takim samym warunkiem, sprawdzić liczbę rekordów, a dopiero potem uruchomić DELETE w transakcji. Warto też wiedzieć, że DELETE zapisuje zmiany w dzienniku transakcyjnym i działa zgodnie z mechanizmami ACID, więc baza może zapewnić spójność danych. Często myli się to z TRUNCATE, które też czyści tabelę, ale w różnych systemach SQL ma inne zasady transakcyjności i zwykle jest traktowane bardziej jak szybka operacja administracyjna na całej tabeli.

Pytanie 39

W tabeli personel znajdują się pola: imię, nazwisko, pensja, staż. Aby obliczyć średnią pensję osób zatrudnionych z doświadczeniem od 10 do 20 lat włącznie, należy przeprowadzić kwerendę:
A.
SELECT AVG(*) FROM personel WHERE staz >= 10 AND staz <= 20
B.
SELECT COUNT(pensja) FROM personel WHERE staz >= 10 AND staz <= 20
C.
SELECT COUNT(*) FROM personel WHERE staz >= 10 AND staz <= 20
D.
SELECT AVG(pensja) FROM personel WHERE staz >= 10 AND staz <= 20
Poprawna odpowiedź

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Ta odpowiedź jest prawidłowa, ponieważ używa funkcji agregującej AVG, która oblicza średnią wartość z określonego pola, w tym przypadku pensji. Warunek WHERE zapewnia, że tylko pracownicy z stażem od 10 do 20 lat są brani pod uwagę w obliczeniach. Użycie funkcji AVG w kontekście SQL jest standardową praktyką, gdy chcemy uzyskać średnią z danych numerycznych. Na przykład, jeśli w tabeli mamy pracowników z różnymi pensjami, a chcemy zrozumieć, jak wygląda średnia wynagrodzeń w określonym przedziale stażu, to właśnie ta kwerenda dostarcza nam niezbędnej informacji. Dobre praktyki w analizie danych wskazują, że obliczenie średniej pensji jest kluczowe dla zarządzania zasobami ludzkimi i podejmowania decyzji dotyczących polityki wynagrodzeń. Przykładem może być sytuacja, gdy firma decyduje o podwyżkach lub bonusach, a analiza średniej pensji w danej grupie pracowników może znacząco wpłynąć na te decyzje.

Pytanie 40

Jakiego typu mechanizm zabezpieczeń dotyczący uruchamiania aplikacji jest obecny w środowisku wykonawczym platformy .NET Framework?
A. Mechanizm uruchamiania aplikacji dla bibliotek klas
B. Mechanizm uruchamiania aplikacji realizowany przez funkcję Windows API (Application Programming Interface)
C. Mechanizm uruchamiania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) i na rolach (RBS - Role-Based Security)
Poprawna odpowiedź
D. Mechanizm uruchamiania aplikacji realizowany przez frameworki aplikacji internetowych (ASP.NET)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź dotycząca mechanizmu bezpieczeństwa opartego na uprawnieniach kodu (CAS - Code Access Security) oraz na rolach (RBS - Role-Based Security) jest prawidłowa, ponieważ stanowi kluczowy element architektury zabezpieczeń w platformie .NET Framework. CAS pozwala na precyzyjne definiowanie uprawnień, jakie aplikacje mają w swoim działaniu, co jest niezwykle istotne w kontekście ochrony zasobów systemowych i danych użytkowników. Mechanizm ten umożliwia ograniczenie dostępu do operacji, takich jak zapis do plików, dostęp do sieci czy zmiana ustawień systemowych, co jest szczególnie ważne w aplikacjach działających w niezaufanym środowisku. RBS natomiast pozwala na przypisywanie uprawnień na podstawie ról użytkowników, co czyni zarządzanie dostępem bardziej elastycznym i zgodnym z dobrymi praktykami bezpieczeństwa. Przykładem zastosowania tych mechanizmów jest rozwijanie aplikacji webowych, które muszą działać w warunkach silnych ograniczeń bezpieczeństwa, na przykład w chmurze. W takich przypadkach możliwość precyzyjnego zarządzania uprawnieniami staje się kluczowa dla zapewnienia bezpieczeństwa danych i integralności systemu.