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 17:11
  • Data zakończenia: 8 czerwca 2026 17:36

Egzamin zdany!

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

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

W tabeli mieszkancy znajdują się różne dane. Aby przefiltrować jedynie mieszkańców, którzy mają przypisaną dzielnicę = 1, stworzono dla uproszczenia działania wirtualną tabelę (widok) poprzez zastosowanie kwerendy

A. CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy WHERE dzielnica = 1
B. CREATE VIEW mieszkancy WHERE dzielnica = 1
C. CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy
D. CREATE VIEW mieszkancy FROM mieszkancy WHERE dzielnica = 1
Odpowiedź nr 4 jest na pewno w porządku, bo dobrze definiuje widok w SQL. Filtruje ona dane mieszkańców na podstawie konkretnego warunku. Użycie składni 'CREATE VIEW mieszkancySrodmiescie AS SELECT * FROM mieszkancy WHERE dzielnica = 1;' jest naprawdę zgodne z tym, co powinniśmy robić przy tworzeniu widoków w bazach danych. Widok to w zasadzie zapytanie, które pokazuje dane w specyficzny sposób, a w tym przypadku koncentruje się na mieszkańcach z konkretnej dzielnicy. Moim zdaniem, definiując widoki, warto pamiętać, że prostsze zapytania mogą znacznie poprawić czytelność i ułatwić pracę z kodem. Widoki są naprawdę przydatnym narzędziem do organizacji i segregacji danych, zwłaszcza w dużych systemach, gdzie filtrowanie i agregacja mają duże znaczenie. Na przykład, jeśli chciałbyś zobaczyć mieszkańców tylko z jednej dzielnicy, wystarczy, że użyjesz widoku i napiszesz 'SELECT * FROM mieszkancySrodmiescie'. Dobrze też wiedzieć, że widoki nie tylko filtrują, ale mogą też pomagać w prezentacji bardziej skomplikowanych zestawów danych, co czyni je uniwersalnym narzędziem w analizie i raportowaniu danych.

Pytanie 2

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

A. element <title> nie został prawidłowo zamknięty przez </title>.
B. nie zdefiniowano elementu <title> w sekcji <head> dokumentu.
C. element <title> nie jest konieczny.
D. nie zdefiniowano obowiązkowego atrybutu title w tagu <img>.
Twoja odpowiedź jest całkowicie trafna! Zgodnie z tym, co mówi specyfikacja HTML5, element <title> rzeczywiście jest obowiązkowy i musi znaleźć się w sekcji <head>. To bardzo ważne, bo tytuł strony to coś, co pokazuje się na karcie przeglądarki, a także w wynikach wyszukiwania. Jak go brakuje, to strona nie spełnia podstawowych wymogów i pojawia się błąd walidacji. Fajnie jest mieć unikalne i opisowe tytuły dla każdej strony, bo to korzystnie wpływa na SEO i użyteczność. Na przykład, jeśli robiłbyś stronę o kulinariach, to tytuł mógłby być "Przepisy na zdrowe obiady", co od razu informuje użytkowników i wyszukiwarki, o co chodzi. Dobrze dobrany tytuł to naprawdę kluczowa sprawa, bo ma duży wpływ na to, jak użytkownicy postrzegają Twoją stronę i czy klikną w link. Pamiętaj też, że element <title> powinien być krótki, ale wystarczająco informacyjny, zazwyczaj nie dłuższy niż 60 znaków.

Pytanie 3

Który z poniższych kodów stanowi alternatywę dla kodu umieszczonego w ramce?

Ilustracja do pytania
A. <?php
for($x=1;$x<=55;$x++){echo $x." ";}
?>
B. <?php
for($x=2;$x<=54;$x+=2){echo $x." ";}
?>
C. <?php
for($x=2;$x<=56;$x+=2){echo $x." ";}
?>
D. <?php
for($x=1;$x<=55;$x+=1){echo $x." ";}
?>
W wielu odpowiedziach widać, że nie do końca rozumiesz, jak działają pętle i warunki w PHP. Kod w ramce przyzwoicie wypisuje liczby parzyste od 2 do 54, ale pomija nieparzyste tylko dzięki warunkowi if i continue. Jak masz niepoprawne odpowiedzi, to pojawia się kilka problemów. Na przykład, jak pętla startuje od x=1 i zwiększa x o 1, to wszystkie liczby się drukują, a to nie jest to, co chcesz uzyskać. Zmiana kroku na zwiększanie x o 2 byłaby dobra, ale możesz też mieć za szeroki lub zbyt wąski zakres, tak jak w przypadku, gdy pętla kończy się na 56 zamiast 54. Żeby kod był poprawny, musisz zrozumieć, że każda iteracja musi spełniać konkretny warunek, który rozwiązuje problem. Często mylimy się, myśląc, że drobne zmiany w kodzie, jak zmiana zakresu czy kroku, same z siebie załatwią sprawę. Ważne, żeby przemyśleć, jak zaplanować strukturę pętli i warunków, żeby wszystko działało tak, jak powinno i wykorzystanie zasobów było efektywne.

Pytanie 4

Który atrybut kolumny zapewnia automatyczne nadawanie kolejnych, unikalnych wartości (np. dla klucza głównego)?

A.
UNIQUE
B.
NOT NULL
C.
DEFAULT
D.
AUTO_INCREMENT
Pozostałe atrybuty pełnią inne role. NOT NULL wymusza, by pole nie było puste, lecz żadnej wartości nie tworzy. DEFAULT wstawia ustaloną z góry wartość domyślną, gdy nie podano innej - ta sama dla każdego wiersza, a nie rosnący numer. UNIQUE gwarantuje, że wartości w kolumnie się nie powtórzą, ale to programista musi je dostarczyć. Automatyczne generowanie kolejnych liczb zapewnia AUTO_INCREMENT, dlatego to on jest poprawny.

Pytanie 5

Czy poniższy kod PHP działa poprawnie, wyświetlając na stronie dane pobrane z bazy danych? Ile pól zostanie zaprezentowanych?

$ile = mysqli_num_rows($zapytanie);
for ($i = 0; $i < $ile; $i++)
{
  $wiersz = mysqli_fetch_row($zapytanie);
  echo "<p>Klient: $wiersz[0] $wiersz[1], adres: $wiersz[2] </p>";
}
A. Z czterech pól
B. Z dwóch pól
C. Z trzech pól
D. Z jednego pola
Kod PHP wykorzystuje funkcję mysqli_fetch_row aby pobrać dane z bazy danych które są następnie wyświetlane. W funkcji tej każda wiersz z wyników zapytania jest reprezentowany jako tablica indeksowana liczbowo. W zaprezentowanym fragmencie kodu mamy dostęp do trzech indeksów: $wiersz[0] $wiersz[1] oraz $wiersz[2]. Oznacza to że z każdego wiersza wyniku kwerendy pobierane są trzy pola. Kod ten wyświetla dane w formacie paragrafu HTML zawierającego imię i nazwisko klienta oraz jego adres. W praktyce taka konstrukcja jest często wykorzystywana do generowania dynamicznych treści na stronie internetowej. Należy jednak pamiętać o zabezpieczeniach takich jak filtrowanie danych wejściowych aby uniknąć zagrożeń związanych z SQL injection. Warto również rozważyć wykorzystanie bardziej złożonych struktur danych jak tablice asocjacyjne które pozwalają na bardziej czytelne i zrozumiałe odwoływanie się do poszczególnych pól wiersza danych zwłaszcza w przypadku większych projektów. Użycie mysqli_fetch_row jest zgodne z dobrą praktyką jeśli chcemy uzyskać dostęp do danych w sposób sekwencyjny i wydajny

Pytanie 6

Użycie standardu ISO-8859-2 ma na celu zapewnienie prawidłowego wyświetlania

A. znaków zarezerwowanych dla języka opisu strony
B. polskich znaków, takich jak: ś, ć, ń, ó, ą
C. symboli matematycznych
D. specjalnych znaków przeznaczonych dla języka kodu strony
Wybór znaków matematycznych jako celu kodowania w standardzie ISO-8859-2 jest błędny, ponieważ ten standard nie koncentruje się na symbolach matematycznych, a raczej na literach i znakach typowych dla języków łacińskich, w tym polskiego. Mylne jest również stwierdzenie, że ISO-8859-2 jest używane do wyświetlania znaków specjalnych dla języka kodu strony, ponieważ te znaki są ogólnie obsługiwane przez różne standardy kodowania, w tym UTF-8, a ich obecność w ISO-8859-2 jest ograniczona. W przypadku znaków zarezerwowanych dla języka opisu strony, takich jak HTML, ich interpretacja nie zależy od konkretnego kodowania, lecz od zgodności z określonymi standardami HTML i CSS. Warto zwrócić uwagę, że wiele osób zapomina o różnicy między kodowaniem a samym językiem programowania; kodowanie dotyczy sposobu reprezentacji znaków, podczas gdy języki programowania definiują logikę oraz składnię. Często stosowanym błędem jest założenie, że każda strona internetowa musi wykorzystywać ISO-8859-2, co nie jest prawdą, zwłaszcza w dobie globalizacji i różnorodności językowej, gdzie coraz powszechniejsze staje się kodowanie UTF-8, które jest bardziej elastyczne i obsługuje szerszy zakres znaków.

Pytanie 7

Jaką funkcję pełni instrukcja DROP w języku SQL?

A. aktualizować dane obiektu
B. usunąć już istniejący obiekt
C. zmienić właściwości obiektu
D. wprowadzić nowy obiekt
Instrukcja DROP w języku SQL jest kluczowym narzędziem do zarządzania bazami danych, używaną do usuwania istniejących obiektów, takich jak tabele, widoki czy procedury składowane. Kiedy używamy polecenia DROP, nie tylko usuwamy obiekt z bazy danych, ale również wszystkie dane z nim związane, co sprawia, że operacja ta jest nieodwracalna. Przykładowo, jeśli chcemy usunąć tabelę o nazwie 'Użytkownicy', musimy użyć polecenia DROP TABLE Użytkownicy. Ważne jest, aby przed wykonaniem takiej operacji upewnić się, że dane są już zarchiwizowane lub nie są już potrzebne, ponieważ ta instrukcja nie da nam możliwości ich odzyskania po wykonaniu. W praktyce, DROP powinno być stosowane z rozwagą — zaleca się przed wykonaniem operacji wykorzystanie polecenia SELECT, aby sprawdzić, jakie dane są w danym obiekcie. Zgodnie z najlepszymi praktykami, organizacje powinny wprowadzać polityki dotyczące usuwania danych, aby zminimalizować ryzyko przypadkowej utraty ważnych informacji.

Pytanie 8

Która wartość atrybutu target otwiera stronę w NOWYM oknie lub karcie?

A.
_top
B.
_blank
C.
_self
D.
_parent
Wartość _blank atrybutu target otwiera odnośnik w NOWYM oknie lub karcie przeglądarki, np. <a href="..." target="_blank">. Stosuje się ją, by nie odrywać użytkownika od bieżącej strony. Dlatego nowe okno otwiera _blank.

Pytanie 9

W języku JavaScript zapisano poniższy fragment kodu:

var x=10;
x++;
console.log(x);
Po uruchomieniu skryptu zmienna x
A. będzie miała wartość 11 i zostanie wyświetlona w oknie popup
B. będzie miała wartość 11 i zostanie wyświetlona w konsoli przeglądarki internetowej
C. będzie miała wartość 10 i zostanie pokazana w dokumencie HTML
D. będzie miała wartość 10 i zostanie wyświetlona w głównym oknie przeglądarki internetowej
W analizowanym fragmencie kodu JavaScript mamy do czynienia z prostą operacją inkrementacji zmiennej x, która początkowo wynosi 10. Operator ++ zwiększa wartość zmiennej o 1, co skutkuje wartością 11. Wartością, która zostanie wyświetlona, jest wartość zmiennej x, która po inkrementacji wynosi 11. Jednak ważnym aspektem jest to, że w kodzie jest błąd składniowy w wywołaniu funkcji console.log. Poprawna składnia powinna wyglądać tak: console.log(x); zamiast console.logx);. W obecnej formie kodu, mimo inkrementacji zmiennej x do wartości 11, pojawi się błąd wykonania, a wartość nie zostanie wypisana. Gdyby błąd został naprawiony, wynik 11 zostałby wyświetlony w konsoli przeglądarki, co jest standardowym miejscem do monitorowania wyjścia w aplikacjach JavaScript. To zachowanie jest zgodne ze specyfikacjami ECMAScript, które definiują zasady działania operatorów oraz metod konsoli.

Pytanie 10

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

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

Pytanie 11

W JavaScript metoda getElementById odnosi się do

A. znacznika HTML o wskazanym id
B. zmiennej numerycznej
C. klasy zdefiniowanej w CSS
D. znacznika HTML o podanej nazwie klasy
Metoda getElementById w JavaScript jest kluczowym narzędziem do interakcji z modelowaniem DOM (Document Object Model). Służy do uzyskiwania dostępu do pojedynczego elementu HTML na podstawie jego atrybutu id, co jest zgodne z zasadą unikalności identyfikatorów w dokumencie HTML. Dzięki temu programiści mogą stosunkowo łatwo manipulować pojedynczymi elementami, co jest istotne w dynamicznych aplikacjach internetowych. Przykładem zastosowania tej metody może być zmiana tekstu w elemencie <h1>, gdzie używamy getElementById('myHeader').innerHTML = 'Nowy nagłówek';. Zgodnie z dobrymi praktykami, powinno się unikać używania zduplikowanych id w dokumencie, aby zapewnić, że metoda ta zawsze zwraca jeden, a nie wiele elementów. Warto również pamiętać, że w przypadku braku elementu o podanym id, metoda zwróci null, co powinno być uwzględnione w logice aplikacji, aby uniknąć błędów. Użycie tej metody jest standardem w programowaniu JavaScript i stanowi fundament dla wielu bardziej zaawansowanych technik manipulacji DOM.

Pytanie 12

Domyślna CAPTCHA
CAPTCHA - reCAPTCHA

W CMS Joomla! opcja konfiguracji globalnej, pokazana na ilustracji, służy do
A. zapobiegania atakom typu SQL Injection.
B. dopuszczenia do przesyłania danych z formularzy wypełnionych tylko przez człowieka.
C. wyświetlenia okna umożliwiającego wyszukiwanie tekstu na stronie.
D. wyświetlania okna informującego o zgodzie użytkownika na pliki cookie.
Na ilustracji widoczna jest opcja wyboru domyślnej CAPTCHA w konfiguracji globalnej Joomla!, czyli mechanizmu służącego do ochrony formularzy przed botami. Łatwo tu wpaść w kilka typowych pułapek myślowych i skojarzyć ten element z innymi funkcjami bezpieczeństwa lub interfejsu, które z CAPTCHA nie mają wiele wspólnego.

Częstym błędem jest utożsamianie każdego „zabezpieczenia” w panelu administracyjnym z ochroną przed SQL Injection lub innymi atakami na bazę danych. Ochrona przed SQL Injection polega na poprawnym programowaniu po stronie serwera: stosowaniu przygotowanych zapytań (prepared statements), filtrowaniu i walidacji danych wejściowych, poprawnym użyciu API bazy danych. CAPTCHA w ogóle nie dotyka warstwy SQL – jej zadaniem jest ograniczenie liczby automatycznych zgłoszeń z formularzy, a nie filtrowanie treści pod kątem złośliwych zapytań. To jest inna warstwa zabezpieczeń.

Podobnie mylące bywa skojarzenie z wyszukiwarką na stronie. Okno wyszukiwania to zwykły formularz z polem tekstowym, którego wygląd i działanie zależy od modułu lub komponentu wyszukiwarki, a nie od globalnej opcji „Domyślna CAPTCHA”. Ustawienie CAPTCHA nie dodaje żadnego pola wyszukiwania, nie wpływa też na mechanizm przeszukiwania treści, tylko na to, czy przed wysłaniem formularza pojawi się test antybotowy.

Kolejne skojarzenie to okna związane z RODO i zgodą na pliki cookie. Bannery cookie, pop-upy z informacją o polityce prywatności czy zgody marketingowe są realizowane przez osobne wtyczki lub skrypty JavaScript, często całkowicie niezależne od mechanizmu CAPTCHA. Ich zadaniem jest spełnienie wymogów prawnych, a nie weryfikacja, czy użytkownik jest człowiekiem. CAPTCHA nie służy do obsługi zgód na cookies, nie zarządza ciasteczkami, nie pokazuje komunikatów o prywatności.

Sedno tej opcji w Joomla! polega na wskazaniu, który mechanizm antybotowy ma być standardowo używany w formularzach. Dzięki temu dane z formularzy mogą być przyjmowane tylko wtedy, gdy użytkownik przejdzie test potwierdzający, że nie jest automatem. Jeśli myli się tę funkcję z wyszukiwaniem, banerem cookie czy obroną przed SQL Injection, to w praktyce oznacza niezrozumienie warstwowego podejścia do bezpieczeństwa i użyteczności: CAPTCHA to filtr na poziomie interakcji człowiek–formularz, a nie ogólny „magiczny przełącznik” bezpieczeństwa lub interfejsu.

Pytanie 13

W języku SQL, aby dodać atrybut klucza podstawowego do pola id w istniejącej tabeli produkt należy użyć składni

A. ALTER TABLE produkt ADD PRIMARY KEY (id)
B. ALTER TABLE produkt ALTER COLUMN id INT
C. ALTER TABLE produkt DROP CONSTRAINT id
D. ALTER TABLE produkt DROP PRIMARY KEY
Poprawna składnia to ALTER TABLE produkt ADD PRIMARY KEY (id), bo dokładnie to polecenie dodaje do istniejącej tabeli nowy klucz podstawowy oparty na kolumnie id. Instrukcja ALTER TABLE służy do modyfikowania struktury tabeli, a klauzula ADD PRIMARY KEY definiuje ograniczenie (constraint) typu klucz podstawowy dla wskazanej kolumny lub zestawu kolumn. W praktyce oznacza to, że kolumna id musi być unikalna i nie może przyjmować wartości NULL. Silnik bazy danych (np. MySQL, PostgreSQL, SQL Server) zwykle tworzy do tego indeks typu UNIQUE, który przyspiesza wyszukiwanie po kluczu głównym.
Moim zdaniem warto pamiętać, że takie polecenie będzie działać tylko wtedy, gdy dane w kolumnie id już spełniają warunki klucza podstawowego: brak duplikatów i brak wartości pustych. W realnym projekcie często robi się to w dwóch krokach: najpierw uzupełnia się brakujące wartości, usuwa lub poprawia duplikaty, a dopiero potem dodaje PRIMARY KEY. Przykładowo:
ALTER TABLE produkt ADD PRIMARY KEY (id);
W wielu systemach, zwłaszcza w aplikacjach webowych, kolumna id jest też często ustawiana jako AUTO_INCREMENT (MySQL) lub używa sekwencji (PostgreSQL, Oracle). Wtedy definicja tabeli przy tworzeniu może wyglądać np. tak:
CREATE TABLE produkt (id INT PRIMARY KEY AUTO_INCREMENT, nazwa VARCHAR(100));
Jeśli jednak tabela już istnieje i kolumna id była zwykłą kolumną, to właśnie ALTER TABLE ... ADD PRIMARY KEY (id) jest standardowym, poprawnym sposobem nadania jej roli klucza głównego. To rozwiązanie jest zgodne z ogólną składnią SQL i dobrą praktyką modelowania relacyjnych baz danych, gdzie każda tabela powinna mieć jasno zdefiniowany klucz podstawowy, najlepiej prosty, stabilny i jednoznaczny.

Pytanie 14

Jednym z atrybutów tabeli ksiazki jest pole czyWypozyczona, które może mieć dwie wartości: true lub false. Jaki typ danych będzie najbardziej odpowiedni dla tego pola?

A. CHAR
B. BOOLEAN
C. VARCHAR(5)
D. DOUBLE
Odpowiedź 'BOOLEAN' jest poprawna, ponieważ jest to typ danych, który idealnie odpowiada na potrzeby pola 'czyWypozyczona', które przyjmuje jedynie dwie wartości: true (prawda) oraz false (fałsz). W przypadku baz danych, typ BOOLEAN jest optymalny do reprezentowania stanów logicznych, co pozwala na efektywniejsze zarządzanie danymi oraz ich przetwarzanie. Przykładowo, w systemie zarządzania biblioteką, pole 'czyWypozyczona' może być używane do szybkiego filtrowania książek, które są aktualnie dostępne lub wypożyczone. Użycie typu BOOLEAN eliminuje potrzebę zbędnych konwersji typu, zwiększa czytelność kodu oraz ułatwia optymalizację zapytań SQL. W praktyce, stosowanie typu BOOLEAN jest zgodne z najlepszymi praktykami projektowania baz danych, które promują przejrzystość i zgodność z modelowaniem danych. Warto również zauważyć, że w niektórych systemach zarządzania bazami danych (np. PostgreSQL) typ BOOLEAN jest natywnie obsługiwany, co dodatkowo wpływa na wydajność operacji na danych.

Pytanie 15

Wskaż zdanie, które jest nieprawdziwe w odniesieniu do poniższej definicji funkcji w języku C++? void zamien(float &x, float &y){ float tmp; tmp=x; x=y; y=tmp; }

A. Funkcja nie zwraca żadnej wartości
B. Funkcja ma dwa argumenty
C. Funkcja korzysta z parametrów przez referencję
D. Funkcja zwraca jakąś wartość
Wszystkie niepoprawne odpowiedzi zawierają błędne założenia dotyczące definicji i działania funkcji zamien. Po pierwsze, twierdzenie, że funkcja zwraca wartość, jest nieprawdziwe, ponieważ w definicji funkcji użyto słowa kluczowego 'void', co jednoznacznie wskazuje, że nie ma zwracanej wartości. W C++ funkcje, które zwracają wartości, muszą mieć określony typ, a brak takiego typu sugeruje, że funkcja nie zwraca żadnych danych. Drugie stwierdzenie, że funkcja nie zwraca wartości, jest rzeczywiście poprawne. Warto zauważyć, że w przypadku funkcji, która dokonuje jedynie zamiany wartości argumentów przez referencję, nie ma potrzeby zwracania wyniku, gdyż zmiany te są widoczne w zmiennych przekazanych do funkcji. Trzecia odpowiedź, która wskazuje, że funkcja posiada dwa parametry, jest również prawdziwa, ponieważ funkcja 'zamien' przyjmuje dwa argumenty typu 'float', które są przekazywane przez referencję. Odnosi się to do aspektu przekazywania argumentów, gdzie użycie referencji pozwala na modyfikację przekazywanych danych. Na koniec, czwarta odpowiedź, mówiąca, że funkcja odwołuje się do parametrów przez referencję, również jest poprawna. Przekazywanie przez referencję jest techniką, która umożliwia bezpośrednią manipulację zmiennymi zewnętrznymi, co zwiększa elastyczność i efektywność funkcji, zwłaszcza w kontekście operacji na dużych zbiorach danych. W związku z tym, analiza wszystkich odpowiedzi prowadzi do wniosku, że tylko pierwsze stwierdzenie jest błędne, ponieważ jasno pokazuje, że funkcja zamien nie zwraca żadnej wartości.

Pytanie 16

Jak nazywa się model prostej bazy, w której wszystkie dane są w JEDNEJ tabeli?

A. jednorodnym
B. hierarchicznym
C. sieciowym
D. relacyjnym
Pozostałe modele są bardziej złożone. Relacyjny opiera się na wielu powiązanych tabelach, hierarchiczny na strukturze drzewa, a sieciowy na grafie powiązań. Dane w jednej tabeli to model jednorodny.

Pytanie 17

Obiektem w bazie danych, który wykorzystywany jest do podsumowywania, prezentacji oraz drukowania danych, jest

A. zapytanie
B. raport
C. formularz
D. zestawienie
Raport jest obiektem baz danych, który służy do podsumowywania, wyświetlania oraz wydruków danych. Jego główną funkcją jest agregacja i prezentacja informacji w sposób przystępny dla użytkownika. Raporty mogą być wykorzystywane do analizy danych, prezentacji wyników oraz podejmowania decyzji biznesowych. Przykładem zastosowania raportu może być generowanie miesięcznego raportu sprzedaży, który zawiera szczegółowe informacje o przychodach, kosztach oraz zyskach w danym okresie. Z perspektywy dobrych praktyk, raporty powinny być projektowane w taki sposób, aby były czytelne i zrozumiałe, a ich struktura powinna być zgodna z wymaganiami użytkowników. W kontekście standardów, raporty mogą być również generowane automatycznie przy użyciu narzędzi business intelligence, co pozwala na zwiększenie efektywności i dokładności analiz. Dobrze zdefiniowane raporty przyczyniają się do lepszego zrozumienia zbiorów danych oraz wspierają procesy decyzyjne w organizacji.

Pytanie 18

W dokumencie XHTML znajduje się fragment kodu, w którym występuje błąd walidacyjny. Co jest przyczyną tego błędu?

Ilustracja do pytania
A. Znacznik <b> nie może być umieszczany wewnątrz znacznika <p>
B. Znacznik <br> musi być zamknięty
C. Nie ma nagłówka szóstego poziomu
D. Znaczniki powinny być pisane dużymi literami
W języku XHTML, wszystkie znaczniki muszą być dobrze sformułowane, co oznacza, że każdy element pusty, taki jak znacznik linijki <br>, musi być zamknięty za pomocą końcowego ukośnika, zapisanego jako <br />. XHTML to język oparty na XML, gdzie składnia jest bardziej rygorystyczna w porównaniu do HTML. Dzięki temu poprawne zamykanie znaczników jest niezbędne dla poprawnej walidacji dokumentu. Przykładowo, jeśli w dokumencie XHTML chcemy wstawić nową linię, powinniśmy zapisać <br /> zamiast <br>. Inne puste elementy, takie jak <img> czy <input>, również muszą być zamykane w ten sposób. Zastosowanie tego standardu zapewnia zgodność z przeglądarkami i przyszłą kompatybilność z nowymi technologiami. W praktyce, poprawne stosowanie składni zapewnia, że dokument będzie poprawnie interpretowany zarówno przez przeglądarki, jak i przez narzędzia do przetwarzania danych XML. Zrozumienie i stosowanie się do tych zasad jest kluczowe dla każdego, kto pracuje z technologiami sieciowymi, ponieważ zapewnia to, że dokumenty będą poprawnie wyświetlane oraz łatwe do przetwarzania.

Pytanie 19

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

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

Pytanie 20

Podczas przygotowywania grafiki do umieszczenia na stronie internetowej konieczne jest wycięcie tylko pewnego fragmentu. Jak nazywa się ta czynność?

A. zmiana rozmiaru.
B. łączanie warstw.
C. odwracanie obrazu.
D. kadrowanie.
Kadrowanie to taka technika, która pomaga nam lepiej uchwycić to, co najważniejsze w obrazie. Wycinając niektóre fragmenty grafiki, skupiamy uwagę na tym, co naprawdę się liczy. Dobrze jest to mieć na uwadze, zwłaszcza przy zdjęciach portretowych, gdzie chcemy, żeby wzrok przyciągała twarz modela, a nie jakieś niepotrzebne tło. Kiedy kadrujemy, warto pamiętać o takich zasadach jak zasada trzecich, bo to pomaga zrobić fajną kompozycję. Można to robić w wielu programach graficznych, jak na przykład Adobe Photoshop czy GIMP. Tak w ogóle, dobrze jest dbać o proporcje i rozdzielczość, żeby obraz nie stracił na jakości. Gadżetem kadrowania można się też posługiwać w projektowaniu stron www, bo odpowiednie wybory graficzne poprawiają estetykę i funkcjonalność strony.

Pytanie 21

Którą czynność gwarantującą poprawne wykonanie przedstawionego kodu Java Script, należy wykonać przed pętlą?

var text;
for ( var i = 0; i < tab.length; i++ ) {
  text += tab[i] + "<br>";
}
A. Zainicjować zmienną text.
B. Zadeklarować zmienną i.
C. Sprawdzić czy text j est typu znakowego.
D. Sprawdzić rozmiar tabeli tab.
Dobrze! Prawidłową odpowiedzią jest 'Zainicjować zmienną text'. W języku JavaScript, przed rozpoczęciem pętli, istotne jest zainicjowanie zmiennej, która będzie używana do akumulacji wyników. Zmienna 'text' w tym przypadku spełnia tę rolę. Jej prawidłowe zainicjowanie, czyli przypisanie jej początkowej wartości, zazwyczaj pustego ciągu znaków ('text = "";'), jest kluczowe dla poprawnej pracy kodu. Pozwala to na uniknięcie błędów związanych z niezdefiniowaną zmienną. Jest to standardowa procedura stosowana w wielu językach programowania, nie tylko w JavaScript. Zrozumienie i zastosowanie tej praktyki pomaga w pisaniu czystego i efektywnego kodu.

Pytanie 22

Jaki model opisu kolorów charakteryzuje się parametrami takimi jak odcień, nasycenie oraz jasność?

A. CMYK
B. HSV
C. RGB
D. CMY
Modele RGB, CMY i CMYK to różne podejścia do opisu kolorów, które nie odpowiadają na pytanie o odcień, nasycenie i jasność. Model RGB (Red, Green, Blue) jest adtywnym modelem kolorów, który tworzy kolory poprzez łączenie trzech podstawowych kolorów światła: czerwonego, zielonego i niebieskiego. W praktyce wykorzystuje się go głównie w technologii wyświetlania, jak monitory czy telewizory. Kolory w modelu RGB są definiowane w skali od 0 do 255 dla każdego z kolorów, co nie pozwala na łatwe określenie odcienia, nasycenia czy jasności. Z kolei model CMY (Cyan, Magenta, Yellow) oraz jego rozszerzenie CMYK (Cyan, Magenta, Yellow, Black) są modelami subtraktywnymi, które opierają się na mieszaniu kolorów pigmentów w druku. W modelu CMYK zastosowanie czarnego atramentu jest niezbędne dla uzyskania głębszych odcieni i większej gamy kolorów, a jego struktura opiera się na eliminacji światła, co również nie przekłada się na parametry odcienia, nasycenia i jasności. W efekcie, modele te są bardziej skomplikowane w kontekście zarządzania kolorami, ponieważ nie jednoznacznie odpowiadają na pytanie dotyczące percepcji kolorów, a zamiast tego koncentrują się na technologiach wyświetlania i druku.

Pytanie 23

Analizując poniższy kod HTML, jak w przeglądarce zachowa się blok B względem bloku A?

<div>A</div>
<div style="margin-top: 20px">B</div>
A. blok A zostanie przesunięty w lewo o 20 px
B. zostanie ustawiony dolny margines bloku B
C. bloki A i B będą nachodzić na siebie
D. blok B będzie oddalony od bloku A o 20 px
Drugi <div> (blok B) ma w atrybucie style ustawione margin-top: 20px - to margines zewnętrzny po GÓRNEJ stronie. Ponieważ blok B leży pod blokiem A, ten 20-pikselowy margines tworzy odstęp nad B, odsuwając go w dół od A. Dlatego blok B będzie oddalony od bloku A o 20 px.

Pytanie 24

Określ właściwą sekwencję stylów CSS, biorąc pod uwagę ich priorytet w formatowaniu elementów strony WWW?

A. Rozciąganie stylu, Styl zewnętrzny, Styl lokalny
B. Styl wewnętrzny, Styl zewnętrzny, Rozciąganie stylu
C. Styl lokalny, Styl wewnętrzny, Styl zewnętrzny
D. Styl zewnętrzny, Wydzielone bloki, Styl lokalny
Wskazana odpowiedź, czyli Lokalny, Wewnętrzny, Zewnętrzny, jest zgodna z zasadami kaskadowego stylu arkuszy CSS. Istotą kaskadowości jest to, że style są stosowane według określonej hierarchii. Style lokalne (wbudowane) mają najwyższy priorytet, co oznacza, że jeśli na danym elemencie zastosowano styl lokalny, to zdominuje on wszelkie inne style. Przykład użycia stylu lokalnego to nadanie koloru tła dla konkretnego przycisku poprzez atrybut 'style': <button style='background-color: red;'>Przycisk</button>. W przypadku, gdy nie ma stylu lokalnego, przetwarzany jest styl wewnętrzny, który można zdefiniować w sekcji <style> w nagłówku dokumentu HTML. Na przykład: <style>p { color: blue; }</style> sprawi, że wszystkie akapity będą miały niebieski kolor. Dopiero na końcu brane są pod uwagę style zewnętrzne, które są definiowane w osobnych plikach CSS, na przykład: <link rel='stylesheet' href='style.css'>. Dlatego znajomość tej hierarchii jest kluczowa dla skutecznego tworzenia stylów, co przekłada się na lepsze zarządzanie wyglądem strony oraz unikanie konfliktów stylów. Warto również pamiętać o zasadzie „specyficzności”, która dodatkowo komplikuje temat, ponieważ style mogą mieć różny priorytet w zależności od ich specyfikacji.

Pytanie 25

Do czego służy atrybut alt w znaczniku <img>?

A. do podania ścieżki i nazwy pliku źródłowego
B. do tekstu wyświetlanego, gdy obraz nie może zostać załadowany
C. do podpisu wyświetlanego pod obrazem
D. do ustawienia rozmiaru, ramki i wyrównania obrazu
Atrybut alt w <img> zawiera tekst alternatywny opisujący obraz. Wyświetla się, gdy obrazu nie da się załadować, a przede wszystkim odczytują go czytniki ekranu osobom niewidomym - to podstawa dostępności i wartość dla SEO. Dlatego alt służy do tekstu pokazywanego, gdy obrazu nie można załadować.

Pytanie 26

W JavaScript zdefiniowano obiekt. W jaki sposób można uzyskać dostęp do właściwości nazwisko?

var osoba = {imie: "Anna", nazwisko: "Kowalska", rok_urodzenia: 1985};
A. osoba[1]
B. osoba[2]
C. osoba::nazwisko
D. osoba.nazwisko
W przypadku niepoprawnych odpowiedzi osoba[2], osoba::nazwisko i osoba[1] odniesienie do właściwości obiektu w JavaScript zostało błędnie przedstawione. Metoda osoba[2] oraz osoba[1] sugeruje użycie notacji tablicowej, która jest stosowana do odwoływania się do elementów tablicy przez ich indeks. Jednak obiekt w JavaScript nie jest tablicą, a zestawem par klucz-wartość, dlatego stosowanie indeksów w tym kontekście nie ma zastosowania. Indeksowanie za pomocą nawiasów kwadratowych jest właściwe w przypadku tablic, natomiast obiekty wymagają dostępu przez klucze opisane jako stringi. Próba użycia osoba::nazwisko jest niepoprawna, ponieważ podwójny dwukropek nie jest częścią syntaksu JavaScript pozwalającego na dostęp do właściwości obiektu. Tego typu notacja może pojawiać się w innych językach programowania jak C++ jako operator zakresu, jednak w JavaScript jest pozbawiona sensu. Błędny wybór w tym przypadku wynika z niezrozumienia różnicy między różnymi strukturami danych oraz ich specyficznej składni w obrębie różnych języków programowania. Bardzo istotne jest zapamiętanie, że w JavaScript do właściwości obiektu najczęściej odwołuje się za pomocą notacji kropkowej, co jest nie tylko standardem, ale również poprawia czytelność i zrozumiałość kodu. Świadomość różnicy między tablicami a obiektami oraz umiejętność wyboru odpowiedniej składni są kluczowe w pisaniu efektywnego i poprawnego kodu w JavaScript. Poprawne zrozumienie tych różnic i składni pozwala unikać błędów i pisania kodu, który może być trudny do debugowania i zrównoważenia w przyszłości.

Pytanie 27

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

A. nav { float: left; } aside { float: left; }
B. nav { float: right; } section { float: right; }
C. aside {float: left; }
D. nav { float: right; }
W tym zadaniu kluczowe jest zrozumienie, jak naprawdę działa float, a nie tylko samo skojarzenie, że „left to lewo, right to prawo”. Wiele osób myśli, że wystarczy ustawić jeden element na lewo, drugi na prawo i wszystko magicznie się poukłada. W praktyce przeglądarka trzyma się bardzo konkretnych reguł: najpierw liczy kolejność elementów w HTML, potem dopiero stosuje float i układa je możliwie jak najwyżej i jak najbliżej odpowiedniej krawędzi.

Jeśli nada się float tylko dla aside albo tylko dla nav, to zmienia się ich pozycja, ale układ trzech bloków nie spełni warunku z zadania: aside i nav nie zamienią się miejscami z pozostawieniem section w środku. Przykładowo, samo float: left na aside niczego nie „zamieni”, bo element i tak pojawia się jako pierwszy w kodzie, więc będzie u góry, tylko że „przyklejony” do lewej. Z kolei ustawienie nav na prawą stronę bez odpowiedniego floatowania section prowadzi do sytuacji, gdzie section nadal zachowuje się jak normalny blok, zwykle ląduje pod elementami pływającymi albo obok nich w sposób mało przewidywalny dla początkującego.

Częsty błąd myślowy polega też na tym, że ktoś próbuje wszystkim elementom dać float: left, licząc na to, że przeglądarka „ułoży je po swojemu”. Wtedy jednak wszystkie te bloki ustawiają się w jednym kierunku, w kolejności z HTML, więc nie ma mowy o świadomym „zamienianiu miejsc”. Brak zrozumienia, że float wyjmuje element z normalnego przepływu i wpływa na to, jak kolejne elementy zawijają się wokół niego, prowadzi właśnie do takich błędnych odpowiedzi. Z mojego doświadczenia lepiej jest najpierw narysować sobie prosty schemat: w jakiej kolejności idą znaczniki i które z nich mają pływać w prawo, a które zostać w naturalnym układzie. Dopiero wtedy dobiera się konkretne deklaracje CSS. Takie myślenie przydaje się nie tylko przy float, ale też przy nauce flexboxa czy grida, gdzie kolejność w DOM i własności układu też grają ogromną rolę.

Pytanie 28

Który znacznik lub zestaw znaczników nie jest używany do określenia struktury dokumentu HTML?

A. <header>, <footer>
B. <div>
C. <i>, <b>, <u>
D. <section>
Te znaczniki, czyli <i>, <b> i <u>, nie są jakby do tworzenia struktury dokumentu HTML, ale bardziej do formatowania tekstu. Zgodnie z nowymi standardami HTML5, są to elementy semantyczne, które wpływają na to, jak coś wygląda, a nie na to, jak jest zorganizowane. Znacznik <i> używamy, jak chcemy coś napisać kursywą, <b>, żeby coś podkreślić, a <u>, żeby coś podkreślić. Często korzysta się z nich w stylach CSS, ale nie nadają one hierarchii ani kontekstu dokumentu. Jak chcesz wyróżnić jakiś tekst w kontekście kodu czy tytułu rozdziału, lepiej skorzystać z bardziej semantycznych znaczników, jak <em> dla podkreślenia znaczenia albo <strong> dla podkreślenia wagi. W czasach, kiedy dostępność i SEO są coraz ważniejsze, używanie semantycznych elementów to klucz do tworzenia lepszych i bardziej przejrzystych stron.

Pytanie 29

Funkcja PHP var_dump() prezentuje dane na temat zmiennej, w tym jej typ oraz wartość. Jakim wynikiem zakończy się poniższy fragment kodu?

$x = 59.85; var_dump($x);
A. string(5) "59.85"
B. float(59.85)
C. array(2) { [0]=> int(59) [1]=> int(85) }
D. int(59)
Odpowiedź "float(59.85)" jest poprawna, ponieważ funkcja var_dump() w PHP wyświetla szczegółowe informacje o typie i wartości zmiennej. W tym przypadku zmienna $x przypisuje wartość 59.85, która jest liczbą zmiennoprzecinkową (float). Zgodnie z dokumentacją PHP, typ float odnosi się do wartości liczbowych zawierających część dziesiętną, co jest dokładnie tym, co przedstawia nasza zmienna. Przykładowo, w wielu zastosowaniach, takich jak obliczenia finansowe, jest kluczowe prawidłowe rozróżnienie między liczbami całkowitymi a zmiennoprzecinkowymi, ponieważ mogą one znacząco wpływać na dokładność wyników. Przestrzeganie dobrych praktyk programistycznych w PHP obejmuje umiejętne korzystanie z var_dump() w celu diagnozowania typów danych i wartości w czasie rzeczywistym. Umożliwia to programistom lepsze zrozumienie, jakie dane są przetwarzane w aplikacji, co jest szczególnie przydatne podczas debugowania lub rozwijania skomplikowanych projektów.

Pytanie 30

Co musi zawierać kolumna pełniąca funkcję klucza głównego w tabeli?

A. ciągłą numerację
B. wartości unikalne
C. wyłącznie liczby
D. inny typ niż pozostałe kolumny
Klucz główny musi jednoznacznie identyfikować każdy wiersz, więc jego wartości muszą być UNIKALNE (i niepuste). Dzięki temu da się bez pomyłki wskazać konkretny rekord. Dlatego kolumna klucza głównego musi zawierać wartości unikalne.

Pytanie 31

Którego słowa kluczowego SQL należy użyć, aby w wyniku zapytania wyeliminować powtarzające się wartości?

A.
ORDER BY
B.
DISTINCT
C.
GROUP BY
D.
LIKE
Pozostałe słowa robią co innego. LIKE dopasowuje wzorzec tekstu, ORDER BY sortuje wyniki, a GROUP BY grupuje wiersze do agregacji. Powtórzenia w wyniku usuwa DISTINCT.

Pytanie 32

Jaki typ relacji powstaje, gdy połączymy dwie tabele przez ich KLUCZE GŁÓWNE?

A. jeden do wielu
B. wiele do wielu
C. wiele do jednego
D. jeden do jednego
Gdy dwie tabele łączymy przez ich KLUCZE GŁÓWNE (oba unikalne), każdemu rekordowi jednej odpowiada dokładnie jeden rekord drugiej - to relacja JEDEN DO JEDNEGO (1:1). Stosuje się ją np. do rozdzielenia rzadko używanych pól. Zapamiętaj: dwa klucze główne naprzeciw siebie = 1:1.

Pytanie 33

Co według zasad ACID oznacza wymóg TRWAŁOŚCI (durability) transakcji?

A. dane zatwierdzone przez transakcję pozostają dostępne mimo późniejszych zdarzeń
B. przy naruszeniu spójności transakcja usuwa tabele z kluczami obcymi
C. transakcję można podzielić na dwa niezależne etapy
D. w trakcie transakcji dane mogą zmieniać inne transakcje
Trwałość (durability) z reguł ACID gwarantuje, że dane raz ZATWIERDZONE (commit) przez transakcję pozostaną w bazie na stałe - nawet jeśli zaraz potem nastąpi awaria zasilania czy restart serwera. System osiąga to, zapisując zmiany w sposób przetrwający awarię, np. w dzienniku transakcji. Dlatego trwałość oznacza, że zatwierdzone dane pozostają dostępne mimo późniejszych awarii.

Pytanie 34

Jak nazywa się powiązanie między dwoma zbiorami encji na diagramie ER?

A. atrybutem
B. związkiem
C. krotką
D. dziedziną
Pozostałe pojęcia dotyczą czego innego. Krotka to pojedynczy wiersz (egzemplarz encji). Dziedzina to zbiór dopuszczalnych wartości atrybutu. Atrybut to cecha encji (kolumna). Powiązanie między zbiorami encji to związek.

Pytanie 35

Aby zaprojektować kształt logo dla strony WWW sposobem przedstawionym na obrazie, należy zastosować funkcję

Ilustracja do pytania
A. wykluczenia.
B. sumy.
C. różnicy.
D. części wspólnej.
Niestety, wybrana odpowiedź jest niepoprawna. Zamiast 'różnicy', 'sumy' czy 'części wspólnej', poprawnym rozwiązaniem jest 'wykluczenie'. Na obrazie mamy do czynienia z dwoma kształtami, z których fioletowy jest nałożony na czerwony. Wynik to kształt pokazujący tylko te części czerwonego kształtu, które nie pokrywają się z fioletowym. Właśnie tak działa operacja wykluczenia w grafice komputerowej - wynikowa forma zawiera tylko te elementy jednego obiektu, które nie nakładają się z drugim. Operacje różnicy, sumy czy części wspólnej miałyby inne efekty. 'Różnica' usunęłaby część czerwonego kształtu pokrywającą się z fioletowym, 'suma' utworzyłaby kształt zawierający całość obu kształtów, a 'część wspólna' wytworzyłaby kształt pokrywający się z oboma kształtami. Odnoszenie się do niewłaściwych operacji może prowadzić do znacznych błędów w projektowaniu graficznym.

Pytanie 36

Dokument HTML określa akapit oraz grafikę. Aby grafika była umieszczona przez przeglądarkę w tej samej linii co akapit po jego lewej stronie, w stylu CSS grafiki należy ustawić właściwość

A. style:left;
B. align:left;
C. alt:left;
D. float:left;
Właściwość CSS 'float:left;' jest kluczowa dla umieszczania elementów w linii obok siebie. Umożliwia ona 'wypływanie' elementu, jakim jest obrazek, w lewo, co skutkuje tym, że tekst w akapicie będzie go otaczał od prawej strony. Jest to szczególnie przydatne w projektowaniu responsywnych układów stron internetowych, gdzie zachowanie porządku w rozmieszczeniu elementów jest istotne zarówno na desktopach, jak i urządzeniach mobilnych. Przykładowo, jeśli mamy akapit z opisem produktu, który chcemy wizualnie wzbogacić odpowiednim zdjęciem z jego lewej strony, zastosowanie 'float:left;' w stylach CSS sprawi, że tekst będzie płynnie dostosowywał się do rozmiaru obrazka. Zgodnie z dobrymi praktykami, warto również pamiętać o zastosowaniu 'clear:both;' w przypadku elementów, które mają pojawić się poniżej zaganianych elementów, aby uniknąć problemów z układem. Dodatkowo, warto zadbać o odpowiednie wymiary obrazka oraz użycie atrybutu 'alt' w tagu <img>, aby poprawić dostępność strony oraz jej SEO.

Pytanie 37

Aby utworzyć różnicową kopię zapasową bazy danych na serwerze MS SQL, w poleceniu BACKUP należy użyć klauzuli:

A.
FULL
B.
DIFFERENTIAL
C.
RESTORE
D.
WITH FORMAT
Pozostałe klauzule dotyczą czego innego. WITH FORMAT inicjuje (formatuje) zbiór nośnika kopii, nadpisując jego zawartość - to opcja zapisu, nie rodzaj kopii. FULL odnosi się do kopii pełnej, która zapisuje całą bazę, czyli przeciwieństwo różnicowej. RESTORE w ogóle nie tworzy kopii - służy do odtworzenia bazy z już istniejącej. Kopię różnicową w MS SQL daje klauzula DIFFERENTIAL, dlatego to ona jest poprawna.

Pytanie 38

Jakie dane zostaną wyświetlone po wykonaniu poniższych poleceń? bool gotowe=true; cout<<gotowe;

A. 0
B. nie
C. tak
D. 1
W analizie odpowiedzi, które nie są poprawne, warto zwrócić uwagę na błędne rozumienie działania operatora cout oraz konwencji reprezentowania wartości logicznych w C++. W przypadku odpowiedzi, które sugerują, że wynik to "0" lub "tak", istnieje nieporozumienie dotyczące reprezentacji wartości boolean. W C++, wartość true nie jest wypisywana jako 'tak', lecz jako '1', co jest zgodne z konwencją używaną w wielu językach programowania, w tym C, C# i Java. Osoby, które odpowiedziały '0', mylnie sądzą, że 'true' może być reprezentowane w sposób, który nie jest zgodny z przyjętymi standardami. Również odpowiedź 'nie' wskazuje na podstawowe nieporozumienie dotyczące logicznych wartości zwrotnych w kontekście programu. Wartości logiczne w C++ są ściśle powiązane z typami danych, a ich interpretacja może prowadzić do błędnych konkluzji, jeśli nie jest zrozumiana. W codziennym programowaniu, kluczowe jest, aby programiści mieli świadomość, jak wartości boolean przekładają się na operacje arytmetyczne i logiczne, co pozwala na tworzenie bardziej efektywnego oraz bezpiecznego kodu. Niezrozumienie tych podstawowych zasad prowadzi do typowych błędów w logice programowania, co z kolei może skutkować nieefektywnym działaniem aplikacji oraz trudnościami w późniejszym debugowaniu kodu.

Pytanie 39

Dla przedstawionego fragmentu kodu

<img src="kwiat.jpg alt="kwiat">
walidator HTML zwróci błąd, ponieważ
A. użyto niewłaściwego znacznika do wyświetlenia grafiki
B. nie odnaleziono pliku kwiat.jpg
C. nie zamknięto cudzysłowu
D. użyto nieznanego atrybutu alt
W kodzie HTML zauważyłem mały błąd - brakuje ci domknięcia cudzysłowu dla atrybutu src. Powinno to wyglądać tak: <img src="kwiat.jpg" alt="kwiat">. No, cudzysłów jest ważny, bo bez niego przeglądarka może mieć problem z odczytaniem, gdzie kończy się wartość atrybutu. To może prowadzić do różnych, nieprzewidzianych efektów przy wyświetlaniu strony. Zasady W3C mówią, że każdy atrybut powinien być poprawnie sformatowany, żeby działało to na różnych przeglądarkach i urządzeniach. Pamiętaj też o atrybucie alt - jest kluczowy dla dostępności. Właściwe użycie cudzysłowów i dbałość o format kodu też wpływają na jego czytelność, a my przecież chcemy pisać jak najlepiej.

Pytanie 40

Który zapis znacznika hr jest poprawny zgodnie z walidacją HTML5?

A.
</hr?>
B.
</ hr />
C.
</ hr>
D.
<hr>
<hr> to element PUSTY (void), więc poprawny zapis to po prostu <hr> - bez znacznika zamykającego i bez ukośnika (w HTML5 <hr/> jest zbędny). Dlatego poprawny jest <hr>.