Wyniki egzaminu

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

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

Istnieje tabela o nazwie wycieczki z kolumnami: nazwa, cena oraz miejsca (reprezentujące liczbę dostępnych miejsc). Aby wyświetlić tylko nazwy wycieczek, których cena jest mniejsza od 2000 zł oraz mają co najmniej cztery wolne miejsca, należy użyć zapytania

A. SELECT nazwa FROM wycieczki WHERE cena < 2000 AND miejsca > 3
B. SELECT * FROM wycieczki WHERE cena < 2000 AND miejsca > 4
C. SELECT * FROM wycieczki WHERE cena < 2000 OR miejsca > 3
D. SELECT nazwa FROM wycieczki WHERE cena < 2000 OR miejsca > 4
Twoja odpowiedź jest jak najbardziej na miejscu, bo trafnie wskazuje, jakie warunki trzeba spełnić, żeby uzyskać odpowiednie nazwy wycieczek. W tym zapytaniu SQL 'SELECT nazwa FROM wycieczki WHERE cena < 2000 AND miejsca > 3' użyto operatora AND, co oznacza, że oba warunki muszą być spełnione naraz. Pierwszy mówi, że cena wycieczki musi być mniejsza niż 2000 zł, co pomaga znaleźć tańsze oferty. Drugi warunek wymaga, żeby było przynajmniej cztery wolne miejsca, co jest ważne, gdy ktoś myśli o podróżach z rodziną lub przyjaciółmi. Takie podejście jest zgodne z tym, co powinniśmy stosować, pisząc zapytania SQL, bo powinny być one precyzyjne i skuteczne. Warto też pamiętać o dobrym używaniu operatorów logicznych, żeby uzyskać oczekiwane rezultaty. Dlatego zrozumienie, jak te operatory działają oraz jak je zastosować w kontekście danych, jest kluczowe w pracy z bazami danych.

Pytanie 2

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

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

Pytanie 3

Jak określa się część strukturalnego języka zapytań, która dotyczy tworzenia zapytań do bazy danych za pomocą polecenia SELECT?

A. SQL DQL (ang. Data Query Language)
B. SQL DML (ang. Data Manipulation Language)
C. SQL DDL (ang. Data Definition Language)
D. SQL DCL (ang. Data Control Language)
Wybór SQL DML, SQL DCL lub SQL DDL jako odpowiedzi na to pytanie wskazuje na nieporozumienie dotyczące funkcji poszczególnych podzbiorów SQL. SQL DML (Data Manipulation Language) odnosi się do poleceń, które modyfikują dane w bazie, takich jak INSERT, UPDATE i DELETE. Myląc te pojęcia, można sądzić, że polecenia te są odpowiednie do pobierania danych, co jest błędne. Z kolei SQL DCL (Data Control Language) służy do zarządzania uprawnieniami użytkowników i kontroli dostępu do danych, co również nie ma związku z formułowaniem zapytań do bazy danych. Na przykład, polecenia GRANT i REVOKE są kluczowe w kontekście DCL, ale nie mają nic wspólnego z wyciąganiem danych. SQL DDL (Data Definition Language) dotyczy definicji struktury bazy danych, czyli tworzenia, modyfikowania i usuwania tabel oraz innych obiektów bazy danych (np. CREATE, ALTER, DROP). Wybór któregokolwiek z tych podzbiorów zamiast DQL wskazuje na brak zrozumienia hierarchii i celów SQL jako całości. Zrozumienie różnic między tymi podzbiorami jest kluczowe dla skutecznego zarządzania danymi i efektywnej pracy z bazami danych. Dobrą praktyką jest zapoznanie się z pełnym zakresem możliwości SQL, aby lepiej wykorzystać jego potencjał w codziennej pracy z danymi.

Pytanie 4

W języku JavaScript funkcja matematyczna Math.pow() jest wykorzystywana do obliczania

A. bezwzględnej wartości liczby
B. przybliżonej wartości liczby
C. potęgi liczby
D. pierwiastka kwadratowego z liczby
Funkcja Math.pow() w języku JavaScript służy do obliczania potęgi liczby, co oznacza, że zwraca wynik mnożenia danej liczby przez siebie określoną liczbę razy. Jej składnia to Math.pow(base, exponent), gdzie 'base' to liczba, którą chcemy podnieść do potęgi, a 'exponent' to wykładnik potęgi. Przykładowo, Math.pow(2, 3) zwróci 8, ponieważ 2^3=2*2*2=8. Użycie tej funkcji jest niezwykle powszechne w programowaniu, zwłaszcza w obliczeniach matematycznych, grafice komputerowej oraz w algorytmach naukowych. Zastosowanie Math.pow() jest zgodne z najlepszymi praktykami, ponieważ pozwala na klarowność i czytelność kodu. Warto dodać, że w ES6 możemy również używać operatora potęgowania **, co jest syntaktycznie prostsze i bardziej intuicyjne, np. 2 ** 3 również da nam 8.

Pytanie 5

Kiedy zestawi się relacją kluczy głównych dwie tabele, uzyskuje się relację o typie

A. wiele do wielu
B. wiele do jednego
C. jeden do jednego
D. jeden do wielu
Relacja typu jeden do jednego występuje, gdy dla każdego rekordu w jednej tabeli istnieje dokładnie jeden odpowiadający rekord w drugiej tabeli. Taki związek jest szczególnie przydatny w sytuacjach, gdy chcemy podzielić dane na różne kategorie, ale zachować ścisłą zależność między rekordami. Na przykład, możemy mieć tabelę z informacjami o użytkownikach, a w drugiej tabeli przechowywać szczegółowe dane dotyczące ich profili, gdzie każdy użytkownik ma tylko jeden profil. Takie połączenie nie tylko organizuje dane, ale również zwiększa wydajność zapytań i umożliwia lepszą kontrolę nad danymi. W praktyce, stosowanie relacji jeden do jednego pozwala na implementację złożonych systemów baz danych, które są zgodne z zasadami normalizacji, co jest kluczowe w projektowaniu baz zgodnych z najlepszymi praktykami, takimi jak minimalizacja redundancji i zapewnienie integralności danych.

Pytanie 6

Wypisanie tekstu w języku JavaScript nie jest możliwe przy użyciu

A. funkcji MessageBox()
B. metody document.write()
C. własności innerHTML
D. metody window.alert()
Poprawnie wskazana została funkcja MessageBox(), bo w standardowym JavaScripcie działającym w przeglądarce taka funkcja po prostu nie istnieje. JavaScript udostępnia kilka mechanizmów do wypisywania tekstu, ale są one ściśle określone przez środowisko (głównie DOM i obiekt window), a nie przez jakieś ogólne, „systemowe” funkcje typu MessageBox.

Właściwość innerHTML należy do elementów DOM i służy do modyfikowania ich zawartości HTML. Przykład:

const div = document.getElementById('wynik');
div.innerHTML = 'Witaj w <b>JavaScript</b>';

To jest typowy, zgodny ze standardami sposób dynamicznej zmiany treści na stronie. W praktyce używa się go bardzo często, choć moim zdaniem lepiej w prostych przypadkach stosować textContent, bo jest bezpieczniejsze (nie interpretuje HTML-a, więc mniejsze ryzyko XSS).

Metoda window.alert() jest wbudowaną funkcją interfejsu przeglądarki. Wyświetla prosty modalny komunikat z przyciskiem OK. Przykład:

alert('Komunikat dla użytkownika');

W wielu poradnikach to pierwszy sposób „wypisania” czegokolwiek, bo od razu widać efekt. W profesjonalnych aplikacjach używa się go rzadko, raczej do szybkiego debugowania, bo blokuje interakcję z użytkownikiem.

Metoda document.write() pozwala wpisać tekst bezpośrednio do strumienia dokumentu HTML podczas jego ładowania:

document.write('Hello world');

Historycznie było to popularne, ale w nowoczesnych projektach uważa się to za złą praktykę. Po załadowaniu strony document.write() może nadpisać cały dokument, co jest mocno niepożądane. Lepszym standardem jest manipulacja DOM (np. innerHTML, createElement, appendChild).

Natomiast MessageBox() kojarzy się z funkcjami z innych środowisk (np. WinAPI, C#, VBA), ale w JavaScripcie w przeglądarce taka funkcja nie jest zdefiniowana w żadnym oficjalnym standardzie. Jeśli ktoś jej użyje bez własnej definicji, skończy się to błędem „MessageBox is not defined”. Dlatego właśnie ta odpowiedź jest poprawna – nie da się w czystym, standardowym JS wypisać tekstu przy użyciu funkcji MessageBox(), chyba że samemu ją wcześniej napiszemy, ale to już zupełnie inna historia.

Pytanie 7

Aby zmienić wartość atrybutu elementu opisanego w CSS przy użyciu skryptu JavaScript, należy zastosować następujący zapis

A. document.getElementById(id).<nazwa-atrybutu> = <nowa wartość>
B. document.getElementById(id).style.<nazwa właściwości> = <nowa wartość>
C. document.getElementById(id).<nazwa właściwości> = <nowa wartość>
D. document.getElementById(id).innerHTML = <nowa wartość>
Odpowiedź "document.getElementById(id).style.<nazwa właściwości> = <nowa wartość>;" jest poprawna, ponieważ umożliwia bezpośrednią modyfikację stylu CSS elementu HTML o określonym identyfikatorze. Przy użyciu metody getElementById() uzyskujemy dostęp do konkretnego elementu w DOM (Document Object Model), a następnie poprzez właściwość style, możemy zmieniać różne atrybuty CSS. Na przykład, aby zmienić kolor tła elementu, możemy napisać: document.getElementById('myElement').style.backgroundColor = 'red';. Wartością, którą przypisujemy, jest odpowiednia właściwość CSS, co czyni ten sposób zgodnym z dobrymi praktykami w programowaniu JavaScript. Dodatkowo, korzystając z tej metody, możemy dynamicznie dostosowywać styl elementów na stronie w odpowiedzi na interakcje użytkownika, co jest kluczowe w nowoczesnych aplikacjach webowych. Warto też zauważyć, że zmiany dokonane w ten sposób są natychmiast widoczne na stronie, co przyczynia się do lepszego doświadczenia użytkownika.

Pytanie 8

Baza danych MySQL została uszkodzona. Które z poniższych działańnie przyczyni się do jej naprawy?

A. Odtworzenie bazy z kopii zapasowej
B. Wykonanie replikacji bazy danych
C. Utworzenie nowej bazy i przeniesienie do niej tabel
D. Próba naprawy za pomocą polecenia REPAIR
Próba naprawy bazy danych za pomocą polecenia REPAIR, odtwarzanie bazy z kopii bezpieczeństwa czy stworzenie nowej bazy z przeniesieniem tabel mogą być mylnie uznawane za skuteczne rozwiązania w przypadku uszkodzenia bazy danych. Polecenie REPAIR TABLE ma zastosowanie tylko w przypadku tabel, które zostały uszkodzone, a nie w przypadku całej bazy danych. W praktyce, jeśli baza danych jest uszkodzona w sposób, który uniemożliwia jej działanie, to polecenie naprawy nie będzie wystarczające. Odzyskiwanie z kopii zapasowej to bardzo efektywna metoda, jednak wymaga wcześniejszego posiadania aktualnej kopii, a czasami dane mogą być utracone. Stworzenie nowej bazy danych i przeniesienie tabel jest procesem czasochłonnym i może nie zapewnić pełnej integralności danych, szczególnie w przypadku złożonych relacji między tabelami. Często mylone są pojęcia naprawy i odzyskiwania danych, co może prowadzić do błędnych decyzji w sytuacjach kryzysowych. Ważne jest, aby w momencie wystąpienia uszkodzenia bazy danych podejść do tematu z pełną wiedzą na temat dostępnych narzędzi i metod, aby uniknąć dalszych problemów związanych z bezpieczeństwem danych.

Pytanie 9

Jak nazywa się paradygmat, w którym program buduje się z OBIEKTÓW łączących dane i operujące na nich metody?

A. obiektowe
B. logiczne
C. funkcyjne
D. strukturalne
Pozostałe paradygmaty organizują kod inaczej. Funkcyjne opiera się na funkcjach bez zmiennego stanu. Logiczne na faktach i regułach wnioskowania. Strukturalne na funkcjach i blokach sterujących, ale BEZ łączenia danych z metodami w obiekty. Łączenie danych i metod w obiekty to programowanie obiektowe.

Pytanie 10

Tekst można pogrubić za pomocą znacznika <b>, a także stosując odpowiednie właściwości CSS.

A. font-weight
B. text-weight
C. font-size
D. text-size
Odpowiedź 'font-weight' jest poprawna, ponieważ jest to właściwość CSS, która kontroluje grubość tekstu w elementach HTML. Używając 'font-weight', możesz określić grubość czcionki w sposób zarówno liczbowy (np. 400 dla normalnej grubości, 700 dla pogrubionej) jak i słowny (np. 'normal', 'bold'). Przykładem zastosowania może być stylizacja nagłówków na stronie internetowej, gdzie chcesz wyróżnić ważne informacje. W praktyce, stylizując nagłówki h1, h2, h3, można użyć 'font-weight: bold;' aby przyciągnąć uwagę czytelników. Zgodnie z najlepszymi praktykami, ważne jest, aby nie przesadzać z używaniem pogrubienia, ponieważ może to prowadzić do problemów z czytelnością tekstu. Warto również pamiętać, że dostępność stron internetowych jest kluczowa, dlatego należy testować różne style na różnych urządzeniach i w różnych przeglądarkach, aby upewnić się, że tekst jest czytelny dla wszystkich użytkowników.

Pytanie 11

Co należy zrobić, aby strona internetowa była dostępna dla osób z niepełnosprawnościami, zgodnie z wytycznymi WCAG?

A. opisywać obrazy tekstem alternatywnym, a kontrolki etykietami
B. stosować tylko jedną barwę i jej odcienie
C. używać tylko akapitów, bez nagłówków h1-h6
D. testować stronę wyłącznie w najpopularniejszej przeglądarce
Dostępność wg WCAG oznacza, że ze strony skorzystają też osoby z niepełnosprawnościami, m.in. używające czytników ekranu. Kluczowe jest opisywanie obrazów tekstem alternatywnym (atrybut alt) oraz wiązanie pól formularza z etykietami (label), aby czytnik mógł je odczytać. Ważne są też nagłówki, kontrast i obsługa klawiaturą. Dlatego poprawna jest odpowiedź o tekście alternatywnym i etykietach kontrolek.

Pytanie 12

Który kod HTML zapewni identyczny efekt formatowania jak na przedstawionym obrazku?

W tym paragrafie zobaczysz sposoby formatowania tekstu w HTML
A. <p>W tym <i>paragrafie <b>zobaczysz</b> sposoby formatowania</i> tekstu w HTML</p>
B. <p>W tym <i>paragrafie </i><b>zobaczysz</b><i> sposoby formatowania</i> tekstu w HTML</p>
C. <p>W tym <b>paragrafie <i>zobaczysz</i> sposoby formatowania</b> tekstu w HTML</p>
D. <p>W tym <i>paragrafie zobaczysz sposoby formatowania</i> tekstu w HTML</p>
Odpowiedź numer 2 jest poprawna, ponieważ używa odpowiednich znaczników HTML do formatowania tekstu. Znacznik <i> stosowany jest do oznaczania tekstu kursywą, a znacznik <b> do pogrubienia. W tym przypadku tekst 'paragrafie' i 'sposoby formatowania' są otoczone znacznikiem <i>, co zgodnie z HTML oznacza kursywę. Natomiast słowo 'zobaczysz' jest otoczone zarówno <b> jak i <i>, co skutkuje pogrubieniem i kursywą jednocześnie. Taka struktura jest zgodna z konwencją hierarchii znaczników, która mówi, że znaczniki mogą być zagnieżdżane, aby uzyskać różne efekty formatowania. HTML pozwala na takie zagnieżdżanie, co jest częścią elastyczności tego języka w prezentowaniu treści. Dobrą praktyką jest także zapewnienie dostępności, gdzie znaczniki semantyczne mają szczególne znaczenie. Wykorzystanie <b> i <i> zamiast odpowiednio <strong> i <em> jest bardziej stylistyczne niż semantyczne, co ma swoje uzasadnienie w kontekście projektowym, ale w nowoczesnych praktykach powinno się również rozważyć znaczenie semantyczne i używać <strong> i <em> dla lepszego zrozumienia przez czytniki ekranowe.

Pytanie 13

Strona internetowa została napisana w języku XHTML. Który z poniższych kodów przedstawia implementację zamieszczonego fragmentu strony, przy założeniu, że nie zdefiniowano żadnych stylów CSS?

Ilustracja do pytania
A. <h1>Początki HTML</h1><p>W 1980 fizyk <b>Tim Berners-Lee</b>, pracownik <i>CERN</i>,<br /> stworzył<b>prototyp hipertekstowego systemu informacyjnego - <i>ENQUIRE</i></b></p>
B. <b>Początki HTML</b><p>W 1980 fizyk <b>Tim Berners-Lee</b>, pracownik <i>CERN</i>,<hr /> stworzył<b>prototyp hipertekstowego systemu informacyjnego - <i>ENQUIRE</i></b></p>
C. <h1>Początki HTML</h1><p>W 1980 fizyk <b>Tim Berners-Lee</b>, pracownik <i>CERN</i>,<br /> stworzył<i>prototyp hipertekstowego systemu informacyjnego - <b>ENQUIRE</b></i></p>
D. <b>Początki HTML</b><p>W 1980 fizyk <b>Tim Berners-Lee</b>, pracownik <i>CERN</i>,<br /> stworzył<b>prototyp hipertekstowego systemu informacyjnego - <i>ENQUIRE</i></b></p>
Odpowiedź druga jest prawidłowa, ponieważ w XHTML stosowanie znaczników zgodnych z HTML jest kluczowe. Nagłówek <h1> wskazuje na najbardziej wyróżniający się element na stronie, co jest zgodne z prezentowanym obrazem, gdzie 'Początki HTML' jest nagłówkiem. XHTML wymaga, by wszystkie elementy były poprawnie zagnieżdżone i zamknięte, a tag <br /> jest poprawnie użyty jako samo zamykający się, co jest wymagane w XHTML. Ponadto, struktura dokumentu XHTML musi być bardziej restrykcyjna, co oznacza, że używanie semantycznych znaczników jak <h1> dla nagłówków sprzyja lepszej interpretacji struktury dokumentu przez przeglądarki i narzędzia dostępności. Poprawne użycie <b> i <i> do wyróżniania tekstu jest zgodne ze standardami, chociaż w nowoczesnym HTML5 zaleca się używanie <strong> i <em> dla semantycznego formatowania. Takie podejście wspomaga dostępność oraz ułatwia zrozumienie kodu przez inne osoby. Dobór tagów w tej odpowiedzi pokazuje zrozumienie zasad semantyki oraz poprawnej struktury dokumentów w XHTML co jest zgodne z dobrymi praktykami web developmentu.

Pytanie 14

Aplikacja o nazwie FileZilla umożliwia

A. sprawdzanie poprawności plików HTML i CSS
B. importowanie bazy danych do systemu CMS Joomla!
C. publikację strony internetowej na zdalnym serwerze
D. przeprowadzanie testów aplikacji
FileZilla to popularny klient FTP (File Transfer Protocol), który umożliwia użytkownikom przesyłanie plików pomiędzy lokalnym komputerem a zdalnym serwerem. Głównym celem korzystania z FileZilla jest publikacja stron internetowych, co polega na załadowaniu plików HTML, CSS, obrazków oraz innych zasobów na serwer, gdzie strona będzie dostępna dla użytkowników w Internecie. Dzięki intuicyjnemu interfejsowi, użytkownicy mogą łatwo przeciągać i upuszczać pliki, co przyspiesza proces publikacji. FileZilla obsługuje różne protokoły, w tym FTP, FTPS oraz SFTP, co zapewnia bezpieczeństwo podczas transferu danych. Dobrą praktyką jest regularne aktualizowanie programu, aby korzystać z najnowszych funkcji i poprawek bezpieczeństwa. W kontekście publikacji stron internetowych, FileZilla stanowi kluczowe narzędzie dla web developerów, umożliwiając im szybkie i efektywne zarządzanie plikami na serwerach zdalnych. Używanie FileZilla wspiera standardy branżowe, takie jak bezpieczeństwo transferu danych oraz zdalne zarządzanie plikami, co jest niezbędne w profesjonalnym rozwoju stron internetowych.

Pytanie 15

Barwy reprezentowane graficznie na stożku (barwa, nasycenie, jasność) uzyskuje się w modelu:

A. RGB
B. HSV
C. CIEXYZ
D. CMYK
Model HSV opisuje kolor trzema parametrami: barwą (Hue), nasyceniem (Saturation) i jasnością (Value). Graficznie przedstawia się go jako stożek (lub walec): kąt to barwa, odległość od osi to nasycenie, a wysokość to jasność. Taki układ jest intuicyjny dla człowieka. Dlatego barwy na stożku reprezentuje model HSV.

Pytanie 16

Jaki format CSS dla akapitu definiuje styl szarej ramki z następującymi cechami?

p {
  padding: 15px;
  border: 2px dotted gray; }
A. linia kropkowa; grubość 2 px; marginesy między tekstem a ramką 15 px
B. linia ciągła; grubość 2 px; marginesy poza ramką 15 px
C. linia ciągła; grubość 2 px; marginesy między tekstem a ramką 15 px
D. linia kreskowa; grubość 2 px; marginesy poza ramką 15 px
Odpowiedź numer jeden jest poprawna, ponieważ prawidłowo opisuje stylizację akapitu przy użyciu CSS zgodnie z przedstawionym kodem. Właściwość 'border' definiuje styl obramowania elementu. W tym przypadku użyto stylu 'dotted', który oznacza linię kropkowaną, o grubości 2 pikseli i kolorze szarym. Jest to użyteczne w sytuacjach, gdy chcemy wizualnie wyróżnić element, ale w sposób subtelny i nienachalny. Dodatkowo, właściwość 'padding' określa margines wewnętrzny, czyli odstęp między zawartością elementu a jego krawędzią. Zapewnienie marginesu wewnętrznego 15 pikseli pozwala tekstowi oddalić się od krawędzi obramowania, co zwiększa czytelność i estetykę. Praktyczne zastosowanie takich stylizacji można znaleźć w projektowaniu stron internetowych, gdzie często używa się różnych stylów obramowań do organizowania treści. Zgodność z dobrymi praktykami web designu zakłada użycie spójnych i intuicyjnych stylów, co poprawia doświadczenia użytkownika oraz ułatwia nawigację po stronie internetowej. Tego typu formatowanie jest zgodne ze standardami CSS, co czyni kod bardziej przewidywalnym i łatwiejszym w utrzymaniu

Pytanie 17

Jaki wynik wyświetli poniższy fragment kodu JavaScript?

x='Powodzenia na egzaminie';
z=x.substring(3,9);
y=z.substring(2,4);
document.write(y);
A. wodzenia
B. ze
C. wo
D. owodzeni
W przedstawionym kodzie JavaScript użyto funkcji substring aby wyodrębnić fragmenty tekstu z ciągu znaków. Początkowa zmienna x zawiera tekst Powodzenia na egzaminie. Pierwsza funkcja x.substring(3,9) zwraca fragment tekstu zaczynający się od indeksu 3 do 8 włącznie co daje fragment wodzen. Wartość ta jest przypisana do zmiennej z. Następnie funkcja z.substring(2,4) wyodrębnia fragment zaczynający się od indeksu 2 do 3 włącznie z tego nowego ciągu wodzen co daje rezultat ze. Wynik ten zostanie wypisany na ekranie przez document.write(y). Praktyczne zastosowanie metody substring polega na manipulacji tekstem co jest powszechne w web development np. do parsowania danych tekstowych lub przygotowania tekstu do wyświetlenia. Dobre praktyki obejmują użycie substring do przetwarzania danych wejściowych np. w formularzach czy przekształcanie danych użytkownika. Ważne jest zrozumienie indeksowania od zera oraz poprawne określenie zakresu aby uniknąć błędów logicznych w kodzie. W kontekście substringu warto pamiętać że drugi parametr jest ekskluzywny co oznacza że nie jest uwzględniany w wyniku. Takie detale są kluczowe dla programistów aby efektywnie zarządzać danymi tekstowymi w różnorodnych zastosowaniach.

Pytanie 18

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

A. <p>
B. <span>
C. <param>
D. <div>
Znak <p> jest przeznaczony wyłącznie do definiowania akapitów tekstowych, co czyni go niewłaściwym narzędziem do ogólnego grupowania obszarów. Nie jest to element blokowy, który mógłby pomieścić inne znaczniki w sposób, który umożliwiałby ich efektywne stylizowanie jako całości. Zastosowanie <p> do grupowania elementów np. obrazków i przycisków mogłoby prowadzić do nieoczekiwanych rezultatów w prezentacji treści oraz problemów z dostępnością. Z kolei znacznik <span> jest elementem inline, co oznacza, że nie łamie linii i może być używany do stylizacji mniejszych fragmentów tekstu. Jego zastosowanie do grupowania bloków treści byłoby nieodpowiednie, ponieważ nie potrafi on zarządzać rozkładem elementów na stronie. Ostatnim błędem w wyborze niepoprawnych odpowiedzi jest <param>, który jest znakiem używanym do definiowania parametrów dla obiektów w znaczeniu <object>. Jest on całkowicie nieadekwatny w kontekście grupowania treści, ponieważ nie służy do stylizacji ani strukturalizacji dokumentu HTML. Użycie <param> w tym kontekście jest mylące i nie odzwierciedla rzeczywistych potrzeb związanych z organizacją treści w dokumentach webowych.

Pytanie 19

Definicja stylu przedstawiona w języku CSS dotyczy odnośnika, który

Ilustracja do pytania
A. był już odwiedzany
B. jeszcze nie był odwiedzany
C. posiada niepoprawny adres URL
D. ma wskaźnik myszy ustawiony nad nim
W języku CSS selektor a:visited odnosi się do linków, które użytkownik już odwiedził. To pseudo-klasa, która umożliwia projektantom stron internetowych kontrolowanie wyglądu linków po ich kliknięciu, co poprawia doświadczenia użytkownika i umożliwia łatwiejszą nawigację. W przykładzie a:visited{color:orange;} wszystkie odwiedzone linki zostaną pokolorowane na pomarańczowo, co wizualnie odróżnia je od nieodwiedzonych linków. To podejście jest zgodne z zasadami dostępności, które sugerują, aby odwiedzone linki były w jakiś sposób wyróżnione. Praktycznym zastosowaniem tej wiedzy jest tworzenie stron, które są bardziej przejrzyste i intuicyjne dla użytkowników. Dobre praktyki zalecają, by różnica między odwiedzonymi a nieodwiedzonymi linkami była subtelna, ale zauważalna. Ustawianie różnych kolorów dla tych stanów linków jest popularnym rozwiązaniem. Prawidłowe użycie pseudo-klasy :visited wspiera także budowanie stron responsywnych, które poprawiają UX i spełniają standardy nowoczesnego designu, jednocześnie biorąc pod uwagę kwestie związane z prywatnością użytkowników, ponieważ CSS nie pozwala na stylizowanie niektórych właściwości odwiedzonych linków.

Pytanie 20

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

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

Pytanie 21

W tabeli artykuly w bazie danych sklepu znajduje się pole o nazwie nowy. Jak należy wykonać kwerendę, aby wypełnić to pole wartościami TRUE dla wszystkich rekordów?

A. INSERT INTO artykuly VALUE nowy=TRUE;
B. INSERT INTO nowy FROM artykuly SET TRUE;
C. UPDATE artykuly SET nowy=TRUE;
D. UPDATE nowy FROM artykuly VALUE TRUE;
Żeby zaktualizować wartości w kolumnie 'nowy' w tabeli 'artykuły' na TRUE, musisz użyć komendy SQL UPDATE. To jest standardowy sposób, żeby zmieniać już istniejące rekordy w tabelach. W tym przypadku komenda 'UPDATE artykuly SET nowy=TRUE;' oznacza, że wszystkie rekordy w tabeli 'artykuły' będą miały pole 'nowy' ustawione na TRUE. To dość prosta i skuteczna operacja, która pozwala na jednolitą zmianę w całej tabeli. Na przykład, jeśli w tabeli 'artykuły' jest 1000 rekordów, to wszystkie z nich dostaną wartość TRUE w polu 'nowy', co może być pomocne, jeśli chcemy oznaczyć nowe produkty. Pamiętaj, żeby robić kopie zapasowe bazy danych przed takimi masowymi zmianami. To może uratować Cię od utraty ważnych danych, gdyby coś poszło nie tak. Użycie tej komendy jest zgodne z ogólnymi zasadami SQL, więc jest to bezpieczny sposób działania dla każdego, kto zarządza bazą danych.

Pytanie 22

Który efekt został zaprezentowany na filmie?

A. Przenikanie zdjęć.
B. Zmniejszenie kontrastu zdjęcia.
C. Zwiększenie ostrości zdjęcia.
D. Zmiana jasności zdjęć.
Poprawnie wskazany efekt to przenikanie zdjęć, często nazywane też płynnym przejściem (ang. crossfade). Polega to na tym, że jedno zdjęcie stopniowo zanika, jednocześnie drugie pojawia się z narastającą widocznością. W praktyce technicznej realizuje się to najczęściej przez zmianę przezroczystości (opacity) dwóch warstw – jedna warstwa z pierwszym obrazem ma zmniejszaną wartość opacity z 1 do 0, a druga z kolejnym zdjęciem zwiększaną z 0 do 1. Na stronach WWW taki efekt robi się zwykle za pomocą CSS (transition, animation, keyframes) albo JavaScriptu, czasem z użyciem bibliotek typu jQuery czy gotowych sliderów. Moim zdaniem to jest jeden z podstawowych efektów, który warto umieć odtworzyć, bo pojawia się w galeriach, sliderach na stronach głównych, prezentacjach produktów czy prostych pokazach slajdów. W materiałach multimedialnych, np. w edycji wideo, dokładnie ten sam efekt nazywa się przejściem typu „cross dissolve” lub „fade”, i zasada działania jest identyczna – płynne nakładanie się dwóch klatek obrazu w czasie. Dobre praktyki mówią, żeby nie przesadzać z czasem trwania przenikania: zwykle 0,5–1,5 sekundy daje przyjemny, profesjonalny wygląd, bez wrażenia „zamulenia” interfejsu. Warto też pilnować spójności – jeśli na stronie używasz przenikania w jednym miejscu, dobrze jest utrzymać podobny styl animacji w innych elementach, żeby całość wyglądała konsekwentnie i nie rozpraszała użytkownika. W kontekście multimediów na WWW przenikanie jest też korzystne wydajnościowo, bo operuje głównie na właściwości opacity i transformacjach, które przeglądarki potrafią optymalizować sprzętowo.

Pytanie 23

W skrypcie napisanym w języku PHP należy przeprowadzić operacje, gdy spełniony jest warunek, że adresy są parzystymi numerami na ulicach: Bratkowej oraz Nasturcjowej. Jakie wyrażenie logiczne to określa?

A. ($ulica == "Bratkowa" || $ulica == "Nasturcjowa") && $numer % 2 == 0
B. ($ulica == "Bratkowa" || $ulica == "Nasturcjowa") && $numer / 2 == 0
C. $ulica == "Bratkowa" && $ulica == "Nasturcjowa" && $numer / 2 == 0
D. $ulica == "Bratkowa" && $ulica == "Nasturcjowa" && $numer % 2 == 0
Wyrażenie logiczne ($ulica == "Bratkowa" || $ulica == "Nasturcjowa") && $numer % 2 == 0 jest poprawne, ponieważ łączy dwa istotne warunki: sprawdzenie, czy ulica jest jedną z dozwolonych (Bratkowa lub Nasturcjowa) oraz weryfikacja, czy numer adresu jest parzysty. Operator || (lub) skutkuje tym, że tylko jeden z warunków ulicy musi być prawdziwy, aby wyrażenie było spełnione. Z kolei operator % (modulo) skutkuje sprawdzeniem reszty z dzielenia przez 2, co jest standardowym podejściem do ustalania, czy liczba jest parzysta. W kontekście programowania w PHP, takie konstrukcje są powszechnie używane w celu walidacji danych wejściowych. Na przykład w formularzach rejestracyjnych, aby upewnić się, że użytkownik wprowadza prawidłowe informacje, można zastosować podobne wyrażenia. Warto również zauważyć, że jest to zgodne z dobrymi praktykami programowania, które zachęcają do stosowania czytelnych i zrozumiałych warunków logicznych, co ułatwia późniejsze utrzymanie kodu i jego rozbudowę.

Pytanie 24

W języku PHP funkcja trim służy do

A. redukcji tekstu o zdefiniowaną w parametrze liczbę znaków
B. określenia długości tekstu
C. porównywania dwóch tekstów i zwracania ich wspólnej części
D. usuwania białych znaków lub innych znaków wymienionych w parametrze z obu końców tekstu
Funkcja trim w języku PHP jest niezwykle przydatnym narzędziem, które ma na celu usuwanie białych znaków oraz innych określonych znaków z obu końców łańcucha tekstowego. Przykład użycia tej funkcji może być obserwowany w sytuacjach, gdy użytkownik wprowadza dane do formularza, gdzie często zdarza się, że na początku lub końcu tekstu pojawiają się zbędne spacje. Można to zignorować, ale może to prowadzić do problemów z walidacją danych, porównywaniem łańcuchów czy wstawianiem do bazy danych. Użycie funkcji trim pozwala więc na zachowanie czystości danych i ich lepsze przetwarzanie. Jako dobra praktyka, zawsze warto stosować trim przed dalszym przetwarzaniem tekstów w celu eliminacji potencjalnych błędów. Dodatkowo, funkcja trim może przyjmować drugi parametr, który pozwala na określenie, jakie znaki mają być usuwane. To zwiększa jej elastyczność w różnorodnych kontekstach aplikacji webowych, umożliwiając np. usuwanie niechcianych znaków z danych wejściowych.

Pytanie 25

Które polecenie MySQL porządkuje tabelę i odzyskuje miejsce zajmowane przez usunięte wcześniej wiersze?

A.
OPTIMIZE TABLE
B.
MODIFY TABLE
C.
ANALYZE TABLE
D.
UPDATE TABLE
Po wielu operacjach usuwania i aktualizacji tabela bywa pofragmentowana i zajmuje więcej miejsca, niż potrzeba. Polecenie OPTIMIZE TABLE porządkuje ją: reorganizuje dane i indeksy oraz zwalnia nieużywaną przestrzeń, co bywa też korzystne dla wydajności. Dlatego do uporządkowania tabeli i odzyskania miejsca służy OPTIMIZE TABLE.

Pytanie 26

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

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

Pytanie 27

Która funkcja PHP ustawia KODOWANIE znaków połączenia z bazą (np. dla polskich liter)?

A.
mysqli_connect()
B.
mysqli_query()
C.
mysqli_fetch_assoc()
D.
mysqli_set_charset()
Nawet gdy tabele są w utf8, połączenie PHP-baza może domyślnie używać innego kodowania - i wtedy „ą”, „ś”, „ł” zamieniają się w „krzaki”. Naprawia to mysqli_set_charset($polaczenie, "utf8"), ustawiając kodowanie znaków dla całej komunikacji z bazą. Wywołuje się ją raz, zaraz po połączeniu. Zapamiętaj: „set_charset” = ustaw zestaw znaków połączenia, żeby polskie litery zapisywały się i czytały poprawnie.

Pytanie 28

Dany fragment kodu ilustruje składnię danego języka

Ilustracja do pytania
A. C#
B. PHP
C. C
D. JavaScript
Kod przedstawiony w pytaniu jest napisany w języku PHP który jest popularnym językiem skryptowym stosowanym na serwerach do generowania dynamicznych stron internetowych Zaczyna się od znacznika otwierającego '<?php' co jasno wskazuje na PHP W kodzie użyte są funkcje takie jak file_get_contents fopen fwrite i fclose które są typowe dla PHP i służą do manipulacji plikami Funkcja file_get_contents służy do odczytywania zawartości pliku co jest niezbędne do pobrania aktualnej wartości zmiennej Silosc Następnie zmienna ta jest inkrementowana aby zwiększyć jej wartość o jeden co jest powszechnie stosowane w licznikach odwiedzin stron internetowych PHP jako język skryptowy pozwala na łatwe manipulowanie danymi serwera a także na integrację z bazami danych i szeroką gamę funkcji sieciowych i narzędzi co czyni go jednym z najczęściej używanych języków do tworzenia aplikacji webowych Dobrym standardem jest stosowanie PHP w przypadku gdy potrzebne jest dynamiczne generowanie treści oraz zarządzanie danymi użytkowników

Pytanie 29

Funkcji session_start() w PHP należy użyć przy realizacji:

A. strony wielostronicowej, która musi pamiętać dane przy przechodzeniu między stronami
B. obsługi pojedynczego formularza
C. dowolnej strony obsługującej ciasteczka
D. wczytywania danych z plików zewnętrznych
Funkcja session_start() uruchamia (lub wznawia) sesję - mechanizm pozwalający zapamiętać dane użytkownika pomiędzy kolejnymi odsłonami strony. Wywołuje się ją na początku skryptu, zanim cokolwiek zostanie wypisane, a dane przechowuje się w tablicy $_SESSION (np. login zalogowanej osoby czy zawartość koszyka). Przeglądarka trzyma tylko identyfikator sesji w ciasteczku, a same dane zostają na serwerze. Dlatego sesji używa się w serwisach wielostronicowych, gdzie dane muszą „przechodzić” między podstronami.

Pytanie 30

Jaką wartość przyjmie zmienna a po wykonaniu poniższej sekwencji komend w PHP?

$a = 1;
$a++;
$a += 10;
--$a;
A. 11
B. 10
C. 1
D. 12
Zmienna a początkowo jest ustawiona na wartość 1. Instrukcja $a++ to postinkrementacja co oznacza że pierwotna wartość zmiennej a jest użyta w bieżącym wyrażeniu a dopiero potem zwiększana. Po wykonaniu tej instrukcji a staje się 2. Następnie $a += 10 zwiększa wartość o 10 co daje nam 12. Ostatecznie instrukcja --$a to predekrementacja co oznacza że zmniejsza wartość przed użyciem w wyrażeniu. W efekcie końcowym a wynosi 11. W praktyce zrozumienie różnic między inkrementacją a dekrementacją jest kluczowe dla efektywnego kodowania zwłaszcza przy operacjach na licznikach w pętlach. Dobre praktyki w programowaniu zalecają świadome stosowanie post- i preinkrementacji oraz zrozumienie jak te operacje wpływają na logikę programu. Umiejętność przewidywania efektów tych operacji jest jedną z podstawowych kompetencji programistycznych która znacząco wpływa na jakość i niezawodność tworzonego oprogramowania. Warto także zwrócić uwagę na zachowanie tych operatorów w różnych językach programowania ponieważ mimo pewnych podobieństw zachowanie może się różnić

Pytanie 31

Które polecenie usunie z tabeli artykuly wiersze, gdzie pole tresc zawiera „sto” w dowolnym miejscu?

A.
DELETE * FROM artykuly WHERE tresc LIKE "%sto%";
B.
DELETE FROM artykuly WHERE tresc = "%sto%";
C.
DELETE * FROM artykuly WHERE tresc = "%sto%";
D.
DELETE FROM artykuly WHERE tresc LIKE "%sto%";
Dopasowanie fragmentu tekstu wymaga operatora LIKE i znaku %. DELETE FROM artykuly WHERE tresc LIKE "%sto%"; usunie wiersze, w których pole tresc zawiera „sto” w dowolnym miejscu. Dlatego poprawne jest DELETE FROM artykuly WHERE tresc LIKE "%sto%";.

Pytanie 32

W zamieszczonym przykładzie pseudoklasa hover sprawi, że styl pogrubiony będzie przypisany

a:hover { font-weight: bold; }
A. odnośnikowi, w momencie kiedy najechał na niego kursor myszy.
B. wszystkim odnośnikom nieodwiedzonym.
C. każdemu odnośnikowi niezależnie od aktualnego stanu.
D. wszystkim odnośnikom odwiedzonym.
Twoja odpowiedź jest prawidłowa. Pseudoklasa :hover w CSS jest używana do stylizacji elementów, na które najechał kursor myszy. Na przykład, jeżeli użyjemy stylu 'font-weight: bold;' z pseudoklasą :hover, tekst odnośnika stanie się pogrubiony tylko wtedy, kiedy na niego najedziemy kursorem. Jest to bardzo przydatne w interaktywnym designie strony internetowej, gdzie możemy w prosty sposób zasygnalizować użytkownikowi, że dany element jest aktywny lub interaktywny. Pamiętaj, że pseudoklasy w CSS są potężnym narzędziem, które pozwala nam na tworzenie zaawansowanych efektów bez konieczności użycia JavaScriptu. Znajomość i umiejętność wykorzystania pseudoklas jest zatem kluczową umiejętnością każdego front-end developera.

Pytanie 33

Tabela o nazwie naprawy posiada kolumny klient oraz czyNaprawione. W celu usunięcia rekordów, w których wartość pola czyNaprawione wynosi prawda, należy użyć komendy

A. DELETE FROM naprawy;
B. DELETE FROM naprawy WHERE czyNaprawione = TRUE;
C. DELETE klient FROM naprawy WHERE czyNaprawione = TRUE;
D. DELETE naprawy WHERE czyNaprawione = TRUE;
Odpowiedź "DELETE FROM naprawy WHERE czyNaprawione = TRUE;" jest poprawna, ponieważ wykorzystuje właściwą składnię SQL do usunięcia rekordów z tabeli. Komenda DELETE jest używana do usuwania danych z bazy danych, a klauzula WHERE precyzuje, które rekordy mają być usunięte na podstawie określonych warunków. W tym przypadku, usuwane są tylko te rekordy, które mają wartość TRUE w polu czyNaprawione. Zastosowanie klauzuli WHERE jest kluczowe, ponieważ umożliwia precyzyjne wybranie danych do usunięcia, co zapobiega przypadkowemu skasowaniu wszystkich rekordów w tabeli. W praktyce, taką komendę można wykorzystać w różnych aplikacjach związanych z zarządzaniem danymi, np. w systemach informatycznych do obsługi klienta, gdzie zachodzi potrzeba bieżącego zarządzania statusami napraw. Dobre praktyki w programowaniu baz danych nakazują zawsze stosować klauzulę WHERE przy usuwaniu danych, aby uniknąć niezamierzonych skutków. Warto również przetestować zapytania w środowisku testowym przed ich zastosowaniem w produkcji, co zwiększa bezpieczeństwo operacji na danych.

Pytanie 34

Która z funkcji zdefiniowanych w języku PHP zwraca jako wynik połowę kwadratu wartości podanej jako argument?

A. function licz($a) { return $a*$a/2; }
B. function licz($a) { return $a/2; }
C. function licz($a) { echo $a/2; }
D. function licz($a) { echo $a*$a/2; }
Dobra robota, jeśli chodzi o tę funkcję! Właściwa odpowiedź to taka, która zwraca połowę kwadratu podanej wartości. W przykładzie 'function licz($a) { return $a*$a/2; }' widać, że użycie 'return' jest bardzo ważne, bo to dzięki niemu wynik trafia tam, gdzie funkcję wywołujemy. Najpierw 'a' jest podnoszone do kwadratu, czyli 'a * a', a potem dzielimy to przez 2. Jak dla 'a' podstawimy 4, to wyjdzie 8, bo połowa z 16 (kwadrat z 4) to właśnie 8. Bardzo dobrze, że zwracasz uwagę na takie szczegóły, bo to naprawdę istotne w programowaniu. Można tę funkcję stosować w różnych sytuacjach, np. w aplikacjach z interfejsem graficznym czy przy analizie jakichś danych, no wiesz, tam, gdzie matematyka wchodzi w grę.

Pytanie 35

Które z poniższych zdań poprawnie opisuje utworzoną tabelę?

CREATE TABLE dane (kolumna INTEGER(3));
A. Kolumny tabeli dane są nazwane: kolumna1, kolumna2, kolumna3
B. Tabela o nazwie dane składa się z trzech kolumn typu całkowitego
C. Tabela o nazwie dane ma jedną kolumnę typu całkowitego
D. Tabela zawiera jedną kolumnę, która przechowuje trzyelementowe tablice
Instrukcja CREATE TABLE w podanym przykładzie tworzy tabelę o nazwie `dane` z jedną, jedyną kolumną o nazwie `kolumna` i typie `INTEGER(3)`. Kluczowe są tu dwie rzeczy: po pierwsze, nazwa tabeli (`dane`), po drugie, lista kolumn w nawiasie. W tej liście jest tylko jedna pozycja: nazwa kolumny i jej typ danych. W SQL każda definicja kolumny to osobny wpis, oddzielany przecinkiem. Skoro nie ma przecinka, to znaczy, że jest dokładnie jedna kolumna. Zapis `INTEGER(3)` nie oznacza trzech kolumn ani tablicy, tylko typ liczbowy całkowity z określoną „szerokością wyświetlania” (w MySQL) lub po prostu liczbę całkowitą – w wielu silnikach baz danych nawias jest wręcz ignorowany. W praktyce tę kolumnę możemy potem używać np. do przechowywania wieku, liczby sztuk towaru, numeru poziomu uprawnień itp. Przykładowo: `INSERT INTO dane (kolumna) VALUES (5);` wstawi rekord z wartością 5 w tej jednej kolumnie. Z mojego doświadczenia warto przy projektowaniu tabel zawsze jasno nazywać kolumny, tak żeby z samej nazwy wynikało, co przechowują, np. `wiek`, `ilosc_sztuk`, a nie ogólne `kolumna`. Dobrą praktyką jest też od razu dodanie klucza głównego, np. `id INT AUTO_INCREMENT PRIMARY KEY`, ale w tym zadaniu skupiamy się tylko na liczbie kolumn i ich typie. To pytanie dobrze pokazuje, że w SQL struktura tabeli wynika z liczby pozycji w nawiasie, a nie z liczby w nawiasie przy typie danych.

Pytanie 36

Który atrybut znacznika <video> włącza ciągłe odtwarzanie (w pętli)?

A.
loop
B.
muted
C.
poster
D.
controls
Atrybut loop w <video> (i <audio>) sprawia, że nagranie po zakończeniu odtwarza się od początku, czyli w pętli. To atrybut logiczny - sama jego obecność włącza tę funkcję. Dlatego ciągłe odtwarzanie włącza loop.

Pytanie 37

Co należy zrobić przed rozpoczęciem pętli, by zapewnić poprawne działanie przedstawionego kodu JavaScript?

var text;
for( var i = 0; i < tab.length; i++){
    text += tab[i] + "<br>";
}
A. Zadeklarować zmienną i
B. Zainicjować zmienną text
C. Sprawdzić rozmiar tabeli tab
D. Zweryfikować, czy text ma typ string
Zainicjowanie zmiennej text przed użyciem jej w kodzie JavaScript jest kluczowe dla uniknięcia błędów runtime. W analizowanym kodzie zmienna text jest używana do przechowywania i modyfikacji danych stringowych w pętli. Bez wcześniejszej inicjalizacji, np. text = '', próba konkatenacji wartości do zmiennej text prowadziłaby do błędu, gdyż zmienna ta nie miałaby początkowej wartości. Zainicjowanie zmiennej jako pustego stringa jest dobrym przykładem praktyki programistycznej, która zapobiega nieoczekiwanym błędom i zapewnia, że zmienna ma przewidywalny stan początkowy przed rozpoczęciem operacji na niej. Taka inicjalizacja jest również zgodna z zasadą defensywnego programowania gdzie staramy się zminimalizować ryzyko wystąpienia błędów poprzez odpowiednie przygotowanie danych przed ich użyciem. W praktyce, inicjalizacja zmiennych jest częścią dobrych standardów programistycznych i pomaga w utrzymywaniu czytelności i niezawodności kodu, co jest szczególnie istotne w projektach zespołowych oraz dużych aplikacjach.

Pytanie 38

Jakie znaki będą przechowywane w zmiennej $napis po uruchomieniu poniższego kodu PHP?

$napis = "Programowanie w PHP";
$napis = substr($napis, 3, 5);
A. gramo
B. og
C. gr
D. ogram
Gratulacje, dobrze zrozumiałeś działanie funkcji substr w języku PHP. Ta funkcja jest używana do wyodrębnienia części ciągu znaków. W tym przypadku, wyodrębnienia 5 znaków zaczynając od czwartego znaku (indeks 3) w napisie. W rezultacie, otrzymujemy ciąg 'gramo'. Warto zwrócić uwagę, że indeksowanie w PHP (podobnie jak w większości języków programowania) zaczyna się od zera, a nie od jeden. Dlatego 'czwarty' znak ma indeks 3. Używanie funkcji substr jest częstą praktyką przy manipulacji ciągami znaków w PHP, więc zrozumienie jej działania jest bardzo ważne. Przykładowo, jeżeli chcemy wyodrębnić fragment tekstu od pewnego miejsca do końca, możemy tego dokonać nie podając trzeciego parametru funkcji substr.

Pytanie 39

Który format wideo NIE jest natywnie obsługiwany przez element <video> w HTML5?

A. MP4
B. Ogg
C. WebM
D. AVI
Pozostałe formaty należą do standardu HTML5 dla <video>. MP4, WebM i Ogg działają bez wtyczek w przeglądarkach. AVI, choć popularny na dyskach, nie należy do tej grupy. Dlatego natywnie nieobsługiwany jest AVI.

Pytanie 40

Co zastosować, aby zapewnić integralność (spójność) danych w bazie MS Access?

A. defragmentację bazy
B. archiwizację bazy
C. więzy integralności
D. kwerendę aktualizującą
Spójność danych między powiązanymi tabelami w MS Access zapewniają WIĘZY INTEGRALNOŚCI (relacyjnej) - pilnują, by np. nie dało się dodać rekordu odwołującego się do nieistniejącego klucza w tabeli nadrzędnej. Dlatego stosuje się więzy integralności.