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: 12 maja 2026 11:46
  • Data zakończenia: 12 maja 2026 12:06

Egzamin zdany!

Wynik: 20/40 punktów (50,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

Kod

$liczba2 = &$liczba1;
wskazuje, że zmienna $liczba2 jest
A. iloczynem logicznym ze zmienną $liczba1
B. negacją logiczną zmiennej $liczba1
C. wskaźnikiem do $liczba1
D. referencją do $liczba1
Wskaźnik to pojęcie obecne w językach takich jak C/C++, ale w PHP wskaźniki nie są bezpośrednio używane. W PHP mówimy o referencjach, które działają na wyższym poziomie abstrakcji, pozwalając na współdzielenie wartości między zmiennymi bez użycia wskaźników. Twierdzenie, że zmienna \$liczba2 jest wskaźnikiem do \$liczba1, jest błędne, ponieważ PHP nie obsługuje wskaźników w klasycznym rozumieniu. Negacja logiczna oznaczałaby wykorzystanie operatora negacji (!) i zmienienie wartości logicznej zmiennej. W kontekście kodu PHP negacją byłoby użycie wyrażenia typu \"\$liczba2 = !\$liczba1\", co oznacza konwersję wartości na jej przeciwność logiczną. Wreszcie, iloczyn logiczny wymaga użycia operatora koniunkcji (&&) dla dwóch wartości logicznych i nie odnosi się do referencji. Iloczyn logiczny zwraca prawdę tylko wtedy, gdy oba operand są prawdziwe, co w opisie kodu nie ma zastosowania. Każda z tych błędnych interpretacji wynika z mylnego zrozumienia podstawowych mechanizmów języka PHP, które koncentrują się na referencjach jako sposobie efektywnego zarządzania pamięcią i współdzielenia danych.

Pytanie 2

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

A. określenie podłańcucha znaków z tekstu wejściowego
B. łączenie tekstu do wyświetlenia
C. przycinanie wyświetlanego tekstu
D. usuniecie określonego tekstu
Funkcja CONCAT w języku SQL jest używana do łączenia dwóch lub więcej ciągów tekstowych w jeden. Jest to bardzo przydatne narzędzie w zarządzaniu danymi, gdyż pozwala na tworzenie bardziej złożonych i informacyjnych komunikatów tekstowych z pojedynczych elementów. Funkcja ta przyjmuje jako argumenty dowolną liczbę ciągów znakowych, a jej wynik to jeden skonsolidowany ciąg. Na przykład, jeżeli mamy dwie kolumny, 'imię' i 'nazwisko', używając CONCAT możemy stworzyć pełne imię i nazwisko: SELECT CONCAT(imię, ' ', nazwisko) AS pełne_imie FROM użytkownicy; W wyniku tego zapytania otrzymamy pełne imiona i nazwiska użytkowników. Funkcja ta jest zgodna z normami ANSI SQL i jest wspierana przez większość systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL, czy Microsoft SQL Server, co sprawia, że jest bardzo uniwersalnym narzędziem w świecie baz danych.

Pytanie 3

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

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

Pytanie 4

Który język programowania powinien być wykorzystany do stworzenia skryptu działającego po stronie klienta w przeglądarce internetowej?

A. PHP
B. JavaScript
C. Python
D. Perl
JavaScript to język programowania, który został stworzony z myślą o dynamicznym tworzeniu treści i interakcji w przeglądarkach internetowych. Umożliwia on programistom wykonywanie skryptów bezpośrednio na stronie internetowej, co pozwala na tworzenie responsywnych interfejsów użytkownika oraz interakcji z elementami HTML i CSS. JavaScript jest językiem skryptowym, który obsługuje wiele nowoczesnych technologii webowych, takich jak AJAX, co umożliwia asynchroniczne ładowanie danych bez przeładowania całej strony. Dzięki wykorzystaniu JavaScriptu, programiści mogą implementować różnorodne efekty wizualne, animacje oraz walidację formularzy w czasie rzeczywistym. Język ten jest wspierany przez wszystkie popularne przeglądarki internetowe i stał się standardem de facto dla skryptów po stronie klienta. Przykładowo, większość aplikacji webowych, takich jak Gmail czy Facebook, korzysta z JavaScriptu do poprawy doświadczeń użytkowników. Warto również zaznaczyć, że JavaScript jest kluczowym elementem ekosystemu programistycznego, łączącym inne technologie, takie jak HTML i CSS, co czyni go niezwykle wszechstronnym narzędziem w codziennej pracy programistów.

Pytanie 5

Wskaż, na czym polega błąd w kodzie napisanym w języku C++.

char str1[30] = 'Ala ma kota'; printf("%s", str1);
A. Do funkcji printf przekazano zbyt mało argumentów.
B. Napis powinien być umieszczony w cudzysłowach.
C. W funkcji printf nie można używać formatowania %s.
D. Napis powinien mieć dokładnie 30 znaków.
Podawanie błędnych informacji na temat inicjalizacji łańcucha znaków w C++ może prowadzić do poważnych nieporozumień. Wskazanie, że napis powinien mieć dokładnie 30 znaków, nie jest zasadniczo poprawne, ponieważ tablice w C++ mogą mieć zmienną długość. Ważne jest, aby łańcuch znaków był odpowiednio długi, jednak nie istnieje wymóg, aby dokładnie wypełniał całą tablicę. Mówiąc o długości, istotniejsze jest, aby nie przekraczać rozmiaru tablicy, aby uniknąć błędów pamięci. Poza tym, stwierdzenie, że do funkcji printf przekazano zbyt mało argumentów, jest mylące; w tym przypadku argumenty są poprawne, ponieważ przekazujemy jedynie jeden wskaźnik do łańcucha, co jest zgodne z formatem funkcji printf. Dodatkowo, twierdzenie, że w printf nie można stosować formatowania %s, jest całkowicie błędne. Format %s jest standardowym sposobem na wyświetlanie łańcuchów znaków w C++, co jest zgodne z dokumentacją i najlepszymi praktykami w programowaniu. Stosowanie tego formatu jest kluczowe w przypadku pracy z tekstem, a zrozumienie tej zasady jest fundamentem w nauce języka C++. Warto zatem pamiętać o właściwej inicjalizacji łańcuchów oraz o tym, jak korzystać z funkcji wejścia/wyjścia, aby unikać typowych błędów w kodzie.

Pytanie 6

W MSSQL Server rola dbcreator, która jest predefiniowana, umożliwia użytkownikowi

A. tworzenie, modyfikowanie, usuwanie i odzyskiwanie bazy danych
B. zarządzanie plikami na dysku
C. zarządzanie bezpieczeństwem systemu
D. wykonywanie każdej operacji na serwerze i posiadanie prawa własności każdej bazy
Zarządzanie plikami na dysku nie jest funkcjonalnością przypisaną roli dbcreator w SQL Server. Użytkownicy z tą rolą nie mają bezpośrednich uprawnień do zarządzania systemem plików na serwerze, co oznacza, że nie mogą modyfikować, przenosić ani usuwać plików bazy danych bez użycia odpowiednich zabezpieczeń. Rola dbcreator koncentruje się wyłącznie na operacjach związanych z bazami danych. Ponadto, zarządzanie bezpieczeństwem systemu również wykracza poza kompetencje roli dbcreator. Użytkownicy, którzy chcą zarządzać dostępem i bezpieczeństwem baz danych, powinni mieć przypisane role takie jak securityadmin, które pozwalają na kontrolowanie uprawnień i ról użytkowników. W kontekście prawa do wykonywania każdej operacji na serwerze i posiadania prawa własności każdej bazy danych, taka funkcjonalność przynależy do roli sysadmin, która ma pełne uprawnienia do wszystkich zasobów w SQL Server. Rola dbcreator jest ograniczona do operacji związanych z bazami danych, co czyni ją mniej potężną w porównaniu do sysadmin, ale bardziej bezpieczną w kontekście zarządzania uprawnieniami w środowisku produkcyjnym.

Pytanie 7

Jaką funkcję SQL można uznać za nieprzyjmującą argumentów?

A. len
B. year
C. upper
D. now
Odpowiedzi, które wskazują na funkcje 'year', 'len' oraz 'upper', opierają się na błędnych założeniach dotyczących sposobu działania tych funkcji. Funkcja 'year' jest wykorzystywana do wyodrębnienia części roku z daty i wymaga podania argumentu, który jest datą. Na przykład, użycie 'year(data)' zwróci numer roku z podanej daty, co stawia tę funkcję w kontekście pobierania argumentów. Z kolei 'len' jest funkcją służącą do określenia długości łańcucha znaków, co również oznacza, że wymaga argumentu w postaci tekstu: 'len('tekst')' zwróci liczbę znaków w podanym łańcuchu. Funkcja 'upper' z kolei przekształca wszystkie znaki w podanym łańcuchu na wielkie litery, także wymaga argumentu: 'upper('tekst')'. Te funkcje są niezwykle użyteczne w codziennej pracy z danymi, ale ich zastosowanie powinno być świadome i oparte na znajomości ich specyfiki. W przypadku takich funkcji, typowym błędem myślowym jest przekonanie, że można je stosować bez znajomości wymaganych argumentów. W praktyce oznacza to, że aby korzystać z możliwości funkcji SQL, niezbędne jest zrozumienie ich struktury i działania, co jest kluczowe dla efektywnego pisania zapytań oraz przetwarzania danych w bazach danych.

Pytanie 8

Wskaż pętlę w języku JavaScript, która wypisze sześć kolejnych liczb parzystych.

A. for(i=2;i<12;i++) {i++; document.write(i);}
B. for(i=2;i<=12;i++) {i=i+2; document.write(i);}
C. for(i=2;i<=12;i+=2) {document.write(i);}
D. for(i=2;i<12;i+=2) {document.write(i);}
Prawidłowa odpowiedź to pętla for(i=2;i<=12;i+=2) {document.write(i);}, ponieważ jest ona skonstruowana w sposób, który pozwala na wyświetlenie sześciu kolejnych liczb parzystych, zaczynając od 2 do 12 włącznie. Pętla for składa się z trzech głównych części: inicjalizacji (i=2), warunku (i<=12) oraz inkrementacji (i+=2). Inicjalizacja ustawia zmienną i na 2, co jest pierwszą liczbą parzystą. Warunek i<=12 zapewnia, że pętla będzie kontynuowana do momentu, gdy i osiągnie wartość większą niż 12, co oznacza, że ostatnią liczbą, która zostanie wyświetlona, będzie 12. Inkrementacja i+=2 powoduje, że przy każdej iteracji wartość i zwiększa się o 2, co pozwala na przechodzenie pomiędzy kolejnymi liczbami parzystymi (2, 4, 6, 8, 10, 12). Taki sposób konstrukcji pętli jest zgodny z zasadami programowania w JavaScript oraz pozwala na efektywne i kontrolowane wyświetlanie danych na stronie. Istotne jest również, że wykorzystanie metody document.write() jest jedną z prostszych form wyświetlania danych w JavaScript, aczkolwiek w praktyce jest zalecane korzystanie z bardziej nowoczesnych metod, takich jak manipulacja DOM, aby uniknąć nadpisywania całej zawartości strony.

Pytanie 9

Który z przedstawionych obrazów został przetworzony przy użyciu podanego stylu CSS?

Ilustracja do pytania
A. Rys. B
B. Rys. A
C. Rys. D
D. Rys. C
Wybór Rys. A jako poprawnej odpowiedzi jest uzasadniony zastosowaniem właściwości CSS, które są użyte w stylu. Styl CSS określa padding na 5 pikseli, co oznacza, że wokół obrazu powinna być przestrzeń wynosząca dokładnie 5 pikseli. Właściwość border ustawia obramowanie na 1 piksel, w kolorze szarym i o stylu solid, co oznacza ciągłą linię otaczającą obraz. Z kolei border-radius o wartości 10 pikseli zaokrągla rogi obramowania, co nadaje całości bardziej zaokrąglony kształt. Wszystkie te cechy są widoczne na obrazie Rys. A. W praktyce stosowanie właściwości takich jak border-radius jest często używane w projektach webowych, aby uzyskać bardziej estetyczne i nowoczesne efekty wizualne. Zaokrąglone krawędzie są estetycznie przyjemniejsze dla użytkownika i mogą poprawić czytelność oraz odbiór wizualny strony. Znajomość tych właściwości CSS jest niezbędna dla każdego front-end developera, który dąży do tworzenia nowoczesnych i funkcjonalnych interfejsów użytkownika. Praktyczne zastosowanie tego stylu może być widoczne w projektach stron internetowych, aplikacjach sieciowych oraz w tworzeniu elementów UI, które zachowują spójność wizualną z resztą projektu.

Pytanie 10

Kompresja bezstratna pliku graficznego zapewnia

A. oryginalną jakość grafiki
B. wyższą jakość
C. rozmiar większy niż w oryginale
D. mniejszą ilość warstw
Odpowiedzi sugerujące, że kompresja bezstratna przyczynia się do lepszej jakości grafiki oraz mniejszej liczby warstw są mylące. Kompresja bezstratna nie poprawia jakości obrazu, a jedynie utrzymuje ją na poziomie oryginalnym, co oznacza, że nie wprowadza żadnych zmian, które mogłyby podnieść jakość wizualną. W przypadku mniejszej liczby warstw, kompresja bezstratna nie zmienia struktury pliku w sensie liczby warstw, lecz koncentruje się na efektywnym przechowywaniu danych bez ich utraty. Co więcej, odpowiedź wskazująca na rozmiar większy niż grafika oryginalna jest całkowicie nieprawidłowa, ponieważ celem kompresji bezstratnej jest właśnie zmniejszenie rozmiaru pliku, a nie jego zwiększenie. Algorytmy kompresji bezstratnej są zaprojektowane tak, aby zminimalizować ilość zajmowanej przestrzeni dyskowej przy jednoczesnym zachowaniu pełnej jakości grafiki. Dlatego wybór odpowiedzi dotyczących mniejszej liczby warstw, lepszej jakości czy zwiększonego rozmiaru jest błędny i nieodpowiedni w kontekście działania kompresji bezstratnej w plikach graficznych.

Pytanie 11

Na przedstawionej grafice widać fragment bazy danych. Jakie kwerendę należy zastosować, aby uzyskać nazwy produktów zakupionych przez klienta o id = 1?

Ilustracja do pytania
A. SELECT nazwa FROM produkty JOIN transakcje_produkty JOIN transakcje WHERE nr_klienta = 1
B. SELECT nazwa FROM produkty JOIN transakcje ON nr_produktu = nr_klienta WHERE nr_klienta = 1
C. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) WHERE nr_klienta = 1
D. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) JOIN transakcje USING(nr_transakcji) WHERE nr_klienta = 1
Prawidłowa odpowiedź używa właściwego połączenia tabel baz danych aby otrzymać nazwy produktów zakupionych przez klienta o konkretnym identyfikatorze. W SQL kwerenda z JOIN umożliwia łączenie danych z więcej niż jednej tabeli na podstawie wspólnego pola. W tym przypadku tabela produkty jest połączona z transakcje_produkty przez pole nr_produktu oraz tabela transakcje jest połączona z transakcje_produkty przez pole nr_transakcji. Dzięki temu możliwe jest uzyskanie pełnego obrazu transakcji dla klienta o id = 1. Zastosowanie USING(nr_produktu) i USING(nr_transakcji) upraszcza kwerendę eliminując konieczność jawnego określania kolumn po obu stronach klauzuli ON. Praktyczne zastosowanie takich kwerend jest podstawą w analizie danych sprzedażowych gdzie analiza historii zakupów klientów może dostarczyć cennych informacji dla działów marketingu oraz logistyki. Dobre praktyki obejmują również optymalizację zapytań SQL aby były jak najbardziej efektywne co jest kluczowe przy pracy z dużymi zbiorami danych.

Pytanie 12

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

$licznik = 0;
while ($licznik != $x)
{
    echo $licznik;
    $licznik++;
}
A. kolejne liczby od x do 0
B. kolejne liczby od 0 do x-1
C. liczby wczytywane z klawiatury, tak długo aż zostanie wczytana wartość x
D. losowe liczby z przedziału (0, x)
Niektóre odpowiedzi sugerują niepoprawne interpretacje kodu PHP. Na przykład, propozycja wyświetlenia losowych liczb z zakresu (0, x) nie jest prawidłowa, ponieważ nie ma w kodzie żadnego komponentu generującego liczby losowe. Również pomysł na wczytywanie liczb z klawiatury jest nieprawidłowy, kod nie zawiera żadnej funkcji umożliwiającej wprowadzanie danych przez użytkownika. Ostatecznie, propozycja wyświetlenia liczb od x do 0 również jest błędna, gdyż zmienna $licznik jest zawsze inkrementowana, co oznacza, że jej wartość zawsze wzrasta. Błędne interpretacje wynikają z niewłaściwego zrozumienia funkcjonowania pętli while oraz procesu inkrementacji zmiennych. Ważne jest, aby zawsze dokładnie analizować każdy fragment kodu, zwracając szczególną uwagę na instrukcje warunkowe i manipulacje zmiennymi.

Pytanie 13

Z przedstawionych tabel Klienci i Uslugi należy wybrać jedynie imiona klientów oraz odpowiadające im nazwy usług, które są droższe niż 10 zł. Kwerenda wybierająca te dane ma postać

Ilustracja do pytania
A. SELECT imie, nazwa FROM klienci JOIN uslugi ON uslugi.id = uslugi_id WHERE cena > 10;
B. SELECT imie, nazwa FROM klienci JOIN uslugi ON uslugi.id = klienci.id;
C. SELECT imie, nazwa FROM klienci JOIN uslugi ON uslugi.id = uslugi_id;
D. SELECT imie, nazwa FROM klienci, uslugi WHERE cena < 10;
Dobra robota, wybrałeś sprawdzoną odpowiedź! To zapytanie SQL, które zaznaczyłeś, łączy tabele 'Klienci' i 'Usługi' przy pomocy klucza obcego 'uslugi_id'. To, co robią takie JOINy, to po prostu łączenie tabel na podstawie wspólnych elementów. W tym przypadku 'uslugi_id' to ten wspólny element, który pozwala na powiązanie obu tabel. A ten warunek 'WHERE cena > 10'? To świetny sposób na to, żeby z ograniczać wyniki do tych, które są droższe niż 10 zł. Fajnie jest mieć pod ręką tylko te informacje, które są dla nas najistotniejsze, szczególnie w większych bazach danych. Pamiętaj, że umiejętność pisania zapytań SQL, jak to, jest naprawdę przydatna, gdy pracujemy z relacyjnymi bazami danych.

Pytanie 14

Jaką funkcję pełni program debugger?

A. interpretacji kodu w ramach wirtualnej maszyny Java
B. analizy działającego programu w celu wykrycia błędów
C. przekładania kodu napisanego w języku wyższego poziomu na język maszynowy
D. badania kodu źródłowego w celu wykrycia błędów składniowych
Pojęcia związane z błędnymi odpowiedziami często wynikają z nieporozumienia dotyczącego ról, jakie pełnią różne narzędzia i procesy w inżynierii oprogramowania. Analiza kodu źródłowego w celu odnalezienia błędów składniowych odnosi się do działania kompilatorów i narzędzi statycznej analizy kodu, które zajmują się oceną jakości kodu przed jego wykonaniem. Tego rodzaju narzędzia są przydatne, ale nie mają na celu lokalizacji błędów w czasie rzeczywistym, co jest kluczowe dla debuggowania. Tłumaczenie kodu na język maszynowy to zadanie kompilatorów, które przekształcają kod źródłowy w formę, która może być zrozumiana przez komputer, ale nie zajmują się analizą błędów podczas działania programu. Interpretacja kodu w wirtualnej maszynie Java również nie odnosi się bezpośrednio do lokalizacji błędów, bowiem jest to proces, w którym kod bajtowy jest wykonywany, ale bez możliwości interakcji w czasie rzeczywistym, jak to ma miejsce w przypadku debuggera. Dlatego kluczowe jest zrozumienie, że debugger ma za zadanie monitorować i analizować program w trakcie jego działania, co jest fundamentalne dla diagnostyki i poprawy jakości oprogramowania.

Pytanie 15

Aby skutecznie stworzyć relację typu m…n, która będzie wolna od redundancji danych, konieczne jest

A. bezpośrednie połączenie kluczy podstawowych obu tabel.
B. zaprojektowanie tabeli pomocniczej.
C. uporządkowanie przynajmniej jednej z tabel.
D. bezpośrednie połączenie kluczy obcych z obu tabel.
Bezpośrednie połączenie kluczy obcych obu tabel w relacji m:n nie jest wystarczające, aby uniknąć redundancji danych. W rzeczywistości, klucze obce mają swoje zastosowanie w relacjach jeden do wielu, gdzie jedna z tabel zawiera odniesienia do drugiej. W przypadku relacji m:n, takie podejście prowadziłoby do powstania złożonych i nieczytelnych struktur, w których dane byłyby przetrzymywane wielokrotnie, co naruszałoby zasady normalizacji. Na przykład, gdybyśmy spróbowali bezpośrednio połączyć klucze obce studentów i kursów, każda kombinacja studenta i kursu byłaby wprowadzana do tej samej tabeli, co prowadziłoby do powielania informacji i wzrostu rozmiaru bazy danych bez rzeczywistej wartości. Ponadto, sortowanie jednej z tabel nie ma wpływu na strukturę relacji m:n; sortowanie jest operacją na poziomie zapytań, a nie na poziomie architektury bazy danych. Łączenie kluczy podstawowych także nie rozwiązuje problemu redundancji, ponieważ nie tworzy połączenia, które umożliwiłoby wielokrotne przypisanie tych samych elementów między tabelami. Właściwe podejście wymaga utworzenia tabeli pomocniczej, co jest powszechną praktyką w projektowaniu baz danych i zapewnia przejrzystość oraz efektywność operacyjną.

Pytanie 16

Elementem odpowiadającym imieniu Agata w zaprezentowanej tablicy JavaScript jest:

var Imiona = new Array('Anna','Joanna','Monika','Agata');
A. Imiona[Agata];
B. Imiona[3];
C. Imiona[4];
D. Imiona['Agata'];
Wybór Imiona[4] jest błędny, ponieważ jak wcześniej wspomniano, tablice w JavaScript są indeksowane od zera i tablica Imiona ma cztery elementy, co oznacza, że najwyższy indeks dostępny w tym przypadku to 3. Próba uzyskania dostępu do elementu o indeksie 4 zwróci undefined, co jest powszechnym źródłem błędów podczas programowania. Kolejna nieprawidłowa odpowiedź, Imiona[Agata], również nie jest poprawna, gdyż nie możemy używać wartości zmiennych (takich jak 'Agata') jako indeksów w tablicach bez wcześniejszej deklaracji. W JavaScript zmienne muszą być zdefiniowane, aby można było ich użyć. Imiona['Agata'] to kolejny przykład błędnego podejścia. Chociaż JavaScript pozwala na uzyskiwanie dostępu do właściwości obiektów za pomocą notacji z kropką lub bracket notation, w przypadku tablic nie można używać nazw elementów, które nie są ich indeksami. Tego rodzaju błędy są często wynikiem niepełnego zrozumienia różnicy między tablicami a obiektami w JavaScript. Zrozumienie tych różnic oraz praktykowanie poprawnego indeksowania tablic jest kluczowe dla każdego programisty, aby uniknąć trudności w kodowaniu oraz zapewnić, że aplikacje działają zgodnie z zamierzeniem.

Pytanie 17

W jaki sposób wykonanie podanej poniżej kwerendy SQL wpłynie na tabelę pracownicy?

ALTER TABLE pracownicy MODIFY plec char9);
A. Doda kolumnę plec ze znakowym typem danych o stałej długości 9.
B. Doda kolumnę plec ze znakowym typem danych o zmiennej długości 9.
C. Zmieni typ danych kolumny plec na znakowy o stałej długości 9.
D. Zmieni typ danych kolumny plec na znakowy o zmiennej długości 9.
Wykonanie kwerendy SQL ALTER TABLE pracownicy MODIFY plec char(9) zmienia typ danych kolumny 'plec' w tabeli 'pracownicy' na typ znakowy o stałej długości wynoszącej 9 znaków. Oznacza to, że każda wartość w tej kolumnie może zajmować do 9 znaków, a system będzie rezerwować dokładnie tę ilość miejsca w bazie danych. Typ char jest używany, gdy znana jest maksymalna długość danych, co pozwala na bardziej efektywne zarządzanie pamięcią i skrócenie czasu dostępu do danych. Przykładem zastosowania tego typu danych może być, na przykład, przechowywanie informacji o płci, gdzie 'M' oznacza mężczyznę, a 'K' kobietę. Przed wprowadzeniem tej kwerendy ważne jest, aby upewnić się, że wszystkie istniejące dane w kolumnie plec są zgodne z nowym formatem, aby uniknąć potencjalnych problemów z utratą danych lub błędami podczas konwersji. Standardy SQL, takie jak ANSI SQL, definiują typy danych i operacje na nich, co zapewnia, że kwerendy są przenośne między różnymi systemami baz danych.

Pytanie 18

W dokumencie HTML umieszczono tekst sformatowany określonym stylem. Aby wprowadzić w treści kilka słów o zróżnicowanym stylu, należy użyć znacznika

A. <hr>
B. <section>
C. <span>
D. <table>
Wybór znaczników <section>, <table> i <hr> jako sposobów na wtrącenie fragmentów tekstu stylizowanych różnie od reszty treści jest niewłaściwy z technicznego punktu widzenia. Znacznik <section> jest przeznaczony do tworzenia sekcji dokumentu, co oznacza, że ma on znaczenie semantyczne i jest używany do grupowania treści, które dotyczą tego samego tematu. Użycie go do stylizacji pojedynczych słów może prowadzić do nieczytelności struktury dokumentu oraz negatywnie wpływać na dostępność treści. Z kolei znacznik <table> służy do tworzenia tabel, które organizują dane w wierszach i kolumnach, a więc jego zastosowanie w kontekście formatowania tekstu byłoby zarówno nieefektywne, jak i niezgodne z przeznaczeniem. Stosowanie <hr> natomiast, które definiuje poziomą linię, nie ma sensu w kontekście zmiany stylu tekstu, ponieważ jego funkcją jest oddzielanie sekcji treści, a nie stylizowanie tekstu. Wybierając nieodpowiednie znaczniki, możemy naruszyć zasady semantyki HTML, co prowadzi do problemów z dostępnością i SEO, a także do trudności w dalszej edycji oraz utrzymaniu kodu. Prawidłowe użycie znaczników jest kluczowym elementem dobrych praktyk w tworzeniu stron internetowych i wpływa na ich czytelność oraz zrozumienie przez różne urządzenia i technologie.

Pytanie 19

Ile razy zostanie wykonana pętla przedstawiona w języku PHP, zakładając, że zmienna kontrolna nie jest zmieniana w jej wnętrzu?
for($i = 0; $i <= 10; $i++) { ...... }

A. Nieskończoność
B. 11 razy
C. 10 razy
D. 0 razy
Pętla for w języku PHP, jak w przedstawionym przykładzie, ma na celu wykonanie bloku kodu wielokrotnie, w zależności od stanu zmiennej sterującej. W tym przypadku, początkowa wartość zmiennej $i wynosi 0, a warunek kontynuacji pętli to $i <= 10. Oznacza to, że pętla będzie kontynuować swoje działanie, dopóki zmienna $i będzie mniejsza lub równa 10. W każdym przebiegu pętli wartość $i jest inkrementowana o 1 za pomocą operatora ++, co oznacza, że przy każdym przejściu przez pętlę $i przyjmuje wartości 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 i 10. Ostatecznie, pętla wykonuje się, gdy $i osiąga wartość 10, a następnie po wykonaniu bloku kodu następuje inkrementacja, co sprawia, że $i staje się 11, co narusza warunek $i <= 10. Zatem pętla wykonuje się 11 razy, co czyni odpowiedź 11 poprawną. Przykładem zastosowania takiej pętli może być iteracja po elementach tablicy lub generowanie sekwencji liczb. Zgodnie z najlepszymi praktykami programistycznymi, ważne jest, aby zawsze kontrolować zmienne sterujące w pętli, aby uniknąć sytuacji takich jak nieskończone pętle, co jest szczególnie istotne w kontekście wydajności aplikacji.

Pytanie 20

Do ilu pól edycyjnych zostanie przypisane tło Teal dla przedstawionego fragmentu dokumentu HTML i stylu CSS?

<input type="text">
<input type="number">
<input type="email">
<input type="number">
<input>

input[type="number"] {
    background-color: Teal;
}
A. Do żadnego.
B. Do wszystkich.
C. Do dwóch.
D. Do trzech.
Bardzo dobrze! Wybrałeś prawidłową odpowiedź, mówiącą, że tło Teal zostanie przypisane do dwóch pól edycyjnych. W przedstawionym fragmencie dokumentu HTML mamy pięć pól edycyjnych (input), z których tylko dwa mają typ 'number'. Tło Teal jest zdefiniowane w stylu CSS i ma być zastosowane tylko do pól typu 'number'. Jest to zgodne z dobrymi praktykami stosowania selektorów atrybutów w CSS, które pozwalają na precyzyjne określenie, do jakich elementów strony internetowej powinien być zastosowany dany styl. Dzięki temu możemy na przykład zastosować różne style dla różnych typów pól wejściowych, jak to jest w tym przypadku. To jest przykład, jak możemy wykorzystać moc CSS do kontroli wyglądu różnych elementów na naszej stronie.

Pytanie 21

Aby w JavaScript wykonać wymienione kroki:

1. Wyświetlić okno do wpisania wartości z poleceniem "Podaj kwalifikację: ",
   następnie po zatwierdzeniu
2. Umieścić napis na stronie internetowej, gdzie w miejscu kropek znajduje się
   wartość pobrana z okna "Kwalifikacja: ..."
należy w znaczniku <script> umieścić kod
A. A = prompt("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " + A);

B. A = prompt("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " .A);

C. A = alert("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " + A);

D. A << prompt("Podaj kwalifikację: ");
   document.write("Kwalifikacja: " + A);
A. B.
B. A.
C. C.
D. D.
Dobra robota! W JavaScript, aby wyświetlić okno, w którym użytkownik może wpisać swoje kwalifikacje, najlepiej użyć funkcji `prompt`. Ta funkcja wyświetla okienko, w które można coś wpisać, a to co wprowadzisz, zostaje zwrócone. Potem, żeby pokazać te dane na stronie, używamy funkcji `document.write`. Dzięki temu możemy dynamicznie dodawać tekst na stronę, co jest super przydatne, gdy chcemy, żeby użytkownik wpisał jakieś informacje, które od razu wyświetlamy. Moim zdaniem, to fajny sposób na interakcję z użytkownikami!

Pytanie 22

W zaprezentowanym schemacie bazy danych o nazwie biblioteka, składniki: czytelnik, wypożyczenie oraz książka są

Ilustracja do pytania
A. krotkami
B. encjami
C. polami
D. atrybutami
W kontekście modelowania danych w relacyjnych bazach danych istotne jest rozróżnienie między encjami a innymi pojęciami. Pola w bazach danych zazwyczaj odnoszą się do pojedynczych jednostek danych w obrębie kolumn tabeli reprezentujących atrybuty encji. Atrybuty to cechy opisujące encje takie jak imię czy nazwisko w przypadku encji czytelnik. Natomiast krotki często określają pojedynczy rekord czyli wiersz w tabeli który jest instancją encji. Błędne jest przypisywanie czytelnik wypozyczenie i ksiazka do kategorii pól ponieważ w modelowaniu danych pola są najmniejszymi jednostkami danych które nie reprezentują obiektów realnego świata lecz ich właściwości. Podobnie błędem jest klasyfikowanie ich jako atrybuty ponieważ atrybuty opisują encje a nie są nimi. Traktowanie tych elementów jako krotek również jest nieprawidłowe gdyż krotki to konkretne instancje danych a nie typy obiektów które chcemy modelować. Typowy błąd myślowy polega na myleniu poziomu abstrakcji czyli traktowaniu encji które są wysokopoziomowymi konceptami jak atrybuty czy krotki które są bardziej szczegółowymi jednostkami w strukturze danych. Zrozumienie tych różnic jest kluczowe dla efektywnego projektowania i implementacji baz danych oraz uniknięcia problemów związanych z redundancją czy nieefektywnością w przetwarzaniu informacji

Pytanie 23

W PHP typ float oznacza

A. łańcuchowy
B. logiczny
C. całkowity
D. zmiennoprzecinkowy
Typ float w PHP to coś w rodzaju magicznego narzędzia do pracy z liczbami, które mają część dziesiętną. Tego typu liczby są niezbędne, kiedy musimy mieć na uwadze detale, na przykład w finansach czy matematyce. Weźmy taki przykład: przy obliczaniu cen w sklepie internetowym często spotykamy się z kwotami jak 19.99 zł. Dzięki PHP możemy wykonywać różne operacje matematyczne na tych liczbach, co daje nam dużą elastyczność w pracy z danymi liczbowymi. Jednak trzeba wiedzieć, że ze względu na to, jak komputery przechowują liczby zmiennoprzecinkowe, zdarzają się problemy z ich dokładnością. W sytuacjach, gdzie to precyzja jest kluczowa, jak w przypadku obliczeń finansowych, dobrze jest skorzystać z takich funkcji jak round(), żeby zaokrąglić wynik do odpowiedniej liczby miejsc po przecinku. Wiedza na temat typu float i jego zastosowania to absolutna podstawa w pracy z programowaniem, zwłaszcza przy tworzeniu aplikacji webowych.

Pytanie 24

W aplikacji internetowej komunikat powinien pojawiać się tylko wtedy, gdy dany użytkownik jest na stronie po raz pierwszy. Którą funkcję PHP należy w tym celu zastosować?

A. setcookie
B. mysqli_change_user
C. session_destroy
D. define
W tym zadaniu kluczowe jest zrozumienie, jaki mechanizm w PHP pozwala rozpoznać użytkownika pomiędzy kolejnymi wizytami. Chodzi o sytuację, gdy przeglądarka zamyka się, mija trochę czasu, a my nadal chcemy wiedzieć, czy dana osoba już kiedyś była na stronie. Do tego nie wystarczą zwykłe zmienne czy nawet sama sesja, bo sesja zazwyczaj wygasa po pewnym czasie bezczynności i jest przechowywana po stronie serwera. Mechanizm, który naturalnie pasuje do takiego scenariusza, to właśnie cookies, ustawiane funkcją setcookie(). Propozycja define jest związana z definiowaniem stałych w kodzie PHP. To działa tylko w czasie wykonywania skryptu po stronie serwera i nie ma żadnego związku z konkretnym użytkownikiem czy jego przeglądarką. Stała zdefiniowana przez define() istnieje tylko w jednym przebiegu skryptu i znika po zakończeniu wykonania. Nie pozwala więc zapamiętać, że konkretny użytkownik był już kiedyś na stronie. To raczej narzędzie konfiguracyjne, np. do zdefiniowania ścieżek, wersji aplikacji, stałych liczbowych. Często pojawia się też mylne przekonanie, że skoro są sesje, to wystarczy coś zrobić z session_destroy. Ta funkcja służy do niszczenia całej sesji użytkownika (wylogowania, czyszczenia danych sesyjnych), a nie do wykrywania pierwszej wizyty. Co więcej, sesja jest mechanizmem krótkotrwałym i zależnym od identyfikatora sesji, więc do trwałego rozpoznawania „pierwszy raz / kolejny raz” bez logowania to średni pomysł. W standardowych projektach sesja jest używana do przechowywania aktualnego stanu użytkownika, a nie do długotrwałego śledzenia wizyt. mysqli_change_user natomiast dotyczy zupełnie innego obszaru – zmiany użytkownika połączenia z bazą danych MySQL. To operacja na poziomie serwera bazy, kompletnie oderwana od pojęcia „pierwsza wizyta użytkownika na stronie”. Moim zdaniem typowy błąd przy takich pytaniach polega na mieszaniu mechanizmów: programista widzi słowo „user” i od razu myśli o logowaniu do bazy albo sesji, zamiast pomyśleć o tym, jak HTTP i przeglądarka identyfikują użytkownika między wizytami. Według dobrych praktyk webowych, jeśli chcemy prostego rozróżnienia, czy ktoś był już na stronie, to używamy ciasteczek ustawianych setcookie(), a pozostałe wymienione funkcje pełnią zupełnie inne, bardziej lokalne lub serwerowe role.

Pytanie 25

W jakiej technologii nie zachodzi możliwość przetwarzania danych wprowadzanych przez użytkowników na stronach internetowych?

A. AJAX
B. PHP
C. CSS
D. JavaScript
CSS (Cascading Style Sheets) to język stylów, który służy do opisywania wyglądu i formatu dokumentów HTML. Jego głównym celem jest kontrolowanie układu, kolorów, czcionek oraz innych aspektów wizualnych strony internetowej. CSS nie ma możliwości przetwarzania danych wprowadzanych przez użytkowników, gdyż nie posiada funkcji logiki programistycznej ani operacji na danych. Przykładowo, CSS może zmieniać kolor tła lub rozmiar tekstu, ale nie może zbierać informacji z formularzy ani reagować na interakcje użytkownika w sposób, w jaki robią to języki programowania takie jak JavaScript czy PHP. Może to prowadzić do mylnych przekonań, że CSS jest bardziej wszechstronny, niż jest w rzeczywistości, jednak jego zastosowanie ogranicza się wyłącznie do aspektów stylistycznych. W praktyce, aby przetwarzać dane użytkownika, niezbędne są inne technologie, które mogą współpracować z CSS, ale same w sobie nie są w stanie tego zrobić.

Pytanie 26

Jak przeglądarka zaprezentuje kod HTML formularza?

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

Pytanie 27

Projektant stworzył logo dla witryny internetowej. Jest to czarny symbol na przezroczystym tle. Aby zachować wszystkie cechy obrazu i umieścić go na stronie, projektant powinien zapisać plik w formacie

A. PNG
B. BMP
C. JPG
D. CDR
Format PNG to super wybór do przechowywania obrazów z przezroczystością, zwłaszcza jeśli chodzi o logo na stronach www. Wiesz, co jest fajne? To, że PNG obsługuje kanał alfa – dzięki temu można zapisać obrazki z przezroczystym tłem. To jest mega ważne, bo logo często muszą się dobrze prezentować na różnych kolorach, prawda? A jeśli chodzi o jakość, to PNG kompresuje obrazy bezstratnie, co znaczy, że nie tracimy detali i jakość pozostaje na wysokim poziomie, a plik nie jest za duży. Graficy często sięgają po PNG, gdy robią ikony czy różne grafiki internetowe, które muszą wyglądać dobrze. W branży web designu to naprawdę standard, żeby korzystać z PNG, bo jest elastyczny na różnych platformach i urządzeniach, więc nie ma co się dziwić, że fachowcy go lubią.

Pytanie 28

Tabela gory zawiera dane o polskich wzniesieniach oraz łańcuchach górskich, w których te wzniesienia się znajdują. Aby uzyskać Koronę Gór Polskich, czyli najwyższe wzniesienie w każdym z łańcuchów górskich, należy wykonać kwerendę

A. SELECT pasmo, szczyt FROM gory GROUP BY wysokosc
B. SELECT pasmo, szczyt, MAX(wysokosc) FROM gory
C. SELECT pasmo, szczyt, MAX(wysokosc) FROM gory GROUP BY pasmo
D. SELECT pasmo, szczyt, wysokosc FROM gory
Odpowiedź SELECT pasmo, szczyt, MAX(wysokosc) FROM gory GROUP BY pasmo; jest poprawna, ponieważ wykorzystuje funkcję agregującą MAX, która pozwala na wybranie najwyższego szczytu w każdym paśmie górskim. Grupa pasm górskich jest tworzona za pomocą klauzuli GROUP BY, co jest kluczowe w tym kontekście, ponieważ chcemy uzyskać najwyższy szczyt dla każdej grupy, a nie tylko globalny najwyższy szczyt. W praktyce, takie podejście jest niezwykle użyteczne w analizach geograficznych i tworzeniu raportów, gdzie grupowanie danych według określonych kryteriów pozwala na lepsze zrozumienie struktury danych. W kontekście baz danych, stosowanie funkcji agregujących w połączeniu z klauzulą GROUP BY jest standardową praktyką, co zwiększa efektywność zapytań oraz pozwala na uzyskanie bardziej precyzyjnych wyników. Przykładowo, podobne zapytania mogą być używane w analizach sprzedażowych, gdzie chcemy zobaczyć maksymalną sprzedaż w każdym regionie, co również wymaga grupowania danych według regionów.

Pytanie 29

Wskaż zapytanie, które z tabeli klienci wybierze wyłącznie nazwiska trzech najlepszych klientów, czyli takich, którzy posiadają najwięcej punktów na swoim koncie (pole całkowite punkty)?

A. SELECT nazwisko FROM klienci ORDER BY punkty DESC LIMIT 3
B. SELECT LIMIT 3 nazwisko FROM klienci ORDER BY nazwisko DESC
C. SELECT nazwisko FROM klienci LIMIT 3
D. SELECT nazwisko FROM klienci ORDER BY nazwisko DESC LIMIT 3
Analiza niepoprawnych odpowiedzi ujawnia szereg kluczowych błędów w interpretacji zapytania SQL. W pierwszym przypadku, 'SELECT LIMIT 3 nazwisko FROM klienci ORDER BY nazwisko DESC;' następuje nieprawidłowa składnia, ponieważ klauzula LIMIT powinna być umieszczona po klauzuli ORDER BY. Taki błąd sprawia, że zapytanie nie zostanie zrealizowane przez system baz danych. Kolejna odpowiedź, 'SELECT nazwisko FROM klienci LIMIT 3;', pomija istotny element sortowania, dlatego zwróci po prostu pierwsze trzy nazwiska z tabeli, bez względu na ilość punktów. Takie podejście jest mało efektywne, ponieważ nie identyfikuje najlepszych klientów na podstawie ich punktów, co jest kluczowe dla analizy jakości klientów. Ostatnia odpowiedź, 'SELECT nazwisko FROM klienci ORDER BY nazwisko DESC LIMIT 3;', znów koncentruje się na sortowaniu alfabetycznym nazwisk zamiast na punktach, co nie spełnia kryteriów określonych w pytaniu. Takie błędy ukazują typowe nieporozumienia w zakresie funkcji SQL, gdzie kluczowe jest rozróżnienie pomiędzy różnymi metodami sortowania i ograniczania wyników. Istotne jest, aby w analizach danych zawsze zwracać uwagę na odpowiednie kryteria oraz zasady, które mają realny wpływ na proces podejmowania decyzji.

Pytanie 30

Jak nazywa się platforma wspierająca rozwój oprogramowania w technologii .NET?

A. db2
B. eclipse
C. middleware
D. framework
Framework to kluczowy element w ekosystemie programowania w technologii .NET, który dostarcza zestaw narzędzi, bibliotek i standardów do tworzenia aplikacji. .NET Framework, opracowany przez firmę Microsoft, umożliwia deweloperom tworzenie różnorodnych aplikacji, od aplikacji webowych po aplikacje desktopowe i mobilne. Framework ten wspiera szeroki zakres języków programowania, w tym C#, Visual Basic i F#. Działa na zasadzie dostarczania środowiska uruchomieniowego oraz zestawu klas, które ułatwiają proces programowania, przyspieszając rozwój dzięki gotowym komponentom i wspólnym funkcjonalnościom. Przykładowo, ASP.NET, część .NET Framework, jest używany do budowy aplikacji webowych, co pozwala na łatwe implementowanie funkcji takich jak autoryzacja użytkowników, zarządzanie sesjami i integracja z bazami danych. Dzięki swojej architekturze, .NET Framework przestrzega standardów, takich jak Common Language Specification (CLS), co zapewnia interoperacyjność między różnymi językami programowania. Jest to fundament, na którym opiera się wiele nowoczesnych rozwiązań w świecie IT, co czyni go niezastąpionym narzędziem dla każdego programisty w technologii .NET.

Pytanie 31

Co to jest AJAX?

A. System zarządzania bazą danych używany do przechowywania i manipulacji danymi
B. Język programowania służący do tworzenia stron internetowych
C. Biblioteka JavaScript do obsługi animacji i efektów wizualnych
D. Technologia umożliwiająca asynchroniczne przesyłanie danych między klientem a serwerem bez przeładowania strony
AJAX, czyli Asynchronous JavaScript and XML, to podejście do programowania aplikacji webowych, które pozwala na wykonywanie asynchronicznych zapytań do serwera bez konieczności przeładowania całej strony. Dzięki temu użytkownik ma płynniejsze i bardziej responsywne doświadczenie z aplikacją. W praktyce często stosuje się AJAX do ładowania danych z serwera w tle, co pozwala na dynamiczne aktualizowanie części strony, takie jak listy produktów, komentarze, czy wyniki wyszukiwania. Technologie związane z AJAX to m.in. XMLHttpRequest, Fetch API oraz często używane biblioteki jak jQuery, które upraszczają jego implementację. Standardy i dobre praktyki obejmują m.in. unikanie blokowania interfejsu użytkownika oraz zapewnienie bezpieczeństwa danych podczas przesyłania między klientem a serwerem. Z mojego doświadczenia, AJAX jest nieoceniony w tworzeniu nowoczesnych aplikacji webowych i znacząco zwiększa ich użyteczność.

Pytanie 32

Jaką wartość w systemie szesnastkowym przyjmie kolor określony kodem RGB rgb(255, 128, 16)?

A. #ff0f10
B. #008010
C. #ff8011
D. #ff8010
Odpowiedzi takie jak #008010, #ff8011 oraz #ff0f10 są nieprawidłowe z różnych powodów. Zaczynając od #008010, zauważamy, że pierwszy składnik (R) wynosi 0, co oznacza, że kolor nie zawiera czerwonego komponentu. Oryginalny kolor rgb(255, 128, 16) ma maksymalne wartości czerwonego, co wyklucza odpowiedzi z zerowymi wartościami. Przechodząc do #ff8011, widzimy, że ostatnia cyfra jest 1, co wynika z konwersji wartości 16, która w systemie szesnastkowym powinna być 10. Użycie 1 zamiast 10 nie oddaje prawidłowo oryginalnego koloru. Wreszcie, analiza #ff0f10 ujawnia problem z zielonym komponentem, który w tej odpowiedzi wynosi 0, biorąc pod uwagę, że wartość zielona powinna wynosić 128 (80 w systemie szesnastkowym). Te błędy mogą wynikać z nieprecyzyjnego zrozumienia konwersji wartości kolorów między systemami. Ważne jest, aby zrozumieć, że RGB to model addytywny, w którym kolory są tworzone przez łączenie światła czerwonego, zielonego i niebieskiego, a każdy składnik ma swoje przypisane wartości, które muszą być dokładnie odzwierciedlone w kodzie szesnastkowym. Przy pracy z kolorami, szczególnie w projektowaniu cyfrowym, dobrze jest również korzystać z narzędzi do konwersji oraz palet kolorów, aby uniknąć takich pomyłek.

Pytanie 33

W tabeli pokazano cechy pliku graficznego. Aby rysunek ładował się szybciej na stronie WWW, należy

Wymiary: 4272 x 2848px
Rozdzielczość: 72 dpi
Format: JPG
A. zmienić format grafiki na CDR
B. zwiększyć rozdzielczość
C. zmienić proporcje szerokości do wysokości
D. zmniejszyć wymiary rysunku
Zmiana formatu na CDR nie jest zalecana dla grafiki internetowej. Format CDR jest formatem wektorowym używanym w programie CorelDRAW i nie jest obsługiwany przez przeglądarki internetowe. Grafika wektorowa w formacie CDR wymaga konwersji do formatu rastrowego takiego jak PNG lub JPG aby mogła być użyta na stronach WWW co dodaje dodatkowy krok w procesie publikacji. Zwiększenie rozdzielczości, czyli zwiększenie wartości dpi, zwiększa ilość danych w pliku graficznym, co powoduje dłuższy czas ładowania. Większa rozdzielczość jest użyteczna głównie w kontekście drukowania gdzie jakość obrazu jest kluczowa, natomiast dla internetu standardowa rozdzielczość 72 dpi jest wystarczająca dla większości zastosowań. Zmiana proporcji szerokości do wysokości nie wpływa na rozmiar pliku ani na czas jego ładowania. Taka zmiana może wręcz prowadzić do niepożądanego efektu rozciągnięcia lub zniekształcenia obrazu co negatywnie wpływa na estetykę strony. Prawidłowe proporcje są ważne dla zachowania spójnej estetyki i użyteczności wizualnej serwisu jednak nie mają bezpośredniego wpływu na wydajność ładowania. Typowe błędy myślowe związane z tymi odpowiedziami wynikają z braku zrozumienia specyfiki optymalizacji webowej gdzie mniejszy rozmiar pliku przekłada się na szybsze ładowanie i lepszą wydajność strony internetowej.

Pytanie 34

W której notacji diagramów ER został zapisany model związków encji przedstawiony na ilustracji?

Ilustracja do pytania
A. Martina.
B. Min-Max.
C. Chena.
D. Bachmana.
Na diagramie przedstawiono model w notacji Martina, a nie w żadnej z pozostałych wymienionych. Warto zrozumieć, czym ta notacja różni się od innych, bo w praktyce projektowania baz danych bardzo łatwo je ze sobą pomylić. Notacja Chena to bardziej „akademickie” podejście do ERD. Encje są zwykle rysowane jako prostokąty, ale atrybuty pojawiają się w osobnych elipsach, połączonych liniami z encją. Klucz główny bywa podkreślony, a związki są reprezentowane przez romby z nazwą relacji. Na naszym diagramie nic takiego nie ma – atrybuty są w środku prostokąta, w formie listy, a nie jako osobne kształty, więc to już mocny sygnał, że to nie jest Chen. Z kolei notacja Bachmana historycznie kojarzy się z modelami sieciowymi i specyficznym sposobem prezentowania struktur danych, często z łamanymi liniami i strzałkami, raczej nie przypomina tabel z nagłówkiem i listą pól. W typowych podręcznikach do systemów baz danych Bachman jest pokazywany jako dość stary styl, dziś mało używany przy klasycznym relacyjnym ERD, więc mało prawdopodobne, by tak wyglądał nowoczesny diagram klient–zakup–towar. Odpowiedź Min-Max jest też myląca, bo Min-Max nie jest nazwiskiem autora notacji, tylko sposobem zapisu krotności relacji, np. (0,1), (1,n). Można taki zapis wykorzystać zarówno z notacją Chena, jak i z innymi, ale sam diagram z obrazka nie używa jawnego oznaczenia min/max przy relacjach – widzimy crow’s foot, czyli styl typowy dla Martina. Typowy błąd w tego typu pytaniach polega na tym, że ktoś kojarzy jeden detal, np. gdzieś widział oznaczenia min-max, i automatycznie zakłada, że każda notacja z relacjami i krotnościami to „Min-Max”. Tutaj jednak kluczowe są kształty encji i sposób zapisu atrybutów: prostokąt z nagłówkiem i lista pól jak w tabeli, bez elips i rombów, bez dodatkowych znaczników kluczy – to bardzo klasyczny, praktyczny styl używany przy projektowaniu relacyjnych baz danych, właśnie w notacji Martina. Dobrze jest więc patrzeć na diagram całościowo, a nie tylko na pojedynczy symbol, bo wtedy łatwiej uniknąć takich pomyłek.

Pytanie 35

Aby przywrócić bazę danych MS SQL z archiwum, należy użyć polecenia

A. REBACKUP DATABASE
B. SAVE DATABASE
C. RESTORE DATABASE
D. DBCC CHECKDB
Pozostałe odpowiedzi nie są właściwe w kontekście przywracania bazy danych MS SQL z kopii bezpieczeństwa. DBCC CHECKDB jest narzędziem służącym do sprawdzania integralności bazy danych, ale nie ma zastosowania w procesie przywracania danych. To polecenie diagnostyczne pozwala na identyfikację uszkodzeń strukturalnych bazy danych oraz ich potencjalne naprawienie, co jest ważne, lecz nie dotyczy samego procesu przywracania. SAVE DATABASE nie jest uznawane za standardowe polecenie w MS SQL Server. Takie działanie nie istnieje w dokumentacji, co oznacza, że nie można go używać do wykonywania operacji na bazach danych. Ostatnia odpowiedź, REBACKUP DATABASE, również nie jest poprawna, ponieważ MS SQL Server nie posiada takiej komendy. W rzeczywistości, proces tworzenia kopii zapasowej danych realizuje się za pomocą polecenia BACKUP DATABASE, a nie REBACKUP. Każda z tych odpowiedzi ma swoje zastosowanie w pracy z bazami danych, ale w kontekście przywracania nie spełniają wymagań. Dlatego kluczowe jest zrozumienie roli polecenia RESTORE DATABASE w prawidłowym zarządzaniu bazami danych.

Pytanie 36

Który z poniższych sposobów na komentarz jednoliniowy jest akceptowany w języku JavaScript?

A. #
B. //
C. <!
D. !
W JavaScript są jakieś znaki, które czasami myli się z komentarzami, ale nie są one do tego używane. Na przykład, '!' to operator logiczny, który po prostu neguje wartość, ale nie ma nic wspólnego z komentarzami. Ponadto, '#' używa się w innych językach, jak Python, ale w JavaScript nie działa jako komentarz — jego użycie spowoduje błąd. Zresztą, '<!' to też nie to, co trzeba w JavaScript, bo w HTML ma on inny sens i dotyczy komentarzy wieloliniowych. Więc, jak widzisz, nie da się używać '<!' do robienia komentarzy w JavaScript, bo nie zgadza się to z regułami języka. Zrozumienie tych rzeczy jest naprawdę ważne, gdy piszesz działający kod.

Pytanie 37

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

A. aside {float: left; }
B. nav { float: right; } section { float: right; }
C. nav { float: left; } aside { float: left; }
D. nav { float: right; }
Prawidłowa odpowiedź opiera się na tym, jak działają własności float w CSS i w jakiej kolejności przeglądarka renderuje elementy blokowe. Jeśli w dokumencie HTML kolejność znaczników to np. &lt;aside&gt;, potem &lt;section&gt;, a na końcu &lt;nav&gt;, to bez dodatkowego stylowania wszystkie trzy ustawią się pionowo, jeden pod drugim, w tej właśnie kolejności. Dodanie float zmienia sposób, w jaki elementy „odpływają” od normalnego przepływu dokumentu i jak układają się obok siebie. W stylu nav { float: right; } section { float: right; } sprawiamy, że zarówno nav, jak i section są przesuwane do prawej krawędzi kontenera, natomiast aside (bez float) pozostaje w normalnym przepływie, czyli z lewej strony. Ponieważ przeglądarka układa elementy w kolejności występowania w kodzie, najpierw wyrenderuje aside po lewej, potem section „odpłynie” w prawo, a na końcu nav też „odpłynie” w prawo, ustawiając się po prawej stronie, ale dalej od góry niż section. Efekt wizualny jest taki, że po lewej mamy aside, po prawej nav, a section ląduje między nimi, dokładnie tak jak było pokazane na filmie. Moim zdaniem to zadanie dobrze pokazuje, że przy floatach zawsze trzeba myśleć o trzech rzeczach naraz: kolejności elementów w HTML, kierunku „pływania” (left/right) oraz o tym, które elementy pozostawiamy w normalnym przepływie. W praktyce w nowoczesnych projektach częściej używa się flexboxa albo CSS Grid do takich układów, bo są czytelniejsze i mniej problematyczne. Przykładowo, zamiast kombinować z float, można by użyć display: flex; na kontenerze i ustawić order dla aside i nav. Float nadal jednak pojawia się w starszych layoutach i w zadaniach egzaminacyjnych, więc warto dobrze rozumieć jego zachowanie, choćby po to, żeby poprawnie modyfikować istniejące style lub naprawiać „rozjechane” układy w starszych projektach.

Pytanie 38

Co można powiedzieć o przedstawionym zapisie języka HTML 5?

<title>Strona o psach</title>
A. Zostanie umieszczony w treści strony, na samym czubku.
B. Pojawi się na karcie dokumentu w przeglądarce.
C. Jest fakultatywny w kontekście HTML 5 i nie jest wymagany w dokumencie.
D. Stanowi jedynie informację dla robotów wyszukiwania i nie jest widoczny w przeglądarce.
Zaznaczenie poprawnej odpowiedzi pokazuje, że to, co jest w znaczniku <title>, pojawia się na karcie w przeglądarce. To naprawdę ważny element HTML, bo informuje użytkowników, o czym jest dana strona. Zgodnie z tym, co mówi W3C, tytuł strony jest kluczowy dla SEO, gdyż wyświetla się w wynikach wyszukiwania i na zakładkach przeglądarek. Fajnie, jak tytuł jest krótki, ma kluczowe słowa, które mówią o zawartości, i przyciąga wzrok. Na przykład, jak zrobisz stronę o psach rasowych, to tytuł <title> w stylu 'Strona o psach - Poradnik dla właścicieli' nie tylko mówi, o czym będzie treść, ale też może sprawić, że lepiej widać ją w wynikach wyszukiwania. Pamiętaj, że zawartość znacznika <title> widać na górze okna przeglądarki, co ułatwia poruszanie się i znajdowanie otwartych kart.

Pytanie 39

Na tabeli muzyka, przedstawionej na schemacie, wykonano następującą kwerendę SQL. Co zostanie zwrócone przez tę zapytanie? SELECT wykonawca FROM `muzyka` WHERE wykonawca LIKE 'C%w';

Ilustracja do pytania
A. Czesław, Niemen
B. Czesław, Czechowski
C. Czesław
D. pusty wynik
Analiza błędnych odpowiedzi prowadzi do zrozumienia, dlaczego nie można ich uznać za poprawne w kontekście przedstawionego zapytania SQL. Odpowiedź 'Czesław' sugeruje, że zapytanie zwróci wykonawcę o takim imieniu. W rzeczywistości zapytanie SQL używa wzorca 'C%w', co oznacza, że szuka wykonawców, których imię i nazwisko zaczynają się na 'C' i kończą na 'w'. W tabeli nie ma wykonawcy spełniającego ten warunek. 'Czesław Niemen' mimo poprawnego początku nazwy, nie kończy się na 'w', co wyklucza tę odpowiedź. Podobnie, odpowiedzi sugerujące parę wykonawców, takie jak 'Czesław, Niemen' czy 'Czesław, Czechowski', również nie spełniają kryteriów wzorca, ponieważ żadne z nazwisk nie kończy się na 'w'. Typowym błędem myślowym przy takich zadaniach jest nieuwzględnienie pełnego warunku wzorca i skupienie się tylko na jego części początkowej. Użycie operatora LIKE z symbolem '%' wymaga zrozumienia, że jest to znak wieloznaczny, który pozwala na dowolną liczbę znaków między określonymi literami. Zlekceważenie tego aspektu prowadzi do błędnych wniosków. W praktyce, umiejętność poprawnego formułowania zapytań SQL i zrozumienie działania operatorów takich jak LIKE ma zasadnicze znaczenie dla pracy z bazami danych, szczególnie w kontekście wyszukiwania i filtrowania danych według określonych kryteriów. Prawidłowe wykorzystanie tych umiejętności pozwala na efektywną obsługę dużych zbiorów danych i jest kluczowym elementem skutecznego zarządzania informacją w przedsiębiorstwach i organizacjach.

Pytanie 40

W przedstawionej definicji stylu CSS, powtarzanie dotyczy

body {
  background-image: url("rysunek.gif");
  background-repeat: repeat-y;
}
A. rysunku umieszczonego w tle strony w poziomie.
B. rysunku umieszczonego znacznikiem img.
C. tła każdego ze znaczników akapitu.
D. rysunku umieszczonego w tle strony w pionie.
Niestety, Twoja odpowiedź nie jest poprawna. 'background-repeat: repeat-y;' w CSS rzeczywiście nie dotyczy rysunków wstawianych przez tag img ani tła akapitów. Mówi po prostu, że tło się powtarza w pionie, czyli wzdłuż osi Y. Może to trochę mylić, ale warto pamiętać, że oś Y to pion a oś X to poziom. Zrozumienie tych podstawowych rzeczy jest konieczne, żeby ogarnąć CSS i tworzyć ładne strony www.