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: 17 grudnia 2025 19:38
  • Data zakończenia: 17 grudnia 2025 20:09

Egzamin zdany!

Wynik: 29/40 punktów (72,5%)

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Jaką rozdzielczość określa jednostka ppi (ang. pixels per inch)?

A. Obrazów bitmapowych.
B. Cyfrowych przyrządów dokonujących pomiarów.
C. Obrazów generowanych przez drukarki i plotery
D. Skanujących urządzeń.
Skanery są urządzeniami, które przetwarzają obrazy z analogowych źródeł na format cyfrowy, ale nie są bezpośrednio związane z rozdzielczością wyrażaną w ppi. Często mylnie zakłada się, że skanery działają na podobnych zasadach jak drukarki, jednak ich rozdzielczość jest mierzone w dpi (dots per inch), co odnosi się do punktów na cal, a nie pikseli. Obrazy rastrowe, chociaż mają swoje zastosowanie w kontekście ppi, nie są jedynym kontekstem dla tej jednostki. Rozdzielczość obrazów rastrowych odnosi się do ich jakości i szczegółowości, jednak ppi jest najczęściej używane w kontekście druku, a nie w samym tworzeniu obrazów rastrowych. Cyfrowe urządzenia wykonujące pomiary mogą mieć różne zastosowania, ale również nie odnoszą się do ppi w kontekście ich działania czy wydajności. Rozumienie, jak różne urządzenia i techniki pomiarowe używają różnych jednostek miary do określania rozdzielczości, jest kluczowe dla prawidłowego zrozumienia tematu. W branży graficznej oraz drukarskiej ważne jest, aby właściwie interpretować te jednostki oraz ich zastosowania w praktyce.

Pytanie 2

Zamieszczone poniżej zapytanie SQL przyznaje uprawnienie SELECT:

GRANT SELECT ON hurtownia.* TO 'sprzedawca'@'localhost';
A. dla konta root na serwerze sprzedawca
B. do wszystkich kolumn w tabeli hurtownia
C. dla konta root na serwerze localhost
D. do wszystkich tabel w bazie danych hurtownia
Podane polecenie SQL <code>GRANT SELECT ON hurtownia.* TO 'sprzedawca'@'localhost';</code> jest poprawne, ponieważ przyznaje uprawnienia do wykonywania zapytań SELECT na wszystkich tabelach w bazie danych hurtownia. Operator <code>.*</code> w kontekście bazy danych oznacza, że dotyczy to wszystkich tabel znajdujących się w tej bazie. Przyznawanie uprawnień w taki sposób jest zgodne z najlepszymi praktykami zarządzania dostępem w systemach baz danych, ponieważ umożliwia kontrolowanie, którzy użytkownicy mogą uzyskiwać dostęp do danych. W praktyce, jeśli 'sprzedawca' potrzebuje przeglądać dane ze wszystkich tabel w hurtowni, to takie przyznanie uprawnień jest najbardziej efektywne. Takie podejście ułatwia zarządzanie uprawnieniami, pozwalając administratorom na nadawanie ogólnych uprawnień w ramach bazy danych, zamiast przypisywania ich dla każdej tabeli z osobna. Dobrą praktyką jest również regularne przeglądanie i aktualizowanie przydzielonych uprawnień, aby zapewnić bezpieczeństwo i zgodność z zasadami ochrony danych.

Pytanie 3

W języku JavaScript wartość typu boolean może być przedstawiana przez

A. 45.3
B. true
C. –20
D. null
Typ boolean w języku JavaScript jest jednym z podstawowych typów danych, reprezentującym jedynie dwie możliwe wartości: true (prawda) oraz false (fałsz). Typ ten jest kluczowy w programowaniu, umożliwiając tworzenie warunków oraz podejmowanie decyzji w kodzie. W praktyce, boolean jest wykorzystywany w instrukcjach warunkowych, takich jak if, gdzie wyrażenia zwracające wartość logiczną decydują o dalszym przebiegu programu. Na przykład, wyrażenie 'if (x > 10)' zwraca true, jeśli x jest większe od 10, i false w przeciwnym razie. JavaScript, zgodnie ze specyfikacją ECMA-262, nie tylko definiuje typ boolean, ale również określa sposób konwersji innych typów danych na boolean. Funkcje takie jak Boolean() oraz operatory logiczne (&&, ||, !) są używane do uzyskania wartości boolean z innych typów. Warto również zauważyć, że JavaScript stosuje tzw. "truthy" i "falsy" wartości, co oznacza, że niemal każdy typ danych może być interpretowany jako boolean w kontekście warunków, jednak tylko true i false są typowymi wartościami tego typu. Zrozumienie działania typu boolean jest fundamentalne dla programistów, umożliwiając skuteczne kontrolowanie przepływu programu oraz implementację logiki decyzyjnej."

Pytanie 4

Wskaż, który paragraf jest sformatowany przy użyciu podanego stylu CSS:

p {
    font-family: serif;
    background-color: Teal;
    color: white;
    font-style: italic;
}
A. Paragraf 3
B. Paragraf 2
C. Paragraf 4
D. Paragraf 1
Analizując poszczególne paragrafy można zauważyć różnice w ich formatowaniu które nie odpowiadają przedstawionemu stylowi CSS. Przykładowo paragraf 1 choć posiada ciemnozielone tło i biały tekst nie jest zapisany kursywą co jest jednym z kluczowych wymogów stylu font-style: italic. Kolejną różnicą jest użyta czcionka która nie odpowiada krojowi szeryfowemu font-family: serif. Paragraf 2 wykazuje jeszcze większe odstępstwa od stylu CSS. Jego tło jest białe co nie zgadza się z background-color: Teal a także tekst ma inny kolor niż White. Dodatkowo choć tekst jest kursywą to użyta czcionka nie jest szeryfowa. Paragraf 3 mimo że posiada ciemnozielone tło i biały tekst nie jest napisany kursywą co jest wymagane przez font-style: italic a także tekst jest pogrubiony co nie wynika z przedstawionego stylu CSS. Typowe błędy pojawiające się przy analizie stylów CSS wynikają często z nieprawidłowego zrozumienia właściwości oraz braku uwagi na szczegóły takie jak krój czcionki czy szczegółowe ustawienia kolorów tła i tekstu. Właściwe rozumienie specyfikacji CSS oraz umiejętność rozpoznawania subtelnych różnic w stylach jest kluczowa w projektowaniu stron internetowych zgodnych z najlepszymi praktykami branżowymi.

Pytanie 5

W CSS zapis selektora p > i { color: red;} wskazuje, że kolorem czerwonym zostanie zdefiniowany

A. wszelki tekst w znaczniku <p> lub wszelki tekst w znaczniku <i>
B. tylko ten tekst w znaczniku <i>, który znajduje się bezpośrednio wewnątrz znacznika <p>
C. tylko ten tekst w znaczniku <p>, który posiada klasę o nazwie i
D. wszelki tekst w znaczniku <p>, z wyjątkiem tych w znaczniku <i>
Zapis selektora p > i w CSS oznacza, że styl zostanie zastosowany jedynie do znaczników <i>, które są bezpośrednimi dziećmi znacznika <p>. W praktyce oznacza to, że jeśli w dokumencie HTML mamy strukturę, gdzie znacznik <i> znajduje się bezpośrednio wewnątrz <p>, tekst w tym <i> zostanie sformatowany na czerwono. Takie podejście do stylizacji jest zgodne z zasadami kaskadowego arkusza stylów, gdzie selektory mogą precyzyjnie określać, które elementy mają być stylizowane. Użycie operatora > jest dobrym przykładem zastosowania selektorów potomków w CSS, co pozwala na bardziej precyzyjne i efektywne zarządzanie stylami. Dobrą praktyką jest unikanie nadmiernej hierarchii w selektorach, co może prowadzić do złożonych i trudnych do utrzymania arkuszy stylów. W związku z tym, zrozumienie działania selektorów jest kluczowe dla efektywnego korzystania z CSS.

Pytanie 6

W zaprezentowanym fragmencie dokumentu HTML ustalono stylowanie CSS dla selektora klasy "menu", aby kolor tła tego elementu był zielony. Które z poniższych określeń stylu CSS odpowiada temu stylowaniu?

<div class="menu"></div>
A. div:menu { color: green; }
B. div.menu { background-color: green; }
C. #menu { background-color: rgb(0,255,0); }
D. menu { background-color: rgb(0,255,0); }
Błędne odpowiedzi wynikają z niewłaściwego zastosowania selektorów w języku CSS. Selektor #menu sugeruje użycie ID, jednak w HTML identyfikator musi być unikalny, a zadanie dotyczy klasy, co implikuje użycie selektora klasy poprzedzonego kropką. Takie błędne użycie prowadzi do niezrozumienia podstawowej różnicy między klasami a identyfikatorami w CSS, co jest kluczowe w projektowaniu stron internetowych. Z kolei selektor menu { background-color: rgb(0,255,0); } jest niepoprawny, ponieważ nie odnosi się do konkretnego elementu. Chociaż specyfikacja CSS pozwala na selektory nazwane, najczęściej stosuje się je w kontekście semantycznym dla elementów HTML, a nie tych określonych przez klasy. Wreszcie, definicja div:menu { color: green; } używa błędnej składni, ponieważ pseudo-klasy w CSS są używane do stylizacji specyficznych stanów elementów, takich jak hover, active czy focus, a nie do stylizacji klas. Istotne jest zrozumienie, że użycie pseudo-klas wymaga odpowiedniego kontekstu, który w tym przypadku jest niepoprawnie użyty. Kluczem do poprawnego stosowania CSS jest zrozumienie specyfiki selektorów i ich właściwe wykorzystanie, co pozwala na efektywne zarządzanie stylem w projekcie webowym. Podstawową zasadą powinno być projektowanie stylów z myślą o ich wielokrotnym wykorzystaniu i utrzymaniu czystości kodu.

Pytanie 7

Tabele Klienci oraz Zgłoszenia są ze sobą połączone relacją jeden do wielu. W celu uzyskania jedynie opisu zgłoszenia oraz odpowiadającego mu nazwiska klienta dla zgłoszenia o numerze 5, należy wykonać polecenie

Ilustracja do pytania
A. SELECT opis, nazwisko FROM Zgłoszenia JOIN Klienci ON Klienci.id = Zgłoszenia.Klienci_id WHERE Zgłoszenia.id = 5
B. SELECT opis, nazwisko FROM Zgłoszenia JOIN Klienci ON Klienci.id = Zgłoszenia.Klienci_id WHERE Klienci.id = 5
C. SELECT opis, nazwisko FROM Zgłoszenia JOIN Klienci ON Klienci.id = Zgłoszenia.id WHERE Zgłoszenia.id = 5
D. SELECT opis, nazwisko FROM Zgłoszenia JOIN Klienci WHERE Klienci.id = 5
Odpowiedź jest poprawna, ponieważ uwzględnia właściwe połączenie między tabelami Klienci i Zgłoszenia za pomocą klucza obcego Klienci_id w tabeli Zgłoszenia. W relacyjnych bazach danych, gdy chcemy pobrać dane z dwóch tabel powiązanych relacją klucz główny-klucz obcy, używamy klauzuli JOIN. W tym przypadku Klienci_id w tabeli Zgłoszenia odnosi się do kolumny id w tabeli Klienci. Zapytanie SELECT opis, nazwisko FROM Zgłoszenia JOIN Klienci ON Klienci.id = Zgłoszenia.Klienci_id WHERE Zgłoszenia.id = 5; precyzyjnie pobiera kolumny opis i nazwisko z odpowiednich tabel, filtrując wyniki, aby dotyczyły jedynie zgłoszenia o id równym 5. Takie podejście jest zgodne z dobrymi praktykami projektowania relacyjnych baz danych, gdzie separacja danych na tabele pozwala na efektywne zarządzanie związkami między danymi. Korzystając z JOIN, integrujemy te dane w logiczny sposób, co jest fundamentem wydajnych i skalowalnych systemów bazodanowych. Praktyczne zastosowanie tego podejścia można znaleźć w projektowaniu systemów CRM, gdzie dane o klientach i ich zgłoszeniach są regularnie łączone w celu analizy i raportowania.

Pytanie 8

Która z funkcji agregujących wbudowanych w język SQL służy do obliczania średniej wartości w określonej kolumnie?

A. AVG
B. SUM
C. MIN
D. COUNT
Funkcja AVG w języku SQL jest jedną z kluczowych funkcji agregujących, która pozwala na obliczenie średniej wartości w określonej kolumnie zestawienia danych. Użycie tej funkcji jest szczególnie istotne w analizie statystycznej, gdyż pozwala uzyskać bardziej reprezentatywny wynik, eliminując wpływ skrajnych wartości, które mogą zniekształcać obraz danych. Na przykład, gdy mamy tabelę "sprzedaż" z kolumną "kwota", można użyć zapytania SELECT AVG(kwota) FROM sprzedaż, aby uzyskać średnią wartość sprzedaży. Funkcja ta jest nie tylko przydatna w kontekście analizy, ale także stanowi standardową praktykę w raportowaniu wyników finansowych, co może pomóc w podejmowaniu decyzji biznesowych. Warto również zauważyć, że AVG jest funkcją, która ignoruje wartości NULL, co jest ważne w kontekście danych, które mogą nie być pełne. Dobre praktyki sugerują, aby zawsze sprawdzać dane wejściowe przed stosowaniem funkcji agregujących, aby zapewnić ich jakość i dokładność wyników.

Pytanie 9

Z tabel Artykuly oraz Autorzy należy wyodrębnić tylko nazwiska autorów oraz tytuły ich artykułów, które uzyskały ocenę 5. Odpowiednia kwerenda do pozyskania tych informacji ma postać

Ilustracja do pytania
A. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = artykuly.id;
B. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id;
C. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5;
D. SELECT nazwisko, tytul FROM autorzy, artykuly WHERE ocena == 5;
Odpowiedź SELECT nazwisko tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5; jest poprawna ponieważ precyzyjnie wykorzystuje konstrukcję SQL do połączenia tabel Autorzy i Artykuly. JOIN łączy te tabele na podstawie klucza obcego autorzy_id w tabeli Artykuly który odpowiada kluczowi głównemu id w tabeli Autorzy. To pozwala na uzyskanie pełnej informacji o autorach i ich artykułach. Klauzula WHERE ocena = 5 filtruje wyniki i zwraca jedynie te które mają ocenę równą 5. Jest to standardowe podejście w SQL do pobierania danych na podstawie określonych kryteriów co jest bardzo efektywne w zarządzaniu dużymi zbiorami danych. Praktyczne zastosowanie tego typu kwerend obejmuje na przykład systemy rekomendacji artykułów gdzie tylko dobrze ocenione treści są pokazywane użytkownikom. Stosowanie takich kwerend zgodnie z najlepszymi praktykami pozwala na utrzymanie wydajności bazy danych oraz na zapewnienie integralności danych co jest kluczowe w profesjonalnym zarządzaniu bazami danych.

Pytanie 10

W CSS wartości takie jak: underline, overline, line-through oraz blink odnoszą się do właściwości

A. font-decoration
B. text-decoration
C. font-style
D. text-align
Właściwość CSS 'text-decoration' jest używana do określenia dekoracji tekstu. Do jej wartości zaliczają się między innymi: 'underline' (podkreślenie), 'overline' (nadpisanie), 'line-through' (przekreślenie) oraz 'blink' (miganie), chociaż ostatnia z nich jest obecnie rzadko używana z powodu problemów z dostępnością i wsparciem w nowoczesnych przeglądarkach. W praktyce, użycie 'text-decoration' pozwala na poprawę czytelności tekstu oraz jego wyróżnienie w kontekście estetyki strony internetowej. Na przykład, stosując 'text-decoration: underline;' możemy podkreślić linki, co jest powszechną praktyką w projektowaniu stron. Zgodnie z wytycznymi W3C, stosowanie dekoracji tekstu powinno być przemyślane, aby nie wprowadzać zamieszania w interpretacji treści przez użytkowników. Przykładowo, nadpisanie może być użyte w kontekście wskazywania błędów, co wprowadza dodatkowe znaczenie do przekazu. Zrozumienie i umiejętne stosowanie 'text-decoration' jest kluczowe dla tworzenia profesjonalnych i funkcjonalnych interfejsów użytkownika.

Pytanie 11

Podczas edytowania grafiki w programie do obróbki grafiki rastrowej należy usunąć kolory z obrazu, aby uzyskać wersję w odcieniach szarości. Do osiągnięcia tego efektu można wykorzystać funkcję

A. szumu RGB
B. kadrowania
C. desaturacji
D. filtru rozmycia
Kadrowanie to proces, który polega na przycinaniu obrazu, zmieniając jego rozmiar i proporcje, co nie ma związku z eliminacją kolorów. Choć kadrowanie może poprawić kompozycję zdjęcia, nie wpływa na jego kolorystyczną zawartość. Szum RGB odnosi się do niepożądanych artefaktów w obrazie, które mogą być wynikiem zakłóceń w sygnale podczas skanowania lub przetwarzania obrazu. Szum nie jest techniką edycyjną, lecz problemem, który można zredukować za pomocą filtrów, ale nie eliminuje kolorów. Filtr rozmycia jest narzędziem służącym do wygładzania krawędzi i detali w obrazie, co przyczynia się do uzyskania miękkiego efektu. Rozmycie nie usuwa kolorów, a jedynie modyfikuje ich widoczność poprzez rozprzestrzenianie pikseli, co może prowadzić do utraty szczegółów, ale nie ma na celu uzyskania odcieni szarości. W związku z tym, żadna z tych metod nie jest odpowiednia do osiągnięcia efektu desaturacji, który jest kluczowy dla konwersji obrazu do formy monochromatycznej.

Pytanie 12

W języku SQL używanym przez bazę danych MySQL atrybut UNIQUE w poleceniu CREATE TABLE

A. wymusza niepowtarzalne nazwy kolumn tabeli
B. uniemożliwia wprowadzenie wartości NULL
C. jest stosowany jedynie w przypadku kolumn liczbowych
D. jest używany, jeżeli wartości w danej kolumnie nie mogą się powtarzać
Atrybut UNIQUE w poleceniu CREATE TABLE w języku SQL dla bazy danych MySQL jest kluczowym elementem, który zapewnia, że wartości w danej kolumnie są unikalne dla każdego rekordu w tabeli. Oznacza to, że nie może istnieć więcej niż jeden rekord z taką samą wartością w kolumnie oznaczonej tym atrybutem. Dzięki temu, gdy projektujemy bazę danych, możemy zagwarantować integralność danych oraz ich spójność, co jest szczególnie istotne w przypadku kluczowych informacji, jak identyfikatory użytkowników czy numery seryjne produktów. Na przykład, jeżeli mamy tabelę użytkowników z kolumną 'email', możemy zastosować atrybut UNIQUE, aby upewnić się, że każdy użytkownik ma unikalny adres e-mail. W praktyce, jeżeli spróbujemy wprowadzić dwa rekordy z tym samym adresem e-mail, baza danych zgłosi błąd. Warto zauważyć, że atrybut UNIQUE pozwala na wprowadzenie wartości NULL, o ile nie ma innych wartości w danej kolumnie. Zgodnie z zasadami normalizacji danych, stosowanie atrybutu UNIQUE jest standardowym podejściem do zapewnienia jakości danych i ich unikalności w systemach zarządzania bazami danych.

Pytanie 13

Aby zrealizować łamanie linii w tekście, na przykład w zmiennej typu string, należy wykorzystać symbol

A. n
B. slash
C. b
D. t
Aby zdefiniować łamanie linii tekstu w zmiennych napisowych, stosuje się znak "n" (newline), który jest często reprezentowany jako \n w kodzie. Jest to standardowy sposób na wprowadzenie nowej linii w wielu językach programowania, na przykład w Pythonie, C, czy JavaScript. Użycie znaku \n pozwala na formatowanie tekstu w sposób czytelny, dzieląc dłuższe ciągi na mniejsze fragmenty, co poprawia jego przejrzystość. W praktyce, gdy chcemy stworzyć wieloliniowy tekst, stosujemy \n, aby oddzielić poszczególne wiersze, co jest kluczowe w tworzeniu raportów, komunikatów użytkownika lub w interfejsach graficznych. Dobrą praktyką jest również pamiętanie o kontekście, w jakim używamy łamania linii, gdyż różne systemy operacyjne mogą mieć różne konwencje dotyczące znaków końca linii (np. w systemie Windows używa się kombinacji \r\n). Zrozumienie tego mechanizmu jest istotne dla każdego programisty, by skutecznie zarządzać formatowaniem tekstu oraz jego prezentacją.

Pytanie 14

Zapis CSS w postaci: ```ul{ list-style-image:url('rys.gif');}``` spowoduje, że na stronie internetowej

A. każdy element listy zyska indywidualne tło pochodzące z grafiki rys.gif
B. rysunek rys.gif zostanie wyświetlony jako punkt listy nienumerowanej
C. rys.gif będzie służyć jako tło dla nienumerowanej listy
D. punktorem nienumerowanej listy stanie się rys.gif
Podane odpowiedzi, które sugerują alternatywne interpretacje, nie są zgodne z rzeczywistością techniczną CSS. Przede wszystkim, twierdzenie, że rys.gif będzie stanowił ramkę dla listy nienumerowanej, jest błędne, ponieważ właściwość 'list-style-image' nie ma wpływu na obramowanie listy, a jedynie na sposób, w jaki są wyświetlane punkty listy. CSS do definiowania obramowań używa innych właściwości, takich jak 'border'. Z kolei stwierdzenie o wyświetlaniu rysunku rys.gif jako tł listy nienumerowanej jest mylące; to nie jest tło całej listy, ale pojedyncze punkty, które zastępują tradycyjne znaczniki. Ostatnia niepoprawna odpowiedź sugeruje, że każdy punkt listy miałby osobne tło pobrane z grafiki rys.gif. Jest to błędne, ponieważ definicja tła w CSS dotyczy całego elementu, a nie poszczególnych znaczników. Aby uzyskać różne tła dla elementów listy, należałoby użyć oddzielnych właściwości CSS dla każdego z nich zamiast 'list-style-image'. Dlatego wszystkie te odpowiedzi nie uwzględniają zasadniczej funkcji właściwości CSS, jaką jest kontrolowanie wizualnych markerów listy.

Pytanie 15

W języku PHP użyto funkcji is_int). Które z wymienionych wywołań tej funkcji zwróci wartość TRUE?

A. is_int(135)
B. is_int(13.5)
C. is_int("135")
D. is_int(NULL)
Wybór is_int(135) jako poprawnej odpowiedzi jest uzasadniony, ponieważ funkcja is_int w języku PHP służy do sprawdzania, czy zmienna jest typu całkowitego (integer). W tym przypadku 135 jest liczbą całkowitą, co oznacza, że funkcja zwróci wartość TRUE. Użycie is_int w praktyce jest przydatne, gdy chcemy upewnić się, że nasze dane wejściowe są odpowiedniego typu, co jest szczególnie ważne w aplikacjach, gdzie typ danych ma kluczowe znaczenie, na przykład w operacjach matematycznych czy przy interakcji z bazą danych. Dobrą praktyką jest zawsze walidowanie danych, aby uniknąć potencjalnych błędów i zapewnić stabilność aplikacji. Ponadto, w PHP typy są dynamiczne, co sprawia, że błędne typy danych mogą prowadzić do trudnych do zdiagnozowania błędów, dlatego stosowanie is_int może znacząco poprawić jakość kodu i jego bezpieczeństwo. Przykładowo, przed wykonaniem operacji arytmetycznych na wartościach przekazanych z formularza, warto sprawdzić, czy są one typu integer, aby zapobiec niepożądanym zachowaniom programu.

Pytanie 16

Kolor zdefiniowany kodem RGB o wartości rgb(128, 16, 8) w formacie szesnastkowym przyjmuje wartość

A. #800F80
B. #FF0F80
C. #FF1008
D. #801008
Odpowiedzi takie jak #FF1008, #800F80 i #FF0F80 są wynikiem błędnych konwersji wartości RGB do formatu szesnastkowego. Gdybyśmy przyjrzeli się pierwszej z tych odpowiedzi, widzimy, że wartość 'FF' oznacza 255 w systemie dziesiętnym, co nie odpowiada wartości 128 w kanale czerwonym tego koloru. Zastosowanie 'FF' w tym kontekście prowadzi do znacznego przeszacowania intensywności koloru czerwonego. Przechodząc do drugiej odpowiedzi, #800F80, wartość '0F' odpowiada 15, co również nie jest zgodne z pierwotną wartością 16 w kanale zielonym. To wskazuje na niedoszacowanie intensywności zielonej, co wpływa na percepcję koloru. Ostatnia odpowiedź, #FF0F80, znowu używa 'FF' w kanale czerwonym, co prowadzi do podobnych błędów jak w pierwszym przypadku. Kluczowym błędem, który można zidentyfikować w tych odpowiedziach, jest nieprawidłowe przeliczenie wartości RGB do formatu szesnastkowego, co jest powszechnym problemem dla osób, które nie są zaznajomione z konwersją systemów liczbowych. W praktyce, aby uniknąć takich pomyłek, warto korzystać z narzędzi online lub specjalistycznego oprogramowania, które automatycznie wykonuje te konwersje, co pozwala na zaoszczędzenie czasu i zminimalizowanie ryzyka błędów.

Pytanie 17

Skrypt stworzony w języku JavaScript wyznacza cenę promocyjną dla swetrów w barwach: zielonej, niebieskiej (zmienna kolor) przy wydatkach przekraczających 200 zł (zmienna zakupy). Warunek niezbędny do obliczeń powinien być zapisany z użyciem wyrażenia logicznego?

A. zakupy > 200 || kolor == 'zielony' || kolor == 'niebieski'
B. zakupy > 200 && kolor == 'zielony' && kolor == 'niebieski'
C. zakupy > 200 || (kolor == 'zielony' && kolor == 'niebieski')
D. zakupy > 200 && (kolor == 'zielony' || kolor == 'niebieski')
Odpowiedź zakupy > 200 && (kolor == 'zielony' || kolor == 'niebieski') jest poprawna, ponieważ dokładnie spełnia warunki opisane w pytaniu. Wyrażenie logiczne składa się z dwóch głównych części: sprawdzenia, czy wartość zmiennej zakupy jest większa niż 200 oraz sprawdzenia, czy zmienna kolor jest równa 'zielony' lub 'niebieski'. Użycie operatora logicznego '&&' (AND) w połączeniu z '||' (OR) pozwala na zdefiniowanie warunków, które muszą być spełnione, aby uzyskać cenę promocyjną. Przykładowo, jeśli użytkownik kupi sweter za 250 zł w kolorze zielonym, warunek będzie prawdziwy, a cena promocyjna zostanie zastosowana. W kontekście standardów programistycznych, taka konstrukcja jest zgodna z najlepszymi praktykami pisania czytelnego i efektywnego kodu w JavaScript, gdzie zrozumiałość i logika wyrażeń warunkowych są kluczowe dla utrzymania i rozwoju aplikacji.

Pytanie 18

W instrukcji CREATE TABLE zastosowanie klauzuli PRIMARY KEY przy definiowaniu pola tabeli spowoduje, że to pole stanie się

A. kluczem obcym
B. indeksem klucza
C. indeksem unikalnym
D. kluczem podstawowym
Użycie klauzuli PRIMARY KEY w instrukcji CREATE TABLE oznacza, że pole, do którego jest ona przypisana, stanie się kluczem podstawowym tabeli. Klucz podstawowy to atrybut lub zbiór atrybutów, które jednoznacznie identyfikują każdy rekord w tabeli. Klucz podstawowy musi być unikalny dla każdego rekordu oraz nie może zawierać wartości NULL. Na przykład, w tabeli użytkowników, pole 'user_id' często pełni rolę klucza podstawowego, co pozwala na jednoznaczne odnalezienie informacji o każdym użytkowniku. Stosowanie kluczy podstawowych jest zgodne z najlepszymi praktykami w projektowaniu baz danych, ponieważ zapewnia integralność danych oraz umożliwia efektywne indeksowanie i wyszukiwanie informacji. Dodatkowo, klucze podstawowe mogą być używane w relacjach z innymi tabelami jako klucze obce, co ułatwia tworzenie powiązań między danymi. Klucz podstawowy jest zatem fundamentem struktury danych w bazie, co potwierdzają standardy SQL oraz normy projektowania baz danych.

Pytanie 19

Jakie oznaczenie powinno się zastosować, aby umieścić film na stronie internetowej?

A. <audio>
B. <movie>
C. <video>
D. <media>
Znacznik <video> jest właściwym elementem HTML używanym do osadzania filmów na stronach internetowych. Jest on częścią standardu HTML5, który wprowadził nowoczesne podejścia do multimediów w sieci. Umożliwia on nie tylko osadzanie wideo, ale także dostosowywanie jego odtwarzania, takie jak automatyczne odtwarzanie, powtarzanie oraz kontrolowanie głośności. Przykład użycia znacznika <video>: <video src='film.mp4' controls>Odtwarzacz wideo</video>. Warto również dodać atrybuty, takie jak 'controls', które dodają przyciski do odtwarzania, pauzowania i regulacji głośności, co znacząco poprawia użyteczność dla użytkowników. Dobrą praktyką jest również używanie atrybutu 'poster' do określenia miniatury, która będzie wyświetlana przed rozpoczęciem odtwarzania, co przyciąga uwagę i zwiększa estetykę strony. Znacznik <video> wspiera różne formaty plików, takie jak MP4, WebM i Ogg, co zapewnia szeroką kompatybilność z różnymi przeglądarkami internetowymi, co jest kluczowe w dzisiejszym zróżnicowanym środowisku online.

Pytanie 20

Deklarując var x="true"; w języku JavaScript, jakiego typu zmienną się tworzy?

A. logicznym
B. nieokreślonym (undefined)
C. string (ciąg znaków)
D. liczbowym
W języku JavaScript, deklaracja zmiennej za pomocą var x="true"; tworzy zmienną o typie string, co oznacza, że jest to ciąg znaków. Wartość "true" w tym przypadku jest interpretowana dosłownie jako tekst i nie ma związku z wartością logiczną typu boolean, która również może być używana w JavaScript. Typ string jest jednym z podstawowych typów danych w tym języku i jest używany do reprezentowania tekstu. Zmienne typu string mogą zawierać litery, cyfry oraz znaki specjalne i są otaczane cudzysłowami, jak w tym przypadku. W praktyce programiści często używają stringów do przechowywania danych wejściowych od użytkowników, komunikatów oraz wszelkiego rodzaju informacji tekstowych. Warto zauważyć, że w ECMAScript 6 (ES6) wprowadzono również let oraz const do deklaracji zmiennych, ale zasada dotycząca typów danych pozostaje taka sama. Należy także zwrócić uwagę, że typy danych w JavaScript są dynamiczne, co oznacza, że można przypisać różne typy wartości do tej samej zmiennej w różnych momentach. Na przykład, po przypisaniu stringa, możemy przypisać liczbę lub obiekt do tej samej zmiennej, co pokazuje elastyczność JavaScriptu jako języka programowania.

Pytanie 21

Jakiego zdarzenia należy użyć, aby funkcja JavaScript była uruchamiana za każdym razem, gdy użytkownik wprowadzi jakikolwiek znak w polu edycji?

A. onload
B. onclick
C. onmouseout
D. onkeydown
Odpowiedź 'onkeydown' jest poprawna, ponieważ to zdarzenie jest wywoływane za każdym razem, gdy użytkownik naciśnie klawisz na klawiaturze, a zatem idealnie nadaje się do sytuacji, gdy chcemy reagować na wprowadzanie tekstu w polu edycji. W praktyce oznacza to, że nasza funkcja może być użyta do natychmiastowego przetwarzania danych wprowadzanych przez użytkownika, co jest szczególnie istotne w przypadku dynamicznych interfejsów użytkownika. Na przykład, możemy wykorzystać 'onkeydown' do implementacji funkcji autouzupełniania, gdzie na bieżąco prezentujemy możliwe opcje na podstawie wprowadzanego tekstu. Dobrą praktyką jest również umieszczanie dodatkowych warunków, aby nasza funkcja nie była wywoływana dla klawiszy, które nie mają znaczenia dla wprowadzania tekstu, takich jak klawisze funkcyjne czy kombinacje klawiszy. Warto również zrozumieć, że istnieją inne zdarzenia, takie jak 'input', które mogą być użyte w podobnym kontekście, ale 'onkeydown' daje bardziej bezpośrednią kontrolę nad interakcją użytkownika.

Pytanie 22

W języku JavaScript, aby zweryfikować, czy liczba leży w zakresie 100,200>, należy użyć:

A. if(liczba<100 && liczba<=200)
B. if (liczba>100 || liczba<=200)
C. if(liczba<100 || liczba>=200)
D. if(liczba>100 && liczba <=200)
Aby sprawdzić, czy liczba znajduje się w przedziale od 100 do 200 włącznie w języku JavaScript, należy użyć operatora logicznego AND (&&). Wyrażenie if(liczba > 100 && liczba <= 200) oznacza, że liczba musi być większa niż 100 oraz jednocześnie mniejsza lub równa 200. Przykład: jeśli mamy liczby 150 i 250, to 150 spełnia warunki tego warunku (jest większa od 100 i mniejsza lub równa 200), podczas gdy 250 nie spełnia (jest większa od 200). Kluczowe jest zrozumienie operatorów porównania oraz logicznych w JavaScript. Zgodnie z ECMAScript, językiem, na którym oparty jest JavaScript, użycie operatora AND w tym kontekście jest standardowym podejściem do określenia, czy wartość znajduje się w danym przedziale. Poprawne użycie tych operatorów jest istotne dla logiki programów oraz dostosowywania warunków do różnych sytuacji, co jest niezbędne w codziennej pracy programisty.

Pytanie 23

Jaki jest wynik wykonania pętli for w poniższym kodzie PHP, jeśli chodzi o wypisanie liczb?

<?php
for($i=5; $i>1; $i-=2)
echo (
$i%2) . " " ;
?
>
A. 1 0 1 0
B. 1 0 1
C. 1 0
D. 1 1
Analizując inne odpowiedzi zwróćmy uwagę na błędy w logice pętli i operacji modulo które mogą prowadzić do błędnych wyników. Jedną z częstych pomyłek jest niedokładne zrozumienie działania operatora % który zwraca resztę z dzielenia. W kontekście pętli for ważne jest zrozumienie że zmienna kontrolująca i jest modyfikowana zgodnie z określonym krokiem tutaj i -= 2 co oznacza że i zmniejsza się o 2 w każdej iteracji pętli. Niepoprawne odpowiedzi mogą wynikać z założenia że pętla wykonuje się dla innych wartości i niż te faktycznie użyte. Na przykład wynik 1 0 1 0 sugeruje błędne założenie o nieparzystym kroku lub innej inicjalizacji zmiennej i. Możliwe że interpretacja warunku końcowego i > 1 nie została właściwie zrozumiana co prowadzi do założenia że pętla trwa dłużej niż powinna. Innym błędem może być zaniedbanie uwzględnienia kolejności wykonania instrukcji w ciele pętli. Zapominanie o dokładnym zrozumieniu jak działa i jest modyfikowane w każdej iteracji pętli może prowadzić do oczekiwania niepoprawnych wyników. Edukacyjnie ważne jest upewnienie się że każdy krok pętli jest dokładnie przeanalizowany a wynik działania operatora modulo jest zawsze przewidywalnie interpretowany w ramach iteracji pętli. Zrozumienie tych zasad jest kluczowe w pisaniu wydajnego i bezbłędnego kodu w PHP i innych językach programowania.

Pytanie 24

W JavaScript stworzono funkcję o nazwie licz_pitagoras, która oblicza długość przeciwprostokątnej w trójkącie prostokątnym, zgodnie z twierdzeniem Pitagorasa. Funkcja przyjmuje dwa parametry wejściowe i zwraca wynik. Poprawne wywołanie tej funkcji, wraz z uzyskaniem zwróconej wartości, będzie miało formę

A. licz_pitagoras(a, b, c);
B. licz_pitagoras(a, b);
C. licz_pitagoras(a, b) = c;
D. c = licz_pitagoras(a, b);
Odpowiedź 'c = licz_pitagoras(a, b);' jest poprawna, ponieważ przedstawia sposób wywołania funkcji oraz przypisania jej wyniku do zmiennej. W języku JavaScript, aby skorzystać z funkcji, należy najpierw ją wywołać, a następnie, w przypadku gdy funkcja zwraca wartość, możemy tę wartość przypisać do zmiennej. W tym przypadku, funkcja 'licz_pitagoras' przyjmuje dwa argumenty, które odpowiadają długościom dwóch przyprostokątnych w trójkącie prostokątnym i zwraca długość przeciwprostokątnej, obliczoną na podstawie wzoru a^2 + b^2 = c^2. Przykład praktyczny to wykorzystanie tej funkcji w aplikacji, która oblicza długości boków trójkątów, co jest przydatne w różnych dziedzinach, takich jak inżynieria czy architektura. Warto pamiętać o dobrej praktyce, aby nazwy funkcji były opisowe, co ułatwia zrozumienie ich funkcji bez potrzeby zagłębiania się w implementację.

Pytanie 25

W języku JavaScript zamieszczony poniżej fragment funkcji ma na celu

wynik = 0;
for (i = 0; i < tab.length; i++) {
wynik += tab[i];
}
A. wyświetlenie wszystkich elementów tablicy
B. wprowadzenie do każdego elementu tablicy bieżącej wartości zmiennej i
C. policzenie sumy wszystkich elementów tablicy
D. dodanie stałej wartości do każdego elementu tablicy
Podany fragment kodu w języku JavaScript pokazuje klasyczną strukturę pętli for, która pozwala na przejście przez wszystkie elementy tablicy i wykonanie na nich określonych operacji. W tym przypadku celem pętli jest zsumowanie wszystkich elementów tablicy. Zmienna wynik jest inicjalizowana wartością 0, co jest dobrą praktyką programistyczną, aby zapewnić prawidłowe działanie sumowania. Pętla iteruje przez każdy element tablicy tab przy pomocy zmiennej i, która pełni rolę indeksu. Przy każdej iteracji do zmiennej wynik dodawana jest wartość bieżącego elementu tablicy tab[i]. Po zakończeniu pętli zmienna wynik będzie zawierać sumę wszystkich elementów tablicy. Takie podejście jest podstawą wielu algorytmów przetwarzających dane tablicowe i ilustruje ważny koncept iteracyjnego przetwarzania danych. Warto również wspomnieć, że takie podstawowe operacje jak to sumowanie mogą być zastosowane w wielu dziedzinach takich jak analiza danych obliczenia statystyczne czy przetwarzanie dużych zbiorów danych w systemach komputerowych co czyni je niezwykle wartościowymi w praktyce zawodowej

Pytanie 26

Czy automatyczna weryfikacja właściciela witryny korzystającej z protokołu HTTPS jest możliwa dzięki

A. certyfikatowi SSL
B. danym kontaktowym zamieszczonym na stronie
C. informacjom whois
D. prywatnym kluczom
Wybór kluczy prywatnych jako odpowiedzi na pytanie o automatyczną weryfikację właściciela strony jest mylący, ponieważ klucze te stanowią część infrastruktury kryptograficznej, ale nie są instrumentem do weryfikacji tożsamości właściciela serwisu. Klucz prywatny jest używany do szyfrowania i podpisywania danych, co jest krytyczne dla bezpieczeństwa komunikacji, ale sam w sobie nie jest narzędziem do potwierdzania, że dany serwis internetowy należy do konkretnego właściciela. Z drugiej strony, dane WHOIS są publicznie dostępnymi informacjami o rejestracji domeny, które mogą zawierać informacje o właścicielu, jednak nie są one weryfikowane w czasie rzeczywistym przez protokoły związane z HTTPS. To oznacza, że mogą być one nieaktualne lub niepoprawne, co czyni je niewystarczającymi do potwierdzenia tożsamości witryny. Odpowiedzi dotyczące danych kontaktowych na stronie również nie odpowiadają na pytanie o automatyczną weryfikację, ponieważ takie dane mogą być łatwo manipulowane lub niedokładne. W kontekście dobrych praktyk i standardów branżowych, kluczowym narzędziem do zagwarantowania integralności oraz autentyczności serwisu jest certyfikat SSL, który przeprowadza rygorystyczne procesy weryfikacyjne przed jego wydaniem, zapewniając w ten sposób realną ochronę dla użytkowników i właścicieli witryn. Izolując kwestie techniczne, automatyczna weryfikacja właściciela strony, która opiera się na zaufanych certyfikatach, jest fundamentalnym elementem budowania bezpieczeństwa w sieci.

Pytanie 27

Który format graficzny najlepiej nadaje się do zapisu obrazu z przezroczystością do zastosowania w serwisie internetowym?

A. PNG
B. JPG
C. SVG
D. BMP
Format PNG (Portable Network Graphics) jest najlepszym wyborem do zapisu obrazów z przezroczystością przeznaczonych na strony internetowe. PNG obsługuje przezroczystość alpha, co oznacza, że można uzyskać dowolny stopień przezroczystości na pikselach, co jest szczególnie przydatne w przypadku grafik wymagających gładkich przejść lub cieni. Dzięki temu grafiki mogą być umieszczane na różnych tłach bez widocznych krawędzi, co jest kluczowe w designie stron internetowych. Warto również zauważyć, że PNG wykorzystuje kompresję bezstratną, co oznacza, że jakość obrazu nie ulega pogorszeniu podczas zapisu. W praktyce, format PNG jest idealny do logo, ikon, obrazów z tekstem oraz ilustracji, gdzie ważna jest jakość i przezroczystość. Standardy webowe, takie jak WCAG, również zalecają używanie formatów, które zapewniają dostępność, a PNG doskonale wpisuje się w te wymagania, umożliwiając tworzenie estetycznych i funkcjonalnych stron. Ponadto, wsparcie dla formatu PNG jest szerokie, co zapewnia jego uniwersalność w różnych przeglądarkach i na różnych urządzeniach.

Pytanie 28

W języku JavaScript można inaczej zapisać instrukcję a++; jako

A. a<<1;
B. a&1;
C. 1+=a;
D. a=a+1;
Odpowiedź 'a=a+1;' jest poprawna, ponieważ dokładnie odzwierciedla działanie inkrementacji w JavaScript. Operacja a++ zwiększa wartość zmiennej a o 1, co można również zapisać jako przypisanie nowej wartości do a, uzyskanej przez dodanie do niej 1. Wartości a nie można zmieniać bezpośrednio bez przypisania nowej wartości, a zapis 'a=a+1;' jasno pokazuje ten proces. W praktycznych zastosowaniach, taka forma może być używana w pętlach lub w sytuacjach, gdy potrzebujemy kontrolować, jak zmienia się wartość zmiennej. Na przykład, w iteracjach przez tablicę, zastosowanie 'a=a+1;' umożliwia elastyczne manipulowanie wartością zmiennej, co jest zgodne z zasadami programowania. Używanie operatorów przypisania, takich jak +=, to dobra praktyka, która poprawia czytelność oraz zrozumienie kodu, zwłaszcza dla mniej doświadczonych programistów, którzy mogą nie znać bardziej zaawansowanych form zapisu.

Pytanie 29

Na przedstawionej tabeli samochody wykonano zapytanie SQL SELECT

SELECT model FROM samochody WHERE rocznik = 2016;
idmarkamodelrocznikkolorstan
1FiatPunto2016czerwonybardzo dobry
2FiatPunto2002czerwonydobry
3FiatPunto2007niebieskibardzo dobry
4OpelCorsa2016grafitowybardzo dobry
5OpelAstra2003niebieskiporysowany lakier
6ToyotaCorolla2016czerwonybardzo dobry
7ToyotaCorolla2014szarydobry
8ToyotaYaris2004granatowydobry
A. Punto, Corsa, Astra, Corolla, Yaris.
B. Fiat, Opel, Toyota.
C. Punto, Corsa, Corolla.
D. Czerwony, grafitowy.
Twoja odpowiedź jest prawidłowa. Zapytanie SQL 'SELECT model FROM samochody WHERE rocznik = 2016' miało na celu wydobycie informacji o modelach samochodów z rocznika 2016 z tabeli 'samochody'. SQL (Structured Query Language) jest standardowym językiem służącym do manipulowania danymi w bazach danych. W tym przypadku, użyliśmy klauzuli WHERE do nakierowania zapytania na konkretne rekordy - te, dla których wartość w kolumnie 'rocznik' to 2016. Dlatego też poprawna odpowiedź to 'Punto, Corsa, Corolla', ponieważ to właśnie te modele samochodów są z rocznika 2016. To jest praktyczne zastosowanie zapytań SQL - pozwalają one na filtrowanie danych na podstawie konkretnych kryteriów. Dobrym zwyczajem jest tworzenie zapytań SQL, które są jak najbardziej precyzyjne, co przekłada się na efektywność i wydajność pracy z bazą danych.

Pytanie 30

Który zapis w języku JavaScript daje taki sam wynik jak poniższy kod?

x = 0;
x += 10;
A. x = 10; x = 0
B. x = 10; x = x + 10
C. x = 0; x--; x *= 9
D. x = 0; x++; x = x + 9
Analiza odpowiedzi prowadzi do zrozumienia, że w niektórych przypadkach programiści mogą mieć trudności z interpretacją operacji na zmiennych. W przypadku pierwszej z niepoprawnych odpowiedzi, x = 0; x--; x *= 9; prowadzi to do innej logiki. Po przypisaniu x = 0, użycie x-- zmienia wartość x na -1, a następnie mnożenie przez 9 skutkuje -9, co nie ma nic wspólnego z oczekiwaną wartością 10. To pokazuje, jak nieprawidłowe zrozumienie podstawowych operacji arytmetycznych może prowadzić do błędów. W drugiej niepoprawnej odpowiedzi, x = 10; x = x + 10; przypisanie 10 do x oraz dodanie 10 do x daje wartość 20, co również jest dalekie od oczekiwanego wyniku. Takie nieprawidłowe podejście do operacji przypisania i dodawania może być wynikiem niedostatecznej znajomości reguł działania operatorów w JavaScript. Wreszcie, ostatnia odpowiedź, x = 10; x = 0; jest sprzeczna sama w sobie, ponieważ po przypisaniu 10, nadpisanie wartości na 0 bez żadnej operacji arytmetycznej skutkuje wartością 0, co jest jeszcze bardziej mylące. Wnioskując, kluczowe jest zrozumienie, jak działają operatory w JavaScript oraz unikanie typowych pułapek wynikających z niepoprawnego łączenia przypisania i operacji arytmetycznych. Takie błędy mogą prowadzić do trudności w debugowaniu i utrzymaniu kodu, dlatego warto przestrzegać dobrych praktyk programistycznych oraz dokładnie analizować operacje na zmiennych.

Pytanie 31

Najłatwiejszym i najmniej czasochłonnym sposobem na przetestowanie działania strony internetowej w różnych przeglądarkach i ich wersjach jest

A. zainstalowanie różnych przeglądarek na kilku komputerach i testowanie strony
B. użycie emulatora przeglądarek internetowych, np. Browser Sandbox
C. sprawdzenie działania strony w programie Internet Explorer, zakładając, że inne przeglądarki będą kompatybilne
D. wykorzystanie walidatora kodu HTML
Emulatory przeglądarek internetowych, takie jak Browser Sandbox, stanowią najefektywniejsze narzędzie do testowania witryn w różnych środowiskach. Dzięki nim można symulować działanie witryny w wielu przeglądarkach oraz ich wersjach bez potrzeby fizycznej instalacji. To podejście jest zgodne z najlepszymi praktykami w zakresie testowania oprogramowania, ponieważ pozwala na oszczędność czasu i zasobów. W przypadku użycia emulatora, programiści mogą szybko przetestować i porównać, jak strona zachowuje się w różnych przeglądarkach, co jest kluczowe dla zapewnienia spójności działania i doświadczeń użytkownika. Przykładem zastosowania emulatorów jest możliwość weryfikacji responsywności witryny na różnych rozmiarach ekranów oraz dostosowanie stylów CSS dla różnych przeglądarek. To pozwala na identyfikację problemów z kompatybilnością, które mogą występować w starszych wersjach przeglądarek, a także w zapewnieniu, że nowoczesne standardy webowe są poprawnie interpretowane. Praktyczne wykorzystanie emulatorów w codziennym procesie tworzenia oprogramowania powinno być integralną częścią każdej strategii testowania, aby zapewnić optymalne działanie witryny na wszystkich platformach.

Pytanie 32

W HTML-u, aby umieścić animację FLASH w formacie .swf na stronie internetowej, należy skorzystać ze znacznika

A. <img>
B. <video>
C. <audio>
D. <object>
Aby dodać animację FLASH z rozszerzeniem .swf na stronę internetową, należy użyć znacznika <object>. Ten znacznik jest zgodny z wieloma standardami HTML i pozwala na osadzanie różnorodnych mediów, w tym plików FLASH. Użycie <object> umożliwia nie tylko wyświetlenie animacji, ale także interakcję z nią, co jest niezbędne w przypadku interaktywnych aplikacji FLASH. Warto zauważyć, że HTML5 wprowadził nowe elementy, takie jak <video> i <audio>, które są bardziej odpowiednie do obsługi multimediów w nowoczesnych aplikacjach internetowych, ale jeśli chodzi o pliki FLASH, to <object> pozostaje właściwym wyborem. Przykład użycia: <object data='animacja.swf' type='application/x-shockwave-flash' width='550' height='400'></object>. Pomimo, że wsparcie dla FLASH jest obecnie ograniczone, zrozumienie tego znacznika i jego zastosowania jest kluczowe dla pracy z większą ilością multimediów w HTML. Ponadto, zgodność z danymi standardami zapewnia, że strona będzie działać poprawnie w różnych przeglądarkach.

Pytanie 33

Jakie liczby zostaną wyświetlone jako rezultat pętli for w poniższym kodzie PHP?

A. 1 1
B. 1 0 1
C. 1 0
D. 1 0 1 0
Wybór błędnych odpowiedzi wynika z niepełnej analizy działania pętli oraz błędnych założeń dotyczących wartości zwracanych przez operację modulo. Odpowiedzi 1 0, 1 0 1 oraz 1 0 1 0 wskazują na zrozumienie, że liczby mogą mieć różne wartości modulo 2, ale z niewłaściwym przypisaniem ich do konkretnego kontekstu pętli. Wartość 0 w odpowiedzi 1 0 sugeruje, że użytkownik myśli, że $i może kiedykolwiek przyjąć wartość parzystą i wpłynąć na wynik, co jest błędne w kontekście analizowanego kodu. Liczba 5 jest liczbą nieparzystą, więc operacja modulo skutkuje 1, a 3 również jest liczbą nieparzystą, co również daje 1. Odpowiedź 1 0 1 sugeruje, że po osiągnięciu wartości $i = 1, wynik zmienia się na zero, co jest niezgodne z zasadami przetwarzania w tej pętli. Podobnie, odpowiedź 1 0 1 0 sugeruje, że w pętli mogłyby pojawić się inne wartości, podczas gdy w rzeczywistości, jak pokazuje analiza, pętla kończy się po dwóch iteracjach. Kluczowe jest zrozumienie, jak działają struktury kontrolne w programowaniu oraz jakie wyniki można otrzymać na podstawie operacji arytmetycznych. Taka analiza jest niezbędna, aby uniknąć typowych błędów związanych z operacjami na liczbach oraz wyciąganiem wniosków na temat ich właściwości.

Pytanie 34

Jakiego typu mechanizm zabezpieczeń aplikacji jest zawarty w środowisku uruchomieniowym platformy .NET Framework?

A. Mechanizm uruchamiania aplikacji zrealizowany przez frameworki aplikacji webowych (ASP.NET)
B. Mechanizm uruchamiania aplikacji realizowany przez funkcję Windows API (Application Programming Interface)
C. Mechanizm uruchamiania aplikacji dla bibliotek klas
D. Mechanizm uruchamiania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) i na rolach (RBS - Role-Based Security)
Mechanizm wykonywania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) oraz na rolach (RBS - Role-Based Security) jest kluczowym elementem platformy .NET Framework, który zapewnia odpowiedni poziom bezpieczeństwa dla aplikacji. CAS umożliwia definiowanie poziomów uprawnień dla różnych komponentów kodu, co pozwala na kontrolę, jakie operacje mogą być wykonywane przez dany kod w zależności od jego pochodzenia oraz kontekstu. Na przykład, aplikacja uruchomiona z lokalnego dysku może mieć inne uprawnienia niż ta sama aplikacja uruchomiona z internetu. RBS z kolei umożliwia przypisywanie ról użytkownikom, co pozwala na dalsze graniczenie dostępu do funkcji aplikacji w oparciu o przypisane role. Takie podejście nie tylko zabezpiecza aplikacje przed nieautoryzowanym dostępem, ale także wspiera środowiska wieloużytkownikowe, gdzie różne osoby mogą potrzebować różnych poziomów dostępu. Przykładowo, w aplikacji webowej mogą istnieć role administratora, edytora i widza, gdzie każdy z użytkowników ma różne możliwości interakcji z systemem. Zastosowanie CAS i RBS jest zgodne z najlepszymi praktykami w zakresie zabezpieczeń kodu, co jest istotne w kontekście rosnących zagrożeń w dzisiejszym świecie cyfrowym.

Pytanie 35

Zakładając, że tablica $tab zawiera liczby naturalne, co program wyświetli?

$liczba = $tab[0];
foreach ($tab as $element)
{
  if ($element > $liczba)
    $liczba = $element;
}
echo $liczba;
A. największy element tablicy
B. element tablicy o wartości $tab[0]
C. najmniejszy element tablicy
D. elementy, które przewyższają zmienną $liczba
Program w tym pytaniu ilustruje proces wyszukiwania największego elementu w tablicy za pomocą pętli foreach. Na początku zmienna $liczba jest inicjalizowana pierwszym elementem tablicy $tab. Następnie program iteruje przez wszystkie elementy tablicy i porównuje każdy z nich z aktualną wartością $liczba. Jeśli bieżący element jest większy niż $liczba, to wartość $liczba jest aktualizowana do tej większej wartości. Dzięki tej logice na końcu pętli $liczba przechowuje największy element z tablicy. Jest to zgodne z powszechnie stosowanym wzorcem projektowym polegającym na iteracyjnej aktualizacji zmiennej przechowującej ekstremalną wartość, w tym przypadku maksymalną. Taka metoda jest skuteczna i efektywna, ponieważ przeszukuje całą tablicę tylko raz, co jest operacją o złożoności czasowej O(n), gdzie n to liczba elementów w tablicy. Podejście to jest stosowane nie tylko w programach edukacyjnych, ale również w rzeczywistych projektach programistycznych, gdzie optymalne przetwarzanie danych jest kluczowe. Dobrą praktyką jest inicjalizacja zmiennej kontrolnej wartością pierwszego elementu tablicy, co unika niepotrzebnego porównywania z nieistotnymi wartościami, np. minus nieskończonością, i jest zgodne z zasadą KISS (Keep It Simple, Stupid).

Pytanie 36

Interpreter PHP zgłosi błąd i nie zrealizuje kodu, jeśli programista

A. będzie pisał kod bez odpowiednich wcięć
B. pobierze wartość z formularza, w którym pole input nie zostało wypełnione
C. będzie definiował zmienne w obrębie warunku
D. nie umieści średnika po wyrażeniu w instrukcji if, jeśli po nim występuje sekcja else
W języku PHP, średnik jest traktowany jako znak końca instrukcji. W przypadku, gdy po wyrażeniu w instrukcji 'if' następuje sekcja 'else', programista musi upewnić się, że poprawnie zakończył instrukcję 'if' średnikiem. W przeciwnym razie, interpreter PHP nie będzie w stanie poprawnie zinterpretować kodu, co prowadzi do błędu składniowego. Przykład: 'if ($a > $b) echo 'a jest większe'; else echo 'b jest większe';' jest poprawny, ponieważ średnik znajduje się po instrukcji 'if'. Jednak, jeśli napiszemy 'if ($a > $b) echo 'a jest większe' else echo 'b jest większe';', to zaowocuje to błędem, ponieważ brak średnika prowadzi do niejednoznaczności w interpretacji. Standardy PHP wymagają, aby każda instrukcja była zakończona średnikiem, co jest kluczowym elementem składni tego języka.

Pytanie 37

Aby obliczyć liczbę wszystkich wierszy w tabeli Koty, należy zastosować zapytanie:

A. SELECT COUNT(ROWNUM) FROM Koty
B. SELECT COUNT(*) FROM Koty
C. SELECT ROWNUM() FROM Koty
D. SELECT COUNT(Koty) AS ROWNUM
Poprawna odpowiedź to 'SELECT COUNT(*) FROM Koty', ponieważ to standardowy sposób zliczania wszystkich wierszy w tabeli w SQL. Funkcja COUNT(*) zlicza wszystkie wiersze, niezależnie od tego, czy zawierają wartości NULL, czy nie. Jest to najczęściej używana metoda w praktyce, ponieważ zapewnia dokładny wynik i jest także optymalizowana przez silnik baz danych, co czyni ją efektywną. Na przykład, jeśli mamy tabelę 'Koty' zawierającą różne dane o kotach, użycie tego polecenia zwróci dokładną liczbę kotów zapisanych w tej tabeli. Dobrym zwyczajem jest również korzystanie z aliasów lub konstruowania zapytań z dodatkowymi warunkami, co pozwala na bardziej złożoną analizę danych. Przy pracy z dużymi zbiorami danych, zrozumienie jak działa COUNT(*) i jego zastosowanie w kontekście innych funkcji agregujących jest kluczowe dla optymalizacji zapytań. Warto również pamiętać, że w SQL standardowym zliczanie wierszy bezpośrednio z tabeli jest znacznie bardziej efektywne i czytelne niż inne metody, co czyni tę praktykę najlepszą do stosowania w codziennej pracy z bazami danych.

Pytanie 38

Wskaż prawidłowe twierdzenie odnoszące się do zaprezentowanego kodu HTML.

<video width="640" height="480" controls>
    <source src="animacja.mp4" type="video/mp4">
</video>
A. Ścieżka do pliku jest niepoprawna, nie zawiera pełnej ścieżki.
B. Użytkownik nie będzie miał możliwości kontrolowania odtwarzania wideo.
C. Kod może nie działać w przeglądarkach, które nie wspierają HTML5.
D. Plik animacja.mp4 powinien mieć rozdzielczość 640x480 pikseli, aby można go było odtworzyć.
Pierwsze stwierdzenie sugeruje, że plik animacja.mp4 musi mieć rozdzielczość 640x480 pikseli, co jest nieprawdziwe, ponieważ atrybuty width i height w znaczniku <video> nie narzucają wymagań rozdzielczości dla samego pliku wideo, lecz jedynie definiują rozmiar ramki odtwarzacza w przeglądarce. Jeśli plik ma inną rozdzielczość, przeglądarka odpowiednio go przeskaluje. Drugie stwierdzenie, że użytkownik nie będzie miał możliwości sterowania odtwarzaniem animacji, jest błędne, ponieważ atrybut controls w znaczniku <video> dokładnie to umożliwia, dostarczając przyciski do odtwarzania, pauzowania oraz regulacji głośności. Ostatnie stwierdzenie dotyczące lokalizacji pliku jest również mylne, ponieważ kod nie wymaga ścieżki bezwzględnej dla pliku animacja.mp4. W przypadku gdy plik znajduje się w tym samym katalogu co strona HTML, wystarczy podać jego nazwę. W przeciwnym razie można zastosować ścieżkę względną, co jest zgodne z dobrymi praktykami w zakresie organizacji plików na serwerze. Te nieporozumienia mogą prowadzić do mylnych wniosków, dlatego ważne jest zrozumienie zasad działania znaczników HTML oraz podstawowych koncepcji związanych z odtwarzaniem multimediów w sieci.

Pytanie 39

W CSS wartości: underline, overline, line-through oraz blink odnoszą się do właściwości

A. font-decoration
B. text-decoration
C. font-style
D. text-align
W języku CSS właściwość text-decoration służy do definiowania stylów dekoracji tekstu. Wartości takie jak underline (podkreślenie), overline (nadkreślenie), line-through (przekreślenie) oraz blink (miganie) są częścią tej właściwości i umożliwiają programistom kontrolowanie, jak tekst jest prezentowany na stronie internetowej. Wartość underline, na przykład, jest powszechnie używana w linkach, aby wskazać, że są one klikalne. Przykład zastosowania: 'text-decoration: underline;' zastosowany w stylach CSS dla elementu <a> sprawia, że tekst linku jest podkreślony. Overline może być używane do dodawania linii nad tekstem, co może być przydatne w kontekście nagłówków lub wyróżnień. Wartość line-through jest często stosowana w przypadku prezentowania informacji o promocjach, gdzie oryginalna cena jest przekreślona. Wartość blink, choć nie jest już szeroko wspierana, mogła być używana w przeszłości do tworzenia efektu migania tekstu. Wszystkie te dekoracje są zdefiniowane w standardzie CSS, co czyni text-decoration kluczową właściwością w stylizacji tekstu w dokumentach HTML.

Pytanie 40

Aby włączyć kaskadowy arkusz stylów zapisany w pliku zewnętrznym, należy zastosować poniższy fragment kodu HTML

A. &lt;div id=&quot;styl.css&quot; relation=&quot;css&quot; /&gt;
B. &lt;optionvalue=&quot;styl.css&quot; type=&quot;text/css&quot; /&gt;
C. &lt;meta charset=&quot;styl.css&quot; /&gt;
D. &lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;styl.css&quot; /&gt;
Poprawna odpowiedź to <link rel="stylesheet" type="text/css" href="styl.css" />. Ten fragment kodu HTML jest standardowym sposobem dołączania zewnętrznych arkuszy stylów do dokumentu HTML. Atrybut 'rel' określa relację pomiędzy dokumentem a zewnętrznym plikiem, w tym przypadku jest to 'stylesheet', co informuje przeglądarkę, że plik ma zawierać style CSS. Atrybut 'type' wskazuje typ zawartości, a 'href' zawiera ścieżkę do pliku CSS, w tym przypadku 'styl.css'. Zewnętrzne arkusze stylów są zalecane, ponieważ umożliwiają oddzielenie treści od stylizacji, co jest zgodne z zasadą separacji obowiązków w inżynierii oprogramowania. Umożliwia to łatwe zarządzanie i aktualizowanie stylów bez konieczności modyfikowania samego HTML-a. Przykładem zastosowania może być stworzenie pliku styl.css, który zawiera wszystkie style dla danej strony, co pozwala na ponowne wykorzystanie tych samych stylów w różnych częściach serwisu, co zwiększa spójność i ułatwia utrzymanie kodu.