Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 czerwca 2026 12:46
  • Data zakończenia: 8 czerwca 2026 13:00

Egzamin zdany!

Wynik: 35/40 punktów (87,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Które z instrukcji algorytmu odpowiada graficznemu przedstawieniu bloku pokazanego na ilustracji?

Ilustracja do pytania
A. Wyświetl w konsoli wartość zmiennej n
B. n ← n – 3
C. Zrealizuj podprogram do sortowania tablicy t
D. n > 70
Odpowiedź n ← n – 3 to typowa operacja matematyczna, którą naprawdę często używamy w programowaniu. W skrócie, chodzi o to, że zmieniamy wartość zmiennej. Można to przedstawić przy użyciu prostokątnego bloku w diagramie, co jest standardem w notacjach algorytmicznych. To jest ważne, zwłaszcza w strukturach kontrolnych, jak pętle, bo musimy modyfikować zmienną, żeby pętla mogła się zakończyć po pewnej liczbie powtórzeń. Na przykład, w pętli for możemy zmieniać wartość zmiennej, żeby przechodzić przez elementy tablicy w odwrotnym kierunku. Dobrze jest dokumentować takie operacje w kodzie, żeby potem łatwiej było do niego wrócić. Te przypisania są również kluczowe w algorytmach, bo nawet małe zmiany w zmiennych mogą znacząco wpłynąć na wydajność. Zrozumienie tego wszystkiego to podstawa dla każdego programisty, który chce pisać dobry kod.

Pytanie 2

W języku JavaScript stworzono zmienną i, która będzie przechowywać wynik dzielenia równy 1, to

A. var i=Number(3/2)
B. var i=parseFloat(3/2)
C. var i=parseInt(3/2)
D. var i=3/2
Wybór 'var i=parseInt(3/2);' jest właściwy, ponieważ funkcja parseInt służy do konwersji wartości liczbowych na liczby całkowite. W tym przypadku, wyrażenie 3/2 zwraca wartość 1.5, a funkcja parseInt zamienia tę wartość na 1, co jest zgodne z oczekiwanym wynikiem. Warto zauważyć, że parseInt zawsze zwraca najbliższą liczbę całkowitą, zaokrąglając w dół, co czyni ją idealnym narzędziem do realizacji tego celu. W JavaScript istnieje wiele sposobów na konwersję wartości liczbowych, a parseInt jest jednym z najczęściej używanych, gdyż pozwala na przetwarzanie tekstów i liczb w zrozumiały sposób. Przykładowo, jeśli mamy stringa '10.5', użycie parseInt('10.5') da wynik 10. Odniesienie do standardów JavaScript w kontekście konwersji typów można znaleźć w dokumentacji ECMAScript, która definiuje zasady działania funkcji konwertujących. Dobrą praktyką jest również zwrócenie uwagi na radzenie sobie z typami danych w JavaScript, aby uniknąć nieporozumień w przyszłości.

Pytanie 3

W zaprezentowanej klasie zdefiniowane zostały

class a {
    public $b;
    public $c;
    public function d() {}
}
A. dwie metody
B. jedna właściwość
C. dwa obiekty
D. dwie właściwości
W przedstawionej klasie w języku PHP zdefiniowano dwie właściwości publiczne: $b oraz $c. Właściwości te są zmiennymi, które mogą przechowywać dane różnego typu i są dostępne z poziomu innych obiektów lub kodu poza klasą dzięki modyfikatorowi dostępu public. W praktyce, właściwości klasy są wykorzystywane do przechowywania stanu obiektu czyli wartości specyficznych dla instancji tej klasy. Należy pamiętać o dobrych praktykach w programowaniu obiektowym, takich jak stosowanie odpowiednich modyfikatorów dostępu (public, private, protected) w celu lepszej enkapsulacji danych oraz korzystanie z metod dostępowych (getterów i setterów) w celu kontroli dostępu i modyfikacji właściwości. Właściwości te mogłyby być użyte na przykład do przechowywania danych użytkownika, takich jak imię i nazwisko, w klasach modelujących obiekty w aplikacjach typu MVC. Zastosowanie właściwości jako mechanizmu przechowywania stanu obiektu jest kluczowym elementem programowania obiektowego i poprawnego projektowania klas.

Pytanie 4

W tabeli mieszkańcy zawierającej pola id, imie, nazwisko, ulica, numer, czynsz (wartość całkowita) należy zidentyfikować osoby zamieszkujące ulicę Mickiewicza pod numerami 71, 72, 80, których czynsz jest niższy niż
1000 zł. Jak będzie wyglądać klauzula WHERE w zapytaniu?

A. WHERE ulica = 'Mickiewicza' AND numer IN (71, 72, 80) AND czynsz < 1000
B. WHERE ulica = 'Mickiewicza' AND numer > 70 AND numer < 81 OR czynsz < 1000
C. WHERE ulica = 'Mickiewicza' AND numer IN (71, 72, 80) OR czynsz < 1000
D. WHERE ulica = 'Mickiewicza' OR numer IN (71, 72, 80) OR czynsz < 1000
Odpowiedź jest prawidłowa, ponieważ klauzula WHERE w zapytaniu SQL skutecznie filtruje dane zgodnie z wymaganiami. W tym przypadku, użycie operatora AND w połączeniu z IN i warunkiem < 1000 zapewnia, że zwrócone zostaną jedynie te rekordy, które spełniają wszystkie trzy kryteria: ulica musi być 'Mickiewicza', numer musi być jednym z 71, 72 lub 80, a czynsz musi być mniejszy niż 1000 zł. To jest zgodne z dobrą praktyką w SQL, gdzie łączenie warunków z użyciem operatorów logicznych pozwala na precyzyjne określenie zestawu danych, które nas interesują. Przy tak skonstruowanej klauzuli, zapytanie będzie wydajne i zrozumiałe, co jest kluczowe w pracy z bazami danych. Przykładowe zastosowanie to generowanie raportów dotyczących mieszkańców, co może być istotne dla zarządzania nieruchomościami lub analizy rynku wynajmu. Tego typu zapytania są powszechnie używane w aplikacjach webowych i systemach zarządzania danymi, co podkreśla znaczenie umiejętności formułowania precyzyjnych zapytań SQL.

Pytanie 5

Która z list jest interpretacją pokazanego kodu?

Ilustracja do pytania
A. Odpowiedź A
B. Odpowiedź D
C. Odpowiedź B
D. Odpowiedź C
Odpowiedź C jest prawidłowa, ponieważ odpowiada strukturze listy zagnieżdżonej w HTML. W kodzie źródłowym użyto listy uporządkowanej <ol>, co oznacza, że elementy listy będą numerowane. Każdy element <li> w tej liście może zawierać dodatkowe listy nieuporządkowane <ul>, które są oznaczane jako lista punktowana. W przypadku kodu przedstawionego na rysunku mamy dwie główne pozycje 'muzyka' i 'filmy' zawarte w liście uporządkowanej, stąd 1. muzyka i 2. filmy. Pod pozycjami 'muzyka' i 'filmy' znajdują się listy zagnieżdżone nieuporządkowane, zawierające wpisy 'Wpis1', 'Wpis2', 'Wpis3' i 'Wpis4'. Dobre praktyki w projektowaniu stron sugerują użycie list zagnieżdżonych do klarownego przedstawienia hierarchii informacji. Wykorzystanie list uporządkowanych i nieuporządkowanych jest standardem w semantycznym HTML, co wpływa na dostępność stron internetowych oraz ich zgodność z różnymi urządzeniami i technologiami wspomagającymi. Taka struktura ułatwia również nawigację wśród treści dla użytkowników i algorytmów indeksujących wyszukiwarek internetowych.

Pytanie 6

Które zdarzenie pozwala uruchomić skrypt JavaScript przy wysyłaniu formularza HTML i kontrolować jego wysłanie?

A. onClick
B. onEnter
C. onSubmit
D. onChange
Pozostałe zdarzenia dotyczą czego innego. onclick reaguje na kliknięcie elementu, onchange na zmianę wartości pola, a onEnter nie istnieje w standardzie. Wysłanie formularza obsługuje i kontroluje onsubmit.

Pytanie 7

Po uszkodzeniu serwera bazy danych, aby jak najszybciej przywrócić pełną bazę, należy użyć:

A. kompletnej listy użytkowników serwera
B. opisów struktur danych w tabelach
C. najnowszej wersji instalacyjnej serwera
D. aktualnej kopii zapasowej
Po uszkodzeniu serwera najszybciej odtworzysz PEŁNĄ bazę z aktualnej KOPII ZAPASOWEJ (backupu) - zawiera ona zarówno strukturę, jak i dane. Dlatego regularne kopie to podstawa bezpieczeństwa: im świeższy backup, tym mniejsza strata. Zapamiętaj: awaria danych = przywrócenie z kopii zapasowej.

Pytanie 8

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

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

Pytanie 9

SELECT count(*) FROM Uczniowie WHERE srednia = 5;
Wynikiem uruchomienia przedstawionego zapytania SQL jest:
A. Liczba uczniów, których średnia ocen wynosi 5.
B. Średnia ocen wszystkich uczniów.
C. Liczba wszystkich uczniów.
D. Suma ocen uczniów, których średnia ocen wynosi 5.
Poprawnie – to zapytanie zwraca liczbę uczniów, których kolumna „srednia” ma wartość równą dokładnie 5. Funkcja agregująca COUNT(*) w SQL nie liczy sumy ani średniej, tylko po prostu zlicza wiersze spełniające warunek w klauzuli WHERE. W tym przypadku tabela Uczniowie jest filtrowana warunkiem srednia = 5, więc do liczenia trafiają wyłącznie rekordy uczniów, którzy mają średnią ocen równą 5. Dopiero na takim przefiltrowanym zbiorze wykonywany jest COUNT(*), który zwraca jedną liczbę – ile takich rekordów istnieje. Moim zdaniem to jedno z najczęściej używanych połączeń: WHERE + COUNT(*), bo w praktyce non stop chcemy wiedzieć „ile jest elementów spełniających warunek”. W raportach, panelach administracyjnych, dashboardach – np. ile jest klientów z określonym statusem, ilu użytkowników ma aktywne konto, ilu pracowników ma premię powyżej jakiegoś progu itd. Warto też zauważyć, że COUNT(*) liczy wszystkie wiersze, niezależnie od tego, czy jakieś inne kolumny są NULL, a kluczowe jest tylko to, że warunek WHERE jest spełniony. Dobrą praktyką jest zawsze dokładne określanie warunku filtrowania, bo drobna zmiana, np. srednia >= 5 zamiast srednia = 5, całkowicie zmienia znaczenie zapytania. W projektowaniu baz danych i zapytań SQL takie precyzyjne myślenie o warunkach i funkcjach agregujących jest absolutną podstawą profesjonalnej pracy z danymi.

Pytanie 10

Poprawny zapis znacznika , za pomocą którego można umieścić na stronie internetowej obraz rys.jpg przeskalowany do szerokości 120 px i wysokości 80 px z tekstem alternatywnym "krajobraz" to

A. <img src="rys.jpg" height="120px" width="80px" info="krajobraz">
B. <img src="rys.jpg" width="120px" height="80px" alt="krajobraz">
C. <img href="rys.jpg" height="120px" width="80px" info="krajobraz">
D. <img image="rys.jpg" width="120px" height="80px" alt="krajobraz">
Odpowiedź <img src="rys.jpg" width="120px" height="80px" alt="krajobraz"> jest na pewno dobra! Używasz fajnego atrybutu 'src' do wskazania, skąd bierzesz obrazek, co jest super ważne. Atrybuty 'width' i 'height' też są dobrze ustawione, bo określają, jak duży ma być obrazek na stronie. To naprawdę przydaje się, zwłaszcza jak robimy responsywne strony. A ten 'alt', to świetny pomysł – daje tekst alternatywny, co bardzo pomaga osobom, które korzystają z czytników ekranu. Bez tego mogą nie wiedzieć, co jest na obrazku, a to jest spoko, bo dba o dostępność. Co do pikseli, używasz ich standardowo, ale pomyśl, że w CSS można też iść w procenty czy jednostki względne, żeby było jeszcze elastyczniej. W sumie, gdybyś chciał, mógłbyś bawić się CSS-em do stylizacji obrazów tła, co też sprawia, że wszystko lepiej się dopasowuje do różnych ekranów.

Pytanie 11

W znaczniku meta w miejsce kropek należy wpisać

Ilustracja do pytania
A. język dokumentu
B. nazwa edytora
C. informację o dostosowaniu do urządzeń mobilnych
D. streszczenie treści strony
Znacznik meta opatrzony atrybutem name="description" służy do zamieszczenia streszczenia treści strony internetowej. Jest to element HTML używany w nagłówku dokumentu, który dostarcza wyszukiwarkom i innym usługom internetowym informacji o zawartości strony. Opis ten pomaga w lepszym indeksowaniu strony przez wyszukiwarki oraz może wpływać na to, jak strona jest prezentowana w wynikach wyszukiwania. Dzięki dobrze sformułowanemu opisowi użytkownicy mogą szybciej zrozumieć, czego mogą się spodziewać po odwiedzeniu danej strony. Jest to dobra praktyka SEO, ponieważ poprawia widoczność strony w wyszukiwarkach. Zawartość opisana w znaczniku meta description nie powinna przekraczać 160 znaków, aby zapewnić odpowiednie wyświetlanie w wynikach wyszukiwania. Użycie streszczenia w odpowiedni sposób zwiększa atrakcyjność kliknięcia przez potencjalnych odwiedzających. To podejście jest zgodne z wytycznymi Google, które zaleca tworzenie unikalnych i treściwych opisów dla każdej strony w serwisie.

Pytanie 12

Wywoływanie funkcji przez samą siebie to

A. dziedziczenie
B. rekurencja
C. iteracja
D. hermetyzacja
Rekurencja to technika programistyczna, w której funkcja wywołuje samą siebie w celu rozwiązania problemu. Jest to potężne narzędzie, które pozwala na rozwiązywanie złożonych problemów przez ich dzielenie na mniejsze, bardziej przystępne podproblemy. Przykładem zastosowania rekurencji może być obliczanie silni liczby naturalnej, gdzie silnia n (n!) jest definiowana jako n * (n-1)! dla n > 0, a 1! = 1. W praktyce, rekurencja jest często wykorzystywana w algorytmach związanych z przeszukiwaniem struktur danych, takich jak drzewa czy grafy, gdzie takie podejście pozwala na eleganckie i czytelne rozwiązania. Dobrą praktyką w programowaniu rekurencyjnym jest zawsze definiowanie warunku zakończenia, aby uniknąć niekończących się wywołań, co mogłoby prowadzić do przepełnienia stosu. Rekurencja jest zgodna z zasadami programowania funkcyjnego, które promuje czystość i modularność kodu, co sprzyja jego testowalności i ponownemu wykorzystaniu.

Pytanie 13

Jakiego rodzaju oprogramowanie narzędziowe powinno być zainstalowane, aby umożliwić użytkownikowi przeprowadzanie operacji na zgromadzonych danych?

A. Klucz obcy
B. Otwarty mechanizm komunikacji bazy danych
C. System Zarządzania Bazą Danych (SZBD)
D. Obiektowy System Zarządzania Bazą Danych
System Zarządzania Bazą Danych, czyli SZBD, to coś, co naprawdę ma duże znaczenie w organizacjach, jeśli mówimy o danych. Dzięki niemu możemy działać z danymi znacznie sprawniej – przechowywać je, aktualizować, usuwać i robić wiele innych rzeczy. To taki pomost między tym, co robią użytkownicy, a samymi danymi. Przy takich systemach jak MySQL, PostgreSQL czy Oracle Database, możemy korzystać z super funkcji, takich jak transakcje czy zarządzanie użytkownikami. To nie tylko ułatwia życie, ale też pozwala na lepsze działania. No i nie zapominaj, że standardy jak SQL to klucz do komunikacji z bazami, niezależnie od technologii. Można też mówić o dobrych praktykach, jak robienie kopii zapasowych czy monitorowanie wydajności. Właściwie, wprowadzenie takiego systemu to fundament do skutecznego zarządzania danymi w każdej organizacji, więc warto się tym zająć.

Pytanie 14

CMYK to zestaw czterech podstawowych kolorów stosowanych w druku:

A. turkusowego, błękitnego, białego, różowego
B. turkusowego, purpurowego, żółtego, czarnego
C. turkusowego, purpurowego, białego, czarnego
D. czerwonego, purpurowego, żółtego, szarego
CMYK to model barw używany w druku, oparty na czterech farbach: C - cyan (turkusowy), M - magenta (purpurowy), Y - yellow (żółty) i K - key/black (czarny). Kolory powstają przez nakładanie farb na biały papier (synteza substraktywna), a czarny dodaje głębi i oszczędza pozostałe farby. Dlatego CMYK to turkusowy, purpurowy, żółty i czarny.

Pytanie 15

Testy sprawdzające, czy aplikacja działa poprawnie w różnych architekturach serwera, konfiguracjach i środowiskach, to testy:

A. funkcjonalności
B. bezpieczeństwa
C. użyteczności
D. kompatybilności
Pozostałe testy mają inny cel. Testy bezpieczeństwa szukają podatności i luk. Testy funkcjonalności sprawdzają, czy program robi to, co powinien. Testy użyteczności oceniają wygodę obsługi dla użytkownika. Zgodność z różnymi środowiskami weryfikują testy kompatybilności.

Pytanie 16

Systemem zarządzania wersjami w projekcie programistycznym, który działa w trybie rozproszonym, jest

A. FileZilla
B. GIT
C. TotalCommander
D. Eclipse
GIT jest rozproszonym systemem kontroli wersji, który pozwala na efektywne zarządzanie kodem źródłowym projektu programistycznego. Jego architektura umożliwia każdemu programiście posiadanie lokalnej kopii repozytorium, co przyspiesza operacje takie jak commit, diff czy log, ponieważ nie wymaga dostępu do zdalnego serwera. GIT wspiera równoległą pracę wielu deweloperów, umożliwiając tworzenie gałęzi (branch) do rozwijania funkcji czy naprawy błędów bez wpływania na główną wersję kodu. Przykładami praktycznego zastosowania są: rozwijanie nowych funkcjonalności w oddzielnych gałęziach, zarządzanie kodem w projektach open source, czy współpraca w zespołach rozproszonych geograficznie, gdzie deweloperzy mogą synchronizować swoje zmiany poprzez operacje push i pull. Warto także zaznaczyć, że GIT jest szeroko stosowany w standardach branżowych, takich jak Continuous Integration/Continuous Deployment (CI/CD), co podkreśla jego znaczenie w nowoczesnym procesie wytwarzania oprogramowania.

Pytanie 17

W trakcie weryfikacji stron internetowych nie analizuje się

A. źródeł pochodzenia narzędzi edytorskich
B. błędów składniowych w kodzie
C. funkcjonowania linków
D. zgodności z różnymi przeglądarkami
W procesie walidacji stron internetowych kluczowym celem jest upewnienie się, że kod HTML, CSS i inne zasoby są zgodne z obowiązującymi standardami W3C (World Wide Web Consortium). Walidacja skutecznie identyfikuje błędy składniowe, które mogą wpływać na renderowanie strony, analizuje działanie linków, a także sprawdza, jak strona zachowuje się w różnych przeglądarkach. Jednak aspekty związane z pochodzeniem narzędzi edytorskich nie są istotnym elementem tego procesu. Narzędzia edytorskie, takie jak edytory tekstowe czy IDE, są jedynie środkiem do tworzenia kodu, a ich źródło nie powinno wpływać na to, czy strona jest poprawnie zaimplementowana. Na przykład, strona może być poprawnie zwalidowana niezależnie od tego, czy została zbudowana w popularnym edytorze, takim jak Visual Studio Code, czy innym mniej znanym narzędziu. Dlatego koncentrowanie się na źródłach narzędzi edytorskich w kontekście walidacji byłoby nieuzasadnione i nieprzydatne.

Pytanie 18

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. sumy.
C. grupowania.
D. wykluczenia.
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 19

W przedstawionym kodzie HTML, zaprezentowany styl CSS jest stylem:

<p style="color:red;">To jest przykładowy akapit.</p>
A. lokalnym
B. dynamicznym
C. zewnętrznym
D. nagłówkowym
Styl CSS określony wewnątrz elementu HTML poprzez atrybut style jest przykładem stylu lokalnego. Styl lokalny pozwala na bezpośrednie przypisanie konkretnych własności CSS do pojedynczego elementu co umożliwia szybkie i łatwe testowanie oraz modyfikacje wyglądu bez potrzeby edytowania zewnętrznych plików CSS. Praktyczne zastosowanie stylów lokalnych odnajdujemy w sytuacjach gdy chcemy wprowadzić zmiany dla pojedynczego elementu na stronie nie wpływając na inne elementy. Na przykład jeśli w jednym miejscu chcemy podkreślić wagę tekstu stosując kolor czerwony możemy użyć stylu lokalnego jak pokazano w pytaniu. Jednak styl lokalny nie jest zalecany dla większych projektów czy skomplikowanych stron ze względu na fakt że utrudnia zarządzanie i utrzymywanie spójnego stylu w całym projekcie. W takich przypadkach lepiej korzystać ze stylów zewnętrznych lub nagłówkowych które oferują lepszą organizację i elastyczność. Warto również pamiętać że implementacja stylu lokalnego może nadpisywać inne style co jest istotne przy rozwiązywaniu problemów związanych z dziedziczeniem stylów CSS.

Pytanie 20

Wskaż pole edycyjne sformatowane przedstawionym stylem CSS

input {
  border: none;
  border-bottom: 2px solid Blue;
  color: Gray;
  font-weight: 900;
}

Input 1. Podaj imię:

Input 2. Podaj imię:

Input 3. Podaj imię:

Input 4. Podaj imię: Agnieszka

A. Input 2.
B. Input 1.
C. Input 3.
D. Input 4.
Dobrze wybrałeś! Odpowiedź 'Input 2.' jest rzeczywiście poprawna. To, co oferuje ten element, to wszystko, co potrzebne do spełnienia wymagań stylu CSS, czyli ma niebieskie dolne obramowanie o grubości 2px, szary tekst oraz pogrubioną czcionkę. Wygląd elementów formularza jest mega ważny, bo to właśnie od niego zależy, jak użytkownicy będą się poruszać po stronie. Dzięki CSS możemy to wszystko kontrolować, co daje nam spójność i ładny wygląd. Różne właściwości CSS, takie jak 'border-bottom', 'color' czy 'font-weight', pozwalają na dokładne dostosowanie stylu każdego elementu strony. W sumie, jak już się bardziej wkręcisz w CSS, zauważysz, że można dodać też różne efekty, jak hover, focus czy active, co dodatkowo wzbogaca interakcję. Rozumienie, jak te różne właściwości działają, jest kluczowe, żeby tworzyć fajne i funkcjonalne interfejsy.

Pytanie 21

Jakim słowem kluczowym można zainicjować zmienną w JavaScript?

A. var
B. variable
C. instanceof
D. new
W języku JavaScript, deklaracja zmiennej przy użyciu słowa kluczowego 'var' jest jednym z podstawowych i fundamentalnych aspektów programowania. Słowo kluczowe 'var' umożliwia tworzenie zmiennych, które mogą przechowywać wartości zarówno typu prymitywnego, jak i obiektowego. Wartością dodaną użycia 'var' jest to, że zmienne zadeklarowane w ten sposób mają zasięg funkcji, co oznacza, że są dostępne w obrębie funkcji, w której zostały zadeklarowane, jak również w zasięgu globalnym, jeśli zostały zdefiniowane poza funkcją. Przykład użycia 'var': var liczba = 10; zmienna 'liczba' jest teraz dostępna w obrębie całej funkcji. Warto również zauważyć, że w nowszych standardach JavaScript, takich jak ECMAScript 6, wprowadzono dodatkowe słowa kluczowe takie jak 'let' i 'const', które oferują bardziej precyzyjny zasięg blokowy i zwiększają bezpieczeństwo kodu. 'Var' pozostaje jednak ważnym elementem do zrozumienia dla każdego programisty JavaScript, ponieważ jest fundamentem, na którym opiera się wiele starszych i nadal używanych skryptów.

Pytanie 22

W relacyjnych systemach baz danych, gdy dwie tabele są powiązane przez ich klucze główne, mamy do czynienia z relacją

A. n..n
B. 1..n
C. 1..1
D. n..1
W relacyjnych bazach danych, relacja 1..1 oznacza, że każdemu rekordowi w pierwszej tabeli odpowiada dokładnie jeden rekord w drugiej tabeli, a odwrotnie. Gdy tabele są połączone kluczem głównym, zapewnia to unikalność powiązań między nimi. Przykładami takich relacji mogą być tabele 'Pracownicy' i 'Konta', gdzie każdy pracownik ma jedno konto, a każde konto należy do jednego pracownika. Relacja 1..1 jest typowa w sytuacjach, gdy jedna tabela zawiera szczegółowe informacje o obiektach reprezentowanych w drugiej tabeli. Z perspektywy projektowania baz danych, stosowanie relacji 1..1 pomaga w minimalizowaniu redundancji danych oraz zwiększa spójność informacji. Praktyczne podejście do projektowania bazy danych sugeruje, aby relacje 1..1 były wykorzystywane tam, gdzie konieczne jest zapewnienie jednoznacznego powiązania danych, co wspiera integralność danych zgodnie z normami ACID (Atomicity, Consistency, Isolation, Durability).

Pytanie 23

Jaki rezultat uzyskamy po uruchomieniu załączonego skryptu?

<?php
class Owoc {
  function __construct() {     echo "test1";     }
  function __destruct() {     echo "test2";     }
}
$gruszka = new Owoc();
?>
A. Pojawi się jedynie komunikat "test2"
B. Na ekranie pojawią się oba komunikaty: "test1" oraz "test2"
C. Nie zostanie wyświetlony żaden komunikat
D. Pojawi się tylko komunikat "test1"
W analizie skryptu PHP ważne jest zrozumienie roli metod specjalnych jak __construct() i __destruct(). __construct() uruchamia się podczas tworzenia obiektu, a __destruct() w momencie niszczenia obiektu. Odpowiedź wskazująca, że żaden napis się nie wyświetli, ignoruje fakt, że zarówno konstruktor jak i destruktor wywołują funkcję echo. Przy odpowiedzi, że wyświetli się tylko napis test1, pominięto działanie metody __destruct(), która następuje po zakończeniu skryptu. Natomiast stwierdzenie, że wyświetli się tylko napis test2 ignoruje działanie konstruktora, który zostaje niezwłocznie aktywowany po stworzeniu obiektu $gruszka. Częstym błędem jest nieujmowanie pełnego cyklu życia obiektu, co prowadzi do nieprawidłowego zrozumienia działania destruktorów, zwłaszcza że uruchamiane są one automatycznie, wpływając na zarządzanie zasobami i pamięcią. Zrozumienie tych mechanizmów jest kluczowe w efektywnym zarządzaniu kodem w PHP, szczególnie w zaawansowanych projektach obiektowych.

Pytanie 24

Na podstawie tabeli Towar wykonano następujące zapytanie SQL. Jaki będzie wynik tej operacji?

 SELECT nazwa_towaru FROM `Towar` WHERE cena_katalogowa < 65 ORDER BY waga DESC;
IDnazwa_towarucena_katalogowawagakolor
1Papier ksero A4112.3biel
2Zeszyt A54.20.13wielokolorowy
3Zeszyt A5 w linie3.50.12niebieski
4Kredki 24 kolory90.3wielokolorowy
5Plecak szkolny65.51.3zielony
A. Zeszyt A5 w linie, Zeszyt A5, Kredki 24 kolory, Papier ksero A4
B. Papier ksero A4, Kredki 24 kolory, Zeszyt A5, Zeszyt A5 w linie
C. Papier ksero A4, Kredki 24 kolory, Zeszyt A5 w linie, Zeszyt A5
D. Zeszyt A5, Zeszyt A5 w linie, Kredki 24 kolory, Papier ksero A4
Twoja odpowiedź jest poprawna. Wykonane zapytanie SQL zwracałoby nazwy towarów, które spełniają warunek ceny katalogowej mniejszej niż 65. Listę tych towarów następnie sortuje od najcięższego do najlżejszego. W przypadku podanej tabeli towary, które spełniają te warunki to: Papier ksero A4 (waga 2.3), Kredki 24 kolory (waga 0.3), Zeszyt A5 (waga 0.13) i Zeszyt A5 w linie (waga 0.12). To jest kluczowy aspekt zrozumienia zapytań SQL, które obejmują selekcję i sortowanie danych. W praktyce, umiejętność filtrowania i organizowania danych jest niezbędna do analizy danych i tworzenia raportów w systemach baz danych. Zrozumienie jak zapytania SQL działa na poziomie podstawowym, umożliwi Ci przewidywanie wyników zapytań, co jest kluczowe dla dobrze zaprojektowanych systemów baz danych.

Pytanie 25

Prezentowany blok kodu ilustruje proces

Ilustracja do pytania
A. użycia zdefiniowanej procedury lub funkcji
B. realizacji zadania w pętli
C. załadowania lub wyświetlenia informacji
D. podjęcia decyzji
Symbol przedstawiony na obrazku to romb który w diagramach przepływu algorytmów i schematach blokowych oznacza podjęcie decyzji Jest to kluczowy element w programowaniu i inżynierii oprogramowania używany do podejmowania decyzji lub wyrażania warunków logicznych Decyzja to punkt w programie gdzie przetwarzanie może podążać różnymi ścieżkami w zależności od spełnienia określonych warunków Na przykład w językach programowania takich jak Python lub Java warunek if-else jest używany do podjęcia decyzji w zależności od wartości logicznych Wyobraźmy sobie sytuację w której program ma zdecydować czy użytkownik jest pełnoletni W takim przypadku instrukcja if sprawdza warunek wiek użytkownika większy lub równy 18 i w zależności od tego wykonuje odpowiednie instrukcje Takie podejście jest zgodne z dobrymi praktykami programowania które kładą nacisk na klarowność kodu i jego elastyczność Dzięki temu programiści mogą tworzyć bardziej złożone systemy które reagują na różne scenariusze i dostosowują swoje działanie do dynamicznie zmieniających się warunków co jest kluczowe w projektowaniu skalowalnych i efektywnych rozwiązań

Pytanie 26

Którego związku selektorów CSS należy użyć w miejscu znaków zapytania, aby zdefiniowany styl został zastosowany tylko do tekstu „paragrafie”?

<!DOCTYPE html>
<html>
  <head>
    <style>
      ???{letter-spacing: 10px; color: red;}
    </style>
  </head>
  <body>
    <p>Styl <b>tekstu</b> w pierwszym <i>paragrafie</i></p>
  </body>
</html>
A. b i
B. p > i
C. p + i
D. b > i
W tym zadaniu kluczowe jest zrozumienie, jak działają różne związki (kombinatory) selektorów w CSS i jak przekładają się one na strukturę drzewa DOM. Cały problem sprowadza się do relacji między znacznikami <p>, <b> i <i>. W kodzie <i> jest bezpośrednim dzieckiem paragrafu, natomiast <b> jest zupełnie osobnym elementem, który nie zawiera w sobie <i>. Jeżeli wybierzemy selektor oparty wyłącznie na listingu nazw znaczników obok siebie, typu „b i”, to w CSS oznacza on: „dowolny element <i> znajdujący się gdziekolwiek wewnątrz elementu <b>”. W naszym HTML nie ma takiej relacji, bo <i> nie jest potomkiem <b>, więc taki selektor zwyczajnie nie trafi w żaden element. To jest dość typowe myślenie: ktoś patrzy na kolejność znaczników w jednej linii i myli ją z hierarchią zagnieżdżenia.
Podobny problem występuje przy użyciu selektora „b > i”. Kombinator „>” oznacza dziecko bezpośrednie, więc „b > i” wybiera tylko te elementy <i>, które są jednym poziomem niżej w środku <b>. Ponownie, w naszym drzewie DOM <i> nie jest dzieckiem <b>, więc reguła w ogóle się nie zastosuje. Z mojego doświadczenia to częsty błąd: patrzymy na tekst „tekstu w pierwszym paragrafie” i intuicyjnie kojarzymy słowa, zamiast spojrzeć, jak naprawdę są zagnieżdżone tagi.
Jeszcze inna sytuacja dotyczy selektora „p + i”. Znak „+” to tzw. selektor sąsiadującego rodzeństwa (adjacent sibling). Oznacza: „wybierz element <i>, który stoi w DOM bezpośrednio po elemencie <p>, na tym samym poziomie zagnieżdżenia”. W naszym przykładzie <i> nie jest rodzeństwem <p>, tylko jego wnętrzem, więc ten kombinator kompletnie tu nie pasuje. To też jest dość mylące, bo część osób kojarzy „+” z jakimś rodzajem powiązania, ale nie pamięta, że chodzi o dwa znaczniki obok siebie, a nie jeden w środku drugiego.
Podsumowując, wszystkie błędne odpowiedzi ignorują faktyczną strukturę HTML i relacje rodzic–dziecko między elementami. Dobra praktyka jest taka, żeby przed wyborem selektora wyobrazić sobie drzewo DOM albo wręcz rozpisać je w formie wcięć. Dopiero potem dobiera się odpowiedni kombinator: spacja dla dowolnego potomka, „>” dla dziecka, „+” dla sąsiada, „~” dla dalszego rodzeństwa. Świadome korzystanie z tych narzędzi pozwala tworzyć precyzyjne, czytelne i łatwe w utrzymaniu arkusze CSS, zgodne z rekomendacjami W3C i dobrymi praktykami front-endowymi.

Pytanie 27

W bazie Access tworzona kontrolka ma odwoływać się do kontrolki z INNEGO formularza. Czy jest to możliwe?

A. niemożliwe poza trybem projektowania
B. możliwe tylko dla danych liczbowych
C. możliwe przez podanie ścieżki w właściwości „Źródło kontrolki”
D. niemożliwe
W MS Access kontrolka może odwołać się do kontrolki z INNEGO formularza - wystarczy w jej właściwości „Źródło kontrolki” podać odpowiednią ścieżkę (np. odwołanie do formularza i jego pola). Dlatego jest to możliwe przez podanie ścieżki w „Źródle kontrolki”.

Pytanie 28

Aby zaktualizować maksymalną długość kolumny imie w tabeli klienci do 30 znaków, należy zastosować w języku SQL poniższy kod

A. ALTER TABLE klienci CHANGE imie TEXT;
B. ALTER TABLE klienci MODIFY COLUMN imie VARCHAR(30);
C. CHANGE TABLE klienci TO COLUMN imie SET CHAR(30);
D. CHANGE TABLE klienci MODIFY imie CHAR(30);
Aby zmienić maksymalną długość pola 'imie' w tabeli 'klienci' na 30 znaków, używamy polecenia SQL 'ALTER TABLE', które jest standardowym sposobem modyfikacji struktury tabeli w bazach danych. W tym przypadku wykorzystujemy 'MODIFY COLUMN', co jest istotne, ponieważ pozwala na precyzyjne określenie, że chcemy zmienić właściwości konkretnej kolumny. Typ danych 'VARCHAR' oznacza, że kolumna może przechowywać zmienne długości tekstu, a wartość 30 oznacza maksymalną liczbę znaków. Przykładowo, jeśli w bazie danych już istnieją rekordy, to zmiana ta nie wpłynie na dane, które są krótsze niż 30 znaków, ale może być problematyczna, jeśli próbujemy wprowadzić dane dłuższe niż dozwolone, ponieważ takie operacje mogą kończyć się błędami. Warto również zaznaczyć, że różne systemy zarządzania bazami danych, takie jak MySQL, PostgreSQL czy Oracle, mogą mieć drobne różnice w składni, ale zasada działania polecenia 'ALTER TABLE' pozostaje zasadniczo taka sama. To podejście jest zgodne z zaleceniami standardu SQL i jest powszechnie stosowane w praktykach administracji bazami danych.

Pytanie 29

Tabela przedmioty ma pola ocena i uczenID. Która kwerenda policzy ŚREDNIĄ ocen ucznia o ID 7?

A.
AVG SELECT ocena FROM przedmioty WHERE uczenID = 7;
B.
SELECT COUNT(ocena) FROM przedmioty WHERE uczenID = 7;
C.
SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7;
D.
COUNT SELECT ocena FROM przedmioty WHERE uczenID = 7;
Średnią wartości z kolumny liczy funkcja agregująca AVG. Zapis SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7; najpierw warunkiem WHERE wybiera oceny ucznia o ID 7, a potem AVG(ocena) je uśrednia. Dlatego ta kwerenda jest poprawna.

Pytanie 30

Ile razy należy wprowadzić instrukcję warunkową, aby zrealizować przedstawiony algorytm w danym języku programowania?

Ilustracja do pytania
A. Cztery razy.
B. Dwa razy.
C. Raz.
D. Trzy razy.
Zrozumienie liczby potrzebnych instrukcji warunkowych w algorytmie jest kluczowe dla poprawnej implementacji logiki programu. Często spotykanym błędem jest myślenie, że każda decyzja w algorytmie wymaga oddzielnej instrukcji warunkowej, co prowadzi do niepotrzebnej komplikacji kodu. W rzeczywistości, niektóre warunki mogą być połączone lub zapisane w bardziej zwięzły sposób, co pokazuje znaczenie analizy logiki algorytmu przed implementacją. Założenie, że jedna instrukcja warunkowa wystarczy dla całego algorytmu, często wynika z niepełnego zrozumienia jego struktury i złożoności. Algorytmy często wymagają kilku punktów decyzyjnych, które muszą być odpowiednio odwzorowane w kodzie. Natomiast przypuszczenie, że potrzebne są cztery instrukcje, sugeruje nadmierną komplikację i nadmiarowość, co jest sprzeczne z zasadami optymalizacji i minimalizacji kodu. Dobre praktyki programistyczne zalecają pisanie kodu, który jest zarówno wydajny, jak i czytelny, unikając nadmiarowych instrukcji, które mogą prowadzić do błędów i trudności w późniejszym utrzymaniu. Ostatecznie, właściwe zastosowanie instrukcji warunkowych wpływa na elastyczność i skalowalność aplikacji, co jest kluczowe w profesjonalnym środowisku programistycznym.

Pytanie 31

Co oznacza polecenie:

UPDATE artykuly SET cena = cena * 0.7 WHERE kod = 2;
?
A. obniża wartość pola cena dla rekordów, gdzie kod = 2
B. dodaje pole cena z atrybutem kod
C. dodaje do tabeli nowe pola cena i kod
D. obniża cenę o 30% dla WSZYSTKICH artykułów
Polecenie UPDATE artykuly SET cena = cena * 0.7 WHERE kod = 2; mnoży dotychczasową cenę przez 0,7 (czyli obniża ją o 30%), ale TYLKO dla rekordów, gdzie kod = 2 - warunek WHERE ogranicza zmianę do wybranych wierszy. Dlatego obniża cenę dla rekordów z kod = 2.

Pytanie 32

Jakie tabele będą weryfikowane przez podane polecenie?

CHECK TABLE pracownicy CHANGED;
A. Jedynie tabele referencyjne.
B. Tylko tabele, które nie zostały prawidłowo zamknięte.
C. Tabele, które zmieniły się w bieżącej sesji.
D. Tabele, które uległy zmianie od ostatniego sprawdzenia lub nie zostały prawidłowo zamknięte.
Odpowiedź, że polecenie CHECK TABLE sprawdzi tabele, które zmieniły się od ostatniej kontroli lub nie zostały poprawnie zamknięte, jest poprawna. Polecenie to jest wykorzystywane w systemach zarządzania bazami danych, takich jak MySQL, do diagnozowania i naprawy problemów związanych z integralnością danych. Kiedy tabele są zmieniane lub nie zostały poprawnie zamknięte, mogą wystąpić uszkodzenia, które mogą prowadzić do błędów przy odczycie lub zapisie danych. W praktyce, administratorzy baz danych regularnie wykonują polecenie CHECK TABLE, aby upewnić się, że struktura tabeli jest nienaruszona i że system operacyjny poprawnie zarządza danymi. Użycie CHECK TABLE w kontekście tabel, które zmieniły się od ostatniej kontroli, jest kluczowe, gdyż pozwala na szybką lokalizację problemów. Warto również zauważyć, że w przypadku dużych baz danych wykonanie tego polecenia może być czasochłonne, dlatego dobrze jest zintegrować jego użycie z harmonogramem regularnych kontroli integralności danych, co jest zgodne z najlepszymi praktykami w zarządzaniu bazami danych.

Pytanie 33

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 COUNT(*) FROM personel WHERE staz >= 10 AND staz <= 20
B. SELECT COUNT(pensja) FROM personel WHERE staz >= 10 AND staz <= 20
C. SELECT AVG(pensja) FROM personel WHERE staz >= 10 AND staz <= 20
D. SELECT AVG(*) FROM personel WHERE staz >= 10 AND staz <= 20
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 34

Aby pobrać dane z formularza HTML tak, aby nie były widoczne w adresie URL, należy zastosować:

A. metodę GET
B. same kontrolki, bez formularza
C. wyłącznie funkcje z biblioteki PDO
D. metodę POST
Formularz HTML może wysyłać dane jedną z dwóch metod: GET albo POST. Metoda POST umieszcza dane w treści (body) żądania HTTP, dlatego nie trafiają one do adresu URL i nie są widoczne w pasku przeglądarki ani zapisywane w historii. Z tego powodu używa się jej do logowania, formularzy z danymi osobowymi czy dłuższych treści. Aby dane formularza nie pojawiły się w URL, wybiera się więc metodę POST (atrybut method="post").

Pytanie 35

Została stworzona baza danych z tabelą podzespoły, która zawiera pola: model, producent, typ, cena. Aby uzyskać listę wszystkich modeli pamięci RAM od firmy Kingston uporządkowanych od najniższej do najwyższej ceny, należałoby użyć kwerendy:

A. SELECT model FROM podzespoły WHERE typ='RAM' AND producent='Kingston' ORDER BY cena ASC
B. SELECT model FROM producent WHERE typ='RAM' OR producent='Kingston' ORDER BY podzespoły ASC
C. SELECT model FROM podzespoły WHERE typ='RAM' AND producent='Kingston' ORDER BY cena DESC
D. SELECT model FROM podzespoły WHERE typ='RAM' OR producent='Kingston' ORDER BY cena DESC
Wybrana kwerenda jest poprawna, ponieważ dokładnie spełnia wymagania zadania. Użycie klauzuli SELECT do wyboru pola 'model' z tabeli 'podzespoły' pozwala na uzyskanie właściwych informacji. Warunek WHERE ogranicza wyniki do tych, które dotyczą pamięci RAM (typ='RAM') oraz producenta Kingston (producent='Kingston'). Kluczowym elementem tej kwerendy jest zastosowanie ORDER BY cena ASC, które sortuje wyniki według ceny w porządku rosnącym, co jest zgodne z wymaganiem wyświetlenia modeli od najtańszej do najdroższej. Przykłady zastosowania takiej kwerendy mogą obejmować systemy zarządzania zapasami, gdzie klienci poszukują najlepszych ofert, czy aplikacje e-commerce, które chcą dostarczyć użytkownikom najbardziej korzystne opcje zakupowe. Stosowanie jasnych i precyzyjnych kwerend SQL, według dobrych praktyk branżowych, jest kluczowe dla wydajności i przejrzystości danych.

Pytanie 36

Który z poniższych kodów XHTML sformatuje tekst zgodnie z podanym przykładem?

Ala ma kota
a kot ma Alę

A. <p>Ala ma <b>kota</b> <br/> a <b>kot</b> ma Alę</p>
B. <p>Ala ma <b>kota <br /> a <i>kot</i> ma Alę</p>
C. <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p>
D. <p>Ala ma <b>kota</i><br/> a <b>kot</b> ma Alę</p>
Odpowiedź <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p> jest poprawna, ponieważ zgodnie z zasadami XHTML, użycie znaczników <b> i <i> do formatowania tekstu jest odpowiednie; <b> stosowany jest do wyróżniania tekstu pogrubionego, a <i> do kursywy. W tej odpowiedzi zastosowano również poprawny znacznik <br/>, który jest samodzielnym znacznikiem i nie wymaga zamknięcia w parze. Zgodnie z dobrymi praktykami, kod XHTML powinien być poprawnie sformatowany, a każdy otwierający znacznik powinien mieć odpowiadający mu zamykający znacznik, chyba że jest to znacznik samodzielny, jak <br/>. Warto zaznaczyć, że XHTML wymaga również, aby wszystkie atrybuty były zapisane w formacie małych liter, co zostało spełnione w tej odpowiedzi. Przykład zastosowania tej wiedzy można znaleźć w tworzeniu stron internetowych, gdzie poprawne sformatowanie kodu HTML lub XHTML jest kluczowe dla prawidłowego wyświetlania treści w przeglądarkach.

Pytanie 37

Jakie są przykłady standardowych poleceń w języku zapytań SQL, odnoszących się do operacji na danych SQL DML, takich jak wstawianie, usuwanie oraz modyfikacja danych?

A. DENY, GRANT, REVOKE
B. SELECT, SELECT INTO
C. DELETE, INSERT, UPDATE
D. ALTER, CREATE, DROP
Poprawna odpowiedź to DELETE, INSERT, UPDATE, które są podstawowymi poleceniami w języku SQL dla operacji manipulacji danymi (DML, Data Manipulation Language). Polecenie INSERT służy do dodawania nowych rekordów do tabeli, na przykład: 'INSERT INTO pracownicy (imie, nazwisko) VALUES ('Jan', 'Kowalski');'. DELETE umożliwia usunięcie istniejących danych, co można zrealizować poprzez 'DELETE FROM pracownicy WHERE nazwisko = 'Kowalski';', co kasuje rekordy spełniające określony warunek. Natomiast UPDATE pozwala na modyfikację danych w tabeli, na przykład: 'UPDATE pracownicy SET imie = 'Anna' WHERE nazwisko = 'Kowalski';'. Te instrukcje są zgodne z międzynarodowymi standardami SQL i są kluczowe w codziennym zarządzaniu bazami danych, umożliwiając efektywne manipulowanie danymi w różnych systemach zarządzania bazami danych, takich jak MySQL, PostgreSQL czy Microsoft SQL Server.

Pytanie 38

Którego selektora użyć, aby sformatować WSZYSTKIE obrazy znajdujące się w akapicie?

A.
p img
B.
p + img
C.
p # img
D.
p.img
Aby ostylować wszystkie obrazy zawarte w akapicie, używa się selektora potomka - dwóch nazw oddzielonych SPACJĄ: p img. Spacja oznacza „dowolny <img> gdziekolwiek wewnątrz <p>”. Dlatego poprawny jest p img.

Pytanie 39

Jaką wartość wyświetli się po uruchomieniu poniższego kodu JavaScript?

javascript
document.write(Math.round(4.51) + Math.pow(2, 3));
A. 13
B. 11
C. 14
D. 12
Zobaczmy, jak doszliśmy do poprawnej odpowiedzi 13. W kodzie JavaScript mamy fragment: <script type='text/javascript'> document.write(Math.round(4.51) + Math.pow(2, 3)); </script>. Co tu się dzieje? Dwie główne operacje to zaokrąglanie i potęgowanie. Funkcja Math.round(4.51) zaokrągla do najbliższej liczby i zwraca 5. Potem mamy Math.pow(2, 3), które daje wynik 8, bo 2 do potęgi 3 to 2 * 2 * 2. Jak to zsumujemy, to mamy 5 + 8, co daje 13. Warto wiedzieć, że Math.round i Math.pow są częścią obiektu Math w JavaScript, który ma różne przydatne funkcje. Na przykład, Math.sqrt() oblicza pierwiastek kwadratowy, a Math.random() daje losowe liczby. To są naprawdę przydatne rzeczy w aplikacjach webowych, gdzie często potrzebujemy obliczeń z danymi liczbowymi. Standard ECMA-262 opisuje, jak te funkcje mają działać, więc możemy być pewni, że będą działać tak samo w różnych środowiskach JavaScript.

Pytanie 40

Zaprezentowano tabelę stworzoną za pomocą kodu HTML, bez zastosowania stylów CSS. Który z poniższych fragmentów kodu HTML odnosi się do pierwszego wiersza tabeli?

Ilustracja do pytania
A. B
B. D
C. C
D. A
Poprawna odpowiedź to D. W tym kodzie HTML użyto znaczników <th> zamiast <td> do zdefiniowania pierwszego wiersza tabeli co jest zgodne z dobrą praktyką formatowania wierszy nagłówkowych tabel. Znaczniki <th> oznaczają header cells czyli komórki nagłówkowe które z definicji są ustawione jako pogrubione i wyśrodkowane w przeglądarce. Użycie <th> zamiast <td> dla nagłówków tabeli wspiera dostępność ponieważ oprogramowanie wspomagające takie jak czytniki ekranowe rozpoznaje te znaczniki jako nagłówki co ułatwia nawigację osobom z ograniczeniami wzrokowymi. Ponadto standard HTML zaleca użycie <th> dla komórek opisujących dane które znajdują się poniżej w wierszach tabeli co pomaga w semantycznym oznaczeniu struktury dokumentu. Zastosowanie poprawnej semantyki w kodzie HTML nie tylko zwiększa dostępność ale również poprawia SEO oraz ułatwia utrzymanie kodu w przyszłości. Przy projektowaniu tabel w HTML ważne jest również rozważenie stylizacji za pomocą CSS aby zachować czystość i czytelność kodu HTML.