Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 23 kwietnia 2026 21:01
  • Data zakończenia: 23 kwietnia 2026 21:06

Egzamin niezdany

Wynik: 12/40 punktów (30,0%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Język HTML posiada nagłówki, które służą do tworzenia hierarchii treści. Nagłówki te występują tylko w zakresie

A. h1 – h8
B. h1 – h6
C. h1 – h4
D. h1 – h10
Odpowiedź h1 – h6 jest poprawna, ponieważ język HTML udostępnia sześć poziomów nagłówków, od h1 do h6, które służą do tworzenia hierarchii treści na stronie internetowej. Nagłówek h1 jest najważniejszy i powinien być używany do oznaczenia głównego tytułu strony, podczas gdy h2, h3, h4, h5 i h6 wskazują na kolejne poziomy nagłówków, które pomagają w organizacji treści. Przykładowo, nagłówek h2 może być używany do sekcji, natomiast h3 może oznaczać podsekcje w ramach danej sekcji. Używanie nagłówków w ten sposób nie tylko poprawia czytelność i zrozumienie treści przez użytkowników, ale także pozytywnie wpływa na SEO (optymalizację dla wyszukiwarek). Warto pamiętać, że zgodnie z najlepszymi praktykami, powinno się unikać pomijania poziomów nagłówków, co zapewnia logiczną strukturę treści i ułatwia indeksację przez roboty wyszukiwarek.

Pytanie 2

Która z poniższych zasad nie przyczyni się pozytywnie do poprawy czytelności kodu?

A. Nazwy zmiennych muszą odzwierciedlać ich funkcję
B. Kod powinien być napisany bez wcięć i zbędnych przejść do nowej linii
C. Każda linia kodu powinna zawierać jedynie jedną instrukcję
D. Należy dodawać komentarze w bardziej skomplikowanych fragmentach kodu
Odpowiedź, że kod powinien być napisany bez wcięć i zbędnych enterów jest prawidłowa, ponieważ brak odpowiedniego formatowania negatywnie wpływa na czytelność kodu. Wcięcia są kluczowe w wielu językach programowania, takich jak Python, gdzie struktura kodu jest oparta na przestrzeniach, a nie na nawiasach. Wcięcia pomagają zaznaczyć hierarchię oraz zagnieżdżenie bloków kodu, co jest niezbędne do zrozumienia logiki działania programu. W praktyce, dobrze sformatowany kod, z użyciem wcięć i odpowiednich przerw, pozwala programistom szybko zrozumieć jego strukturę i funkcjonalność. Przykładem mogą być fragmenty kodu, gdzie funkcje są wyraźnie oddzielone od siebie, a pętle i warunki są poprawnie wcięte, co ułatwia ich analizę i modyfikację. Zgodnie z konwencjami PEP 8 dla Pythona oraz zasadami wielu innych języków, stosowanie wcięć oraz przestrzeni między blokami kodu to standardy, które znacznie poprawiają jakość kodu oraz jego czytelność.

Pytanie 3

W języku PHP zapisano fragment kodu. Plik cookie utworzony przy pomocy tego polecenia

setcookie("osoba", "Anna Kowalska", time()+(3600*24));
A. będzie przechowywany na serwerze przez jedną godzinę
B. będzie przechowywany na serwerze przez 24 godziny
C. zostanie usunięty po jednej godzinie od momentu jego utworzenia
D. zostanie usunięty po 24 godzinach od jego stworzenia
W języku PHP funkcja setcookie służy do ustawiania plików cookie w przeglądarce użytkownika. Trzeci parametr tej funkcji określa czas wygaśnięcia cookie w postaci znacznika czasowego UNIX co oznacza liczbę sekund od początku epoki UNIX (01.01.1970). W podanym kodzie użyto funkcji time która zwraca aktualny czas w sekundach i dodano do niego wartość 3600 pomnożoną przez 24. Oznacza to dodanie liczby sekund odpowiadającej jednemu pełnemu dniu (24 godziny x 3600 sekund na godzinę). Takie ustawienie skutkuje tym że plik cookie zostanie usunięty automatycznie z przeglądarki użytkownika po upływie dokładnie jednego dnia od jego stworzenia. Jest to zgodne z najlepszymi praktykami zarządzania sesjami i danymi użytkowników w aplikacjach internetowych ponieważ pozwala na kontrolę nad czasem przechowywania danych wrażliwych. Dzięki temu użytkownicy mogą być pewni że ich dane nie będą przechowywane dłużej niż to konieczne co wpływa na zwiększenie bezpieczeństwa i zaufania do aplikacji.

Pytanie 4

Ustalenie klucza obcego jest konieczne do skonstruowania

A. transakcji
B. relacji 1..1
C. relacji 1..n
D. klucza podstawowego
Zdefiniowanie klucza obcego nie jest bezpośrednio związane z relacjami 1..1, transakcjami czy kluczem podstawowym, ponieważ każde z tych pojęć odnosi się do innego aspektu zarządzania danymi w relacyjnych bazach danych. W przypadku relacji 1..1, każdemu rekordowi w jednej tabeli odpowiada dokładnie jeden rekord w drugiej tabeli, co oznacza, że nie ma potrzeby stosowania klucza obcego, gdyż relacja ta nie wymaga wskazywania powiązań między różnymi rekordami. Ponadto, transakcje są zbiorem operacji, które muszą być wykonane w całości lub wcale, a klucz obcy nie ma bezpośredniego wpływu na ich działanie - klucze obce służą głównie do zapewnienia integralności danych, a nie do zarządzania transakcjami. Klucz podstawowy, z drugiej strony, to unikalny identyfikator każdego rekordu w tabeli, a jego definicja jest odrębna od definicji klucza obcego. W praktyce, pomylenie tych pojęć prowadzi do błędnych wniosków o strukturyzacji danych oraz ich relacjach, co może skutkować nieefektywnym projektowaniem baz danych oraz trudnościami w późniejszym zarządzaniu danymi.

Pytanie 5

W tabeli artykuly przeprowadzono poniższe operacje związane z uprawnieniami użytkownika jan.

GRANT ALL PRIVILEGES ON artykuły TO jan
REVOKE SELECT, UPDATE ON artykuly FROM jan

Jakie będą uprawnienia użytkownika jan po wykonaniu tych operacji?

A. aktualizowania informacji oraz przeglądania tabeli
B. przeglądania tabeli
C. tworzenia tabeli oraz aktualizowania danych w niej
D. tworzenia tabel oraz ich zapełniania danymi
Wybór odpowiedzi dotyczącej "aktualizowania danych i przeglądania tabeli" nie jest poprawny, ponieważ po wykonaniu polecenia REVOKE SELECT, UPDATE ON artykuly FROM jan, jan traci te konkretne uprawnienia. Warto zauważyć, że polecenie GRANT ALL PRIVILEGES przyznaje użytkownikowi szereg uprawnień, ale ich zakres można ograniczyć innymi poleceniami, jak REVOKE. Z tego powodu jan nie ma już możliwości przeglądania tabeli ani jej aktualizowania, co czyni tę odpowiedź nieaktualną. Często w praktyce zawodowej zdarza się, że nadawane są szerokie uprawnienia, a następnie w miarę potrzeby są one ograniczane, co może prowadzić do nieporozumień, jeśli nie zrozumie się działania tych poleceń. Kolejna niepoprawna odpowiedź, która sugeruje "przeglądanie tabeli", również jest błędna z tego samego powodu - jan nie ma takich uprawnień po REVOKE. Ostatnia z odpowiedzi, mówiąca o "tworzeniu tabeli i aktualizowaniu w niej danych", jest niepoprawna, ponieważ użytkownik jan nie ma już prawa aktualizacji danych po wycofaniu tych uprawnień. Zrozumienie mechanizmów zarządzania uprawnieniami jest kluczowe w pracy z bazami danych, aby uniknąć przypisania użytkownikom większych niż potrzebne przywilejów, co mogłoby prowadzić do nieautoryzowanego dostępu lub usunięcia danych.

Pytanie 6

Ile razy należy użyć instrukcji warunkowej, aby wdrożyć w danym języku programowania przedstawiony algorytm?

Ilustracja do pytania
A. Czterokrotnie
B. Jednokrotnie
C. Trzykrotnie
D. Dwukrotnie
Aby prawidłowo zaimplementować algorytm przedstawiony na diagramie, musisz zrozumieć jego strukturę. Diagram pokazuje dwa punkty decyzyjne, co wskazuje na konieczność użycia dwóch instrukcji warunkowych w kodzie. Każda instrukcja warunkowa odpowiada jednemu z tych punktów decyzyjnych. W praktyce, instrukcje warunkowe są kluczowe w programowaniu, pozwalając na podejmowanie decyzji i wykonywanie różnych działań w zależności od spełnienia określonych warunków. Można to zobrazować za pomocą języków programowania takich jak Python czy C++, gdzie 'if', 'else if' oraz 'else' są standardowymi konstrukcjami używanymi do tego celu. Warto zauważyć, że implementując algorytm, należy również zwrócić uwagę na poprawne użycie bloków kodu zagnieżdżonych w instrukcjach warunkowych, co jest dobrą praktyką programistyczną. Dzięki temu kod jest bardziej czytelny i łatwiejszy w utrzymaniu, co jest zgodne z zasadami czystego kodu i standardami branżowymi.

Pytanie 7

W języku HTML sposób na zdefiniowanie kodowania polskich znaków to

A. znacznik <title>
B. atrybut znacznika <meta>
C. znacznik <charset>
D. atrybut znacznika <p>
Inne opcje, które rozważono jako poprawne, nie są odpowiednie do określenia kodowania znaków w HTML. Znacznik <charset> nie istnieje w standardzie HTML, co czyni go niewłaściwym wyborem. Kodowanie znaków nie jest definiowane przez atrybut znacznika <p>, który jest używany głównie do formatowania tekstu, a więc nie ma wpływu na kodowanie znaków. Warto również zauważyć, że znacznik <title> jest stosowany do nadania tytułu dokumentu, który pojawia się na karcie przeglądarki, ale nie ma on związku z kodowaniem znaków. Wybór odpowiedniego kodowania jest kluczowy dla zachowania integralności tekstu, a niewłaściwe przypisanie może prowadzić do problemów z wyświetlaniem znaków i błędów w interpretacji treści. Często użytkownicy mylnie zakładają, że inne znaczniki HTML mogą mieć wpływ na kodowanie, co prowadzi do nieporozumień. Dlatego istotne jest, aby być świadomym roli znacznika <meta> w kontekście kodowania znaków, zwłaszcza w przypadku języków z diakrytykami, takich jak język polski.

Pytanie 8

Jaką cechę posiada format PNG?

A. brak wsparcia dla kanału alfa
B. bezstratna kompresja
C. wsparcie dla animacji
D. zapis grafiki wektorowej
Wybór odpowiedzi związanych z obsługą animacji jest mylny, ponieważ format PNG nie obsługuje animacji w standardowy sposób. Choć istnieje rozszerzenie o nazwie APNG (Animated PNG), które pozwala na tworzenie prostych animacji, nie jest to powszechnie akceptowany standard, co czyni PNG głównie formatem statycznym. W kontekście braku obsługi kanału alfa, warto zauważyć, że format PNG został zaprojektowany z myślą o pełnej obsłudze przezroczystości, co jest kluczowe dla wielu zastosowań graficznych. Z kolei sugerowanie, że PNG reprezentuje grafikę wektorową, jest całkowicie błędne, ponieważ ten format jest przeznaczony do obrazów rastrowych, czyli opartych na pikselach, a nie wektorowych, które są definiowane matematycznie. Typowe błędy myślowe prowadzące do takich wniosków często wynikają z niepełnej znajomości standardów formatów graficznych lub mylenia różnych typów grafik. W branży graficznej ważne jest zrozumienie właściwości formatów używanych do różnych zastosowań, a wybór niewłaściwego formatu może prowadzić do utraty jakości lub funkcjonalności obrazów.

Pytanie 9

Podany fragment kodu PHP ma na celu wstawienie wartości z zmiennych $a, $b, $c do bazy danych, w tabeli dane. Tabela ta składa się z czterech kolumn, z których pierwsza to autoinkrementowany klucz podstawowy. Które z zapytań powinno być przypisane do zmiennej $zapytanie? ``````

A. ```INSERT INTO dane VALUES ('$a', '$b', '$c');```
B. ```INSERT INTO dane VALUES (NULL, '$a', '$b', '$c');```
C. ```SELECT '$a', '$b', '$c' FROM dane;```
D. ```SELECT NULL, '$a', '$b', '$c' FROM dane;```
Odpowiedzi, które zaczynają się od polecenia SELECT, są błędne, ponieważ nie mają na celu wstawienia nowych danych do tabeli. SELECT jest używane do pobierania danych z bazy danych, a nie do ich dodawania. Polecenie "SELECT '$a', '$b', '$c' FROM dane;" jedynie wyciąga dane, nie wprowadza żadnych zmian w tabeli, co nie spełnia wymagań zadania. Również "SELECT NULL, '$a', '$b', '$c' FROM dane;" działa podobnie, wciąż pozostając w zakresie odczytu danych, a nie ich dodawania. Dwa pierwsze polecenia nie tylko nie są związane z wstawianiem danych, ale również mogą wprowadzać użytkownika w błąd, sugerując, że ich celem jest modyfikacja bazy. Kolejna odpowiedź "INSERT INTO dane VALUES ('$a', '$b', '$c');" jest błędna, ponieważ nie uwzględnia klucza głównego, który powinien być autoinkrementowany. Przekazanie NULL jako pierwszego argumentu jest kluczowe, ponieważ pozwala bazie danych na zarządzanie identyfikatorem. Typowe błędy myślowe obejmują pomylenie operacji wstawiania z operacjami odczytu oraz nieprawidłowe przypuszczenie, że można pominąć kolumny kluczy głównych w zapytaniach wstawiających.

Pytanie 10

Zdefiniowano funkcję w języku PHP:

function policz($Z) { 
while($Z < 5) {
$Z += 2 * $Z + 1;
}
return $Z;
}
Funkcja policz została wywołana z parametrem $Z = 1. Jaki rezultat zostanie zwrócony?
A. 1
B. 4
C. 13
D. 7
W przypadku analizy odpowiedzi 7, 4 i 1 można zauważyć, że w każdym z tych przypadków nie uwzględniono pełnych obliczeń zachodzących w pętli while. Odpowiedź 7 może sugerować, że po pierwszej iteracji pętli przyjęto, że $Z przestaje być aktualizowane w kolejnych krokach, co jest nieprawidłowe. W rzeczywistości, wartości $Z są stale aktualizowane w każdej iteracji pętli, co prowadzi do znacznie większych wyników. Z kolei odpowiedź 4 pomija fakt, że po pierwszym obliczeniu $Z wynosi 4, ale nie jest to wartość końcowa, ponieważ pętla nie kończy się, dopóki warunek jest spełniony. Ostatecznie, odpowiedź 1 ignoruje całkowicie logikę funkcji i powtarzanie obliczeń, co prowadzi do błędnych założeń. Często przy takich zadaniach błędy myślowe wynikają z niewłaściwego zrozumienia działania pętli oraz mechanizmu aktualizacji zmiennej. Kluczowe jest, aby dokładnie przeanalizować każdy krok pętli i unikać pośpiechu w obliczeniach. W programowaniu należy zwracać uwagę na każde wyrażenie oraz jego konsekwencje dla dalszego działania algorytmu, aby nie przeoczyć istotnych zmian zachodzących w danych.

Pytanie 11

Strona internetowa została wyświetlona przez przeglądarkę w poniższy sposób. Wskaż kod HTML, który prawidłowo reprezentuje zaprezentowaną hierarchiczną strukturę tekstu:

Ilustracja do pytania
A. <h1>Rozdział 1<p>tekst <h2>Podrozdział 1.1<p>tekst <h2>Podrozdział 1.2
B. <ul><li>Rozdział 1<li>tekst<li>Podrozdział 1.1<li>tekst<li>Podrozdział 1.2</ul>
C. <big>Rozdział 1</big>tekst<big>Podrozdział 1.1</big>tekst<big>Podrozdział 1.2</big>
D. <h1>Rozdział 1</h1> <p>tekst</p> <h2>Podrozdział 1.1</h2> <p>tekst</p> <h2>Podrozdział 1.2</h2>
Odpowiedzi nie wyszły za dobrze. To pewnie przez to, że źle zrozumiano, jak działa semantyczna struktura HTML. Znacznik <ul> i <li> sugerują listę punktowaną, co w tym przypadku nie jest właściwe do pokazywania hierarchii informacji w formie rozdziałów i podrozdziałów. HTML powinien być semantyczny, co znaczy, że struktura dokumentu musi odpowiadać jego treści i zastosowaniu. Jak masz treści hierarchiczne, nagłówki <h1> i <h2> są bardzo ważne, bo jasno układają, co jest główną sekcją a co podsekcją, co pomaga w logice całego tekstu. Użycie <big> to już przeżytek, bo nie ma sensu w nowoczesnym HTML, więc lepiej go unikać. Dobre praktyki webowe w dzisiejszych czasach stawiają na semantykę i dostępność, a to ma wpływ na SEO i doświadczenia użytkowników, w tym tych korzystających z różnych technologii wspomagających. Błędne użycie znaczników wprowadza chaos w kodzie, co utrudnia jego czytelność i późniejsze zarządzanie, dlatego tak ważne jest, żeby używać odpowiednich znaczników zgodnie z ich znaczeniem w HTML.

Pytanie 12

GRANT CREATE, ALTER ON sklep.* TO adam; Zakładając, że użytkownik adam nie dysponował wcześniej żadnymi uprawnieniami, to polecenie SQL przyzna mu prawa jedynie do

A. tworzenia oraz modyfikacji struktury wszystkich tabel w bazie sklep
B. wstawiania oraz modyfikacji danych w tabeli sklep
C. wstawiania oraz modyfikacji danych we wszystkich tabelach bazy sklep
D. tworzenia oraz modyfikacji struktury w tabeli sklep
Polecenie SQL 'GRANT CREATE, ALTER ON sklep.* TO adam;' przyznaje użytkownikowi adam prawa do tworzenia i modyfikowania struktury wszystkich tabel w bazie danych o nazwie 'sklep'. W kontekście zarządzania bazami danych, przyznawanie takich uprawnień jest kluczowe dla realizacji zadań związanych z projektowaniem i rozbudową bazy. Przykładowo, gdyby adam potrzebował dodać nową kolumnę do istniejącej tabeli lub utworzyć nową tabelę, mógłby to zrobić dzięki tym prawom. Z perspektywy bezpieczeństwa, nadawanie takich uprawnień powinna być starannie przemyślane, aby uniknąć nieautoryzowanych zmian w strukturze bazy. W praktyce, w sytuacjach, gdy wiele osób współpracuje nad projektem, zaleca się przyznawanie minimalnych uprawnień, które są niezbędne do wykonania określonych zadań. W związku z tym, wykorzystanie polecenia GRANT w sposób odpowiadający wymaganiom projektu jest najlepszą praktyką w zakresie administracji bazami danych.

Pytanie 13

Jakie z wyrażeń logicznych w języku C weryfikuje, czy zmienna o nazwie zm1 znajduje się w zakresie (6, 203)?

A. (zm1 > 6) || (zm1 != 203)
B. (zm1 > 6) || (zm1 <= 203)
C. (zm1 > 6) && (zm1 != 203)
D. (zm1 > 6) && (zm1 <= 203)
W analizie wyrażeń logicznych ważne jest zrozumienie logiki za każdym z operatorów oraz ich zastosowania w kontekście zadania. Przykładowo, wyrażenie (zm1 > 6) || (zm1 <= 203) jest niepoprawne, ponieważ użycie operatora || (OR) sugeruje, że wystarczy, aby zm1 spełniało jeden z dwóch warunków, co nie jest zgodne z definicją przedziału. W przypadku (zm1 > 6) && (zm1 != 203) wyrażenie również nie jest prawidłowe, ponieważ ignoruje dolny limit przedziału – wartość 203 nie jest wbudowana w przedział, co sprawia, że zmienna może przyjmować wartości, które nie są odpowiednie. Z kolei (zm1 > 6) || (zm1 != 203) jest całkowicie mylne, gdyż połączenie operatora OR nie tylko rozluźnia wymagania, ale również wprowadza błąd logiczny, który może prowadzić do nieprawidłowych wyników, gdyż zm1 może być mniejsze lub równe 6. Te błędy mogą wynikać z niepełnego zrozumienia operatorów logicznych oraz ich kontekstu w programowaniu. Właściwe stosowanie operatorów logicznych jest kluczowe dla tworzenia poprawnych i niezawodnych aplikacji. Warto pamiętać, że precyzyjne określenie zakresów i warunków w programie ma kluczowe znaczenie dla jego poprawności oraz stabilności działania.

Pytanie 14

Wskaż właściwą zasadę odnoszącą się do integralności danych w bazie danych?

A. pole klucza podstawowego musi mieć utworzony indeks
B. pole klucza obcego nie powinno być puste
C. pole klucza podstawowego nie powinno być puste
D. w relacji 1..n pole klucza obcego łączy się z polem klucza podstawowego innej tabeli
Pole klucza podstawowego w tabeli bazy danych jest fundamentalnym elementem struktury relacyjnej. Jego główną rolą jest zapewnienie unikalności każdego rekordu w tabeli oraz umożliwienie jednoznacznej identyfikacji. Zgodnie z zasadami spójności danych w bazach danych, pole klucza podstawowego nie może być puste (NULL), ponieważ brak wartości w tym polu uniemożliwi skuteczne i jednoznaczne zidentyfikowanie rekordu. Na przykład, w tabeli 'Klienci', gdzie 'ID_Klienta' jest kluczem podstawowym, każde 'ID_Klienta' musi być unikalne i nie może być puste, aby uniknąć niejednoznaczności podczas wyszukiwania lub modyfikacji danych. Praktyczne zastosowanie tej zasady w projektowaniu baz danych prowadzi do zwiększenia integralności i spójności danych, co jest zgodne z normami, takimi jak ACID (Atomicity, Consistency, Isolation, Durability). Dbałość o poprawność kluczy podstawowych to kluczowy element w tworzeniu wydajnych i niezawodnych systemów baz danych.

Pytanie 15

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

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

Pytanie 16

W języku JavaScript trzeba zapisać warunek, który będzie prawdziwy, gdy zmienna a będzie jakąkolwiek liczbą naturalną dodatnią (bez 0) lub zmienna b przyjmie wartość z zamkniętego przedziału od 10 do 100. Wyrażenie logiczne w tym warunku ma formę

A. (a>0) && ((b>=10) && (b<=100))
B. (a>0) && ((b>=10) || (b<=100))
C. (a>0) || ((b>=10) || (b<=100))
D. (a>0) || ((b>=10) && (b<=100))
Pierwsza odpowiedź (a>0) || ((b>=10) || (b<=100)) jest niepoprawna, ponieważ używa operatora || w kontekście sprawdzania wartości zmiennej b w sposób, który nie ogranicza jej do przedziału od 10 do 100. Wyrażenie (b>=10) || (b<=100) oznacza, że b może być mniejsze niż 10, co jest sprzeczne z wymaganiami dotyczącymi przedziału. W związku z tym, ta konstrukcja może dopuścić do sytuacji, w której b ma wartość poniżej 10, co nie jest akceptowalne. Kolejna niepoprawna odpowiedź (a>0) && ((b>=10) || (b<=100)) wymaga, aby obydwa warunki były prawdziwe, co również prowadzi do błędnego sprawdzenia. Operator && wymusza spełnienie obu warunków, a zatem jeśli a jest większe od 0, ale b jest mniejsze niż 10, cała konstrukcja zwróci false, co czyni ją nieodpowiednią dla zadanych wymagań. Ostatnia niepoprawna opcja (a>0) && ((b>=10) && (b<=100)) również jest niewłaściwa, ponieważ zamiast umożliwić elastyczność w spełnianiu warunku, wymaga, aby obydwa warunki były prawdziwe jednocześnie. W kontekście zadania, nie możemy narzucić, aby a i b musiały być prawdziwe w tym samym czasie, co uniemożliwia skuteczne sprawdzenie jednej z opcji, przez co odpowiedź nie spełnia wymagań zadania. W związku z tym, wszystkie te odpowiedzi są niepoprawne w kontekście zadania, które wymaga dwóch odrębnych warunków do spełnienia.

Pytanie 17

Element lub grupa elementów, która w jednoznaczny sposób identyfikuje każdy pojedynczy rekord w tabeli w bazie danych, nazywa się kluczem

A. podstawowy
B. inkrementacyjny
C. przestawny
D. obcy
Klucz inkrementacyjny to termin, który może być mylnie stosowany w kontekście kluczy podstawowych. Choć klucz podstawowy może być inkrementacyjny, co oznacza, że jego wartość rośnie w miarę dodawania nowych rekordów, nie jest to jego jedyna możliwa forma. Klucz podstawowy może być również złożony z kilku pól (klucz złożony) lub oparty na wartościach, które nie są inkrementowane. Z kolei klucz przestawny (ang. pivot key) to termin nieznany w klasycznej terminologii baz danych; nie odnosi się on do identyfikacji wierszy, a raczej do organizacji danych w tabelach przestawnych, które służą do agregacji danych. Klucz obcy (ang. foreign key) jest innym pojęciem, oznaczającym pole, które wskazuje na klucz podstawowy w innej tabeli i służy do zapewnienia powiązań między danymi, ale nie identyfikuje ono pojedynczych rekordów w danej tabeli. Typowe błędy w rozumieniu tych pojęć to mylenie ich ról oraz funkcji, co prowadzi do niewłaściwego projektowania baz danych, w którym integralność oraz relacje pomiędzy danymi są niewłaściwie zaimplementowane. Kluczowe jest, aby zrozumieć, że klucz podstawowy jest podstawowym komponentem dla każdej tabeli, a inne typy kluczy pełnią różne funkcje w kontekście relacji między danymi.

Pytanie 18

W wyniku przedstawionego polecenia w tabeli zostanie ```ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;```

A. zmieniony typ kolumny nazwa2 na DOUBLE
B. zmieniona kolumna z nazwa1 na nazwa2
C. dodana kolumna nazwa2 z wymuszoną wartością DOUBLE
D. dodana kolumna nazwa2 o typie zmiennoprzecinkowym
Analizując pozostałe odpowiedzi, można zauważyć, że nie odzwierciedlają one poprawności działania zapytania SQL. Pierwsza odpowiedź sugeruje zmianę nazwy kolumny, co jest błędnym podejściem, ponieważ użycie klauzuli "ADD" wyraźnie wskazuje na dodanie nowej kolumny, a nie na modyfikację istniejącej. Zmiana nazwy kolumny wymagałaby użycia zapytania "ALTER TABLE ... RENAME COLUMN...", co jest zupełnie inną operacją. Drugie stwierdzenie koncentruje się na zmianie wartości kolumny "nazwa2" na typ DOUBLE, co jest niepoprawne, gdyż zapytanie nie zmienia wartości, a dodaje nową kolumnę. Ostatnia odpowiedź wskazuje na dodanie kolumny z wartością domyślną, co również jest błędne, gdyż w zapytaniu nie określono wartości domyślnej dla nowej kolumny. W rzeczywistości, przy dodawaniu kolumny można również ustawić wartość domyślną, ale nie jest to wymagane. Typowe błędy w myśleniu prowadzące do takich wniosków często wynikają z niepełnego zrozumienia składni SQL i funkcji poszczególnych poleceń. Dlatego istotne jest, aby przed przystąpieniem do modyfikacji struktury bazy danych dobrze zaznajomić się z dokumentacją i zasadami działania systemu zarządzania bazą danych, z którego się korzysta.

Pytanie 19

Używa się zapytania z klauzulą JOIN, aby

A. otrzymać wynik tylko z jednej tabeli
B. określić klucz obcy dla tabeli
C. uzyskać dane z dwóch tabel, które są ze sobą powiązane
D. wykonać funkcję agregującą
Zastosowanie klauzuli JOIN w zapytaniach SQL jest często mylone z innymi operacjami na tabelach, co prowadzi do nieporozumień i błędnych koncepcji. Definiowanie klucza obcego dla tabeli jest procesem, który nie ma bezpośredniego związku z samym zapytaniem. Klucz obcy, który służy do utrzymania integralności referencyjnej między tabelami, jest konfigurowany podczas tworzenia lub modyfikacji struktury bazy danych, a nie podczas pisania zapytań. Ponadto, wywoływanie funkcji agregujących, takich jak SUM czy COUNT, może być przeprowadzane niezależnie od tego, czy w zapytaniu wykorzystujemy JOIN. Funkcje te mogą działać na danych z jednej tabeli, co jest sprzeczne z błędnym stwierdzeniem, że JOIN jest niezbędny do ich wywołania. Ostatnim nieporozumieniem jest idea, że można otrzymać wyniki tylko z jednej tabeli. W praktyce, wiele zapytań wymaga współpracy między tabelami, aby uzyskać pełniejszy kontekst danych. Dobrą praktyką w projektowaniu baz danych jest jednak unikanie nieefektywnego łączenia tabel, jeżeli nie jest to konieczne, co może prowadzić do nieoptymalnej wydajności zapytań. Znajomość różnicy między operacjami na poziomie struktury bazy danych a zapytaniami pozwala na lepsze projektowanie i wykorzystanie systemów bazodanowych.

Pytanie 20

Kwalifikatory dostępu: private, protected oraz public określają mechanizm

A. hermetyzacji
B. przeładowania
C. polimorfizmu
D. rekurencji
Wybór innych odpowiedzi, takich jak przeładowanie, polimorfizm czy rekurencja, wskazuje na pewne nieporozumienia dotyczące podstawowych zasad programowania obiektowego. Przeładowanie to technika, która pozwala na definiowanie wielu metod o tej samej nazwie, ale różniących się typem lub liczbą parametrów. Nie ma to jednak związku z zarządzaniem dostępem do danych obiektowych. Polimorfizm odnosi się do zdolności obiektów do przyjmowania różnych form, co jest kluczowe w kontekście dziedziczenia, lecz również nie dotyczy mechanizmu ograniczania dostępu do składników klas. Z kolei rekurencja jest techniką programowania, w której funkcja wywołuje samą siebie, co wprowadza zupełnie inny kontekst i nie ma związku z kwalifikatorami dostępu. Wybór tych odpowiedzi może wynikać z niepełnego zrozumienia roli hermetyzacji w programowaniu obiektowym. Warto zwrócić uwagę, że hermetyzacja ma na celu zwiększenie bezpieczeństwa oraz kontroli dostępu do danych, co jest kluczowe w tworzeniu oprogramowania. Niezrozumienie tych koncepcji może prowadzić do tworzenia kodu, który jest trudny do utrzymania i narażony na błędy, co jest sprzeczne z najlepszymi praktykami w branży.

Pytanie 21

Jakie jest znaczenie powtarzania w zdefiniowanym stylu CSS?

body {
  background-image: url("rysunek.gif");
  background-repeat: repeat-y;
}
A. obrazu umieszczonego w tle strony w pionie
B. obrazu umieszczonego w tle strony w poziomie
C. tła każdego z paragrafów
D. obrazu umieszczonego przy użyciu znacznika img
Rozważając inne odpowiedzi nietrudno dostrzec podstawowe błędy w ich koncepcjach Rysunek umieszczony w tle strony w poziomie odpowiadałby wartości repeat-x a nie repeat-y To fundamentalne rozróżnienie wynika z konwencji nazewnictwa CSS która jasno określa kierunki powtarzania W przypadku użycia znacznika img obraz jest osadzony w treści dokumentu HTML a nie jako tło CSS Powtarzanie w takim kontekście nie ma miejsca ponieważ obrazki w znacznikach img są kontrolowane za pomocą innych mechanizmów jak szerokość wysokość czy pozycjonowanie w ramach układu strony Ostatnia opcja odnosząca się do tła każdego ze znaczników akapitu wykazuje niezrozumienie kontekstu CSS Deklaracja body odnosi się do całego dokumentu a nie do poszczególnych elementów takich jak akapity aby zmienić tło akapitów należałoby użyć selektora p lub innego klasyfikatora odpowiadającego tym elementom Nietrafne odpowiedzi wynikają z nieznajomości podstawowych zasad działania CSS oraz ich zastosowania w praktyce co podkreśla potrzebę dogłębnego zrozumienia jak poszczególne właściwości wpływają na układ i wygląd strony internetowej

Pytanie 22

Liczba 0x142, przedstawiona w kodzie JavaScript, przyjmuje formę

A. szesnastkową
B. dwójkową
C. ósemkową
D. dziesiętną
Odpowiedzi sugerujące, że liczba 0x142 jest zapisana w systemie ósemkowym, dziesiętnym lub dwójkowym, wykazują fundamentalne nieporozumienia w zakresie notacji liczbowej. System ósemkowy (bazujący na 8) używa cyfr od 0 do 7, co czyni niemożliwym zapisanie liczby 142, ponieważ ta liczba zawiera cyfrę 8 - co narusza zasady tego systemu. Z kolei system dziesiętny, który posługuje się cyframi od 0 do 9, nie stosuje prefiksu "0x", który jest zarezerwowany dla systemu szesnastkowego. Liczba 142 w systemie dziesiętnym ma postać 142, a nie 0x142. Ponadto, jeśli chodzi o system dwójkowy (binarny), to jego zasięg ogranicza się do cyfr 0 i 1. Każda liczba w systemie binarnym jest reprezentowana jako sekwencja tych dwóch cyfr, co sprawia, że wprowadzenie liczby 0x142 do tego systemu również nie jest możliwe. Typowe błędy myślowe związane z błędnymi odpowiedziami polegają na myleniu notacji z różnymi systemami liczbowymi bez zrozumienia ich podstawowych zasad. W praktyce, aby poprawnie interpretować liczby w różnych systemach, ważne jest, aby zwracać uwagę na ich notację i format, co pozwala uniknąć nieporozumień w programowaniu i analizie danych.

Pytanie 23

Który standard video cechuje się rozdzielczością 1920 px na 1080 px?

A. Ultra HD 
B. HD Ready
C. Full HD
D. 4K
Rozdzielczość 1920 × 1080 pikseli jest bardzo charakterystyczna i w branży funkcjonuje pod nazwą Full HD. Pomyłki biorą się często z tego, że nazwy handlowe typu 4K, Ultra HD czy HD Ready brzmią podobnie, a producenci sprzętu lubią je mieszać w reklamach. W efekcie wiele osób kojarzy „HD” ogólnie z dobrą jakością i nie rozróżnia konkretnych standardów. Tymczasem 4K oraz Ultra HD to wyraźnie wyższe rozdzielczości niż 1920×1080. Typowe konsumenckie 4K/UHD to 3840×2160 pikseli, czyli cztery razy więcej pikseli niż Full HD. To oznacza znacznie większą szczegółowość obrazu, ale również większe pliki, większe obciążenie łącza i sprzętu. W projektach webowych stosuje się 4K raczej do materiałów premium, dużych ekranów, telewizorów czy kin domowych, a nie jako standard „podstawowy”. Z kolei HD Ready to niższa rozdzielczość, zwykle 1280×720 pikseli (720p). Ten standard był popularny w starszych telewizorach i tańszych monitorach. W materiałach internetowych 720p traktuje się dziś jako minimum akceptowalnej jakości wideo, ale zdecydowanie nie jest to 1920×1080. Typowy błąd myślowy polega na tym, że ktoś widzi na obudowie telewizora napis „HD Ready” czy „HD” i automatycznie zakłada, że chodzi o Full HD, bo „przecież to też HD”. Niestety, marketing robi tu swoje. Dobra praktyka w pracy z multimediami jest taka, żeby zawsze patrzeć na konkretne wartości w pikselach, a nie tylko na hasło reklamowe. Dzięki temu, przygotowując treści na stronę WWW, do e‑learningu czy do materiałów promocyjnych, można świadomie dobrać rozdzielczość: 1280×720, gdy zależy nam na małej wadze pliku, 1920×1080 (Full HD) jako standard, a 4K/UHD raczej do zastosowań specjalnych, dużych ekranów i wysokiej klasy prezentacji. Rozpoznawanie tych różnic to podstawa pracy z grafiką i wideo w środowisku webowym.

Pytanie 24

W podanym fragmencie zapytania w języku SQL, komenda SELECT jest używana do zwrócenia SELECT COUNT(wartosc) FROM …

A. średniej wartości z tabeli
B. średniej w kolumnie wartosc
C. summy w kolumnie wartosc
D. ilości wierszy
No, trochę jest tu pomyłka. Ludzie często mylą to zapytanie SELECT COUNT(wartosc) z sumowaniem wartości, co nie jest do końca poprawne. Funkcja COUNT nie sumuje wartości, ona tylko liczy, ile jest niepustych wierszy. Więc jeżeli ktoś twierdzi, że to daje średnią, to wprowadza w błąd – średnią liczymy z pomocą funkcji AVG, a nie COUNT. W kolumnie 'wartosc' mogą być różne liczby, a suma wartości nie ma wiele wspólnego z tym, ile jest wierszy. Dobrze jest pamiętać, że średnia to coś innego niż liczba wierszy, co jest ważne do zrozumienia, jak działają zapytania w SQL. Jeśli ktoś myli te funkcje, to może się zgubić w analizie danych. Więc ogólnie mówiąc, warto wiedzieć, czym różnią się COUNT, AVG i inne funkcje agregujące, bo to kluczowe do ogarnięcia pracy z bazami danych.

Pytanie 25

Podaj definicję metody, którą trzeba umieścić w miejscu kropek, aby na stronie WWW pojawił się tekst: Jan Kowalski

Ilustracja do pytania
A. A
B. C
C. D
D. B
Pozostałe odpowiedzi zawierają błędy związane z niepoprawnym użyciem kontekstu this lub niekompletną definicją funkcji. W opcji B metoda dane została zdefiniowana jako funkcja globalna, co powoduje, że this nie odnosi się do obiektu osoba, ale do obiektu globalnego, co uniemożliwia poprawne odwołanie się do właściwości imie i nazwisko. To prowadzi do błędnych lub niezdefiniowanych wyników, ponieważ this w tym kontekście nie zawiera oczekiwanych właściwości. Opcja C nie używa słowa kluczowego this, co oznacza, że zmienne imie i nazwisko są traktowane jako zmienne globalne, a nie właściwości obiektu osoba. Jeżeli takie zmienne globalne nie istnieją, powoduje to błąd w wykonaniu, ponieważ kod próbuje odwołać się do niezdefiniowanych zmiennych. W opcji D użycie funkcji bez return powoduje, że metoda dane nie zwraca żadnej wartości, co skutkuje przypisaniem undefined do innerHTML, co jest oczywistym błędem w kontekście oczekiwanego wyświetlenia tekstu. Wszystkie te błędne podejścia wynikają z niepoprawnego zarządzania kontekstem obiektowym w JavaScript, co podkreśla znaczenie zrozumienia wiązania dynamicznego słowa kluczowego this i dobrych praktyk w projektowaniu metod obiektowych w JavaScript. Kluczowym aspektem jest zapewnienie, że metody mają dostęp do właściwości obiektu, w ramach którego zostały zdefiniowane, co jest osiągane przez poprawne użycie this w kontekście metody wewnętrznej obiektu.

Pytanie 26

W hurtowni danych stworzono tabelę sprzedaz, która zawiera pola: id, kontrahent, grupa_cenowa, obrot. Jakie polecenie trzeba zastosować, aby znaleźć tylko kontrahentów z grupy cenowej numer dwa, których obrót przekracza 4000 zł?

A. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 AND obrot > 4000;
B. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 OR obrot > 4000;
C. SELECT sprzedaz FROM kontrahent WHERE obrot > 4000;
D. SELECT sprzedaz FROM kontrahent WHERE grupa_cenowa = 2 AND obrot > 4000;
Dwie niepoprawne odpowiedzi pokazują, że są pewne nieporozumienia w kwestii SQL. W pierwszej z nich używasz operatora OR, co psuje całą logikę zapytania. To sprawia, że możesz dostać kontrahentów z drugiej grupy cenowej albo tych, co mają obrót powyżej 4000 zł, a nie tylko tych, którzy spełniają oba warunki jednocześnie. W analizie danych ważne jest, żeby warunki były precyzyjne, bo inaczej wyniki mogą być nieczytelne. W kolejnej odpowiedzi widzę, że próbujesz wydobywać dane z kolumny kontrahent, co jest niepoprawne, bo kolumna to nie tabela. Musisz mieć jasność co do struktury bazy danych, żeby pisać odpowiednie zapytania. A ostatnia odpowiedź nie zawiera warunku dla grupy cenowej, więc zwróci jakieś niepełne dane. Dobrym pomysłem jest też testować swoje zapytania na mniejszych zbiorach danych, niż wdrażać je od razu w produkcji, żeby uniknąć takich błędów.

Pytanie 27

Zdarzenie JavaScript, które jest wywoływane po pojedynczym kliknięciu dowolnego elementu na stronie, określa się jako

A. onClick
B. onLoad
C. onKeyDown
D. onDblClick
Zdarzenie onClick w JavaScript jest jednym z najczęściej używanych zdarzeń w interakcji użytkownika z elementami na stronie internetowej. Jego podstawowa funkcjonalność polega na rejestrowaniu pojedynczego kliknięcia na danym elemencie, co pozwala na wykonanie określonej akcji w odpowiedzi na to zdarzenie. Zdarzenie to jest szczególnie istotne w kontekście rozwoju aplikacji webowych, gdzie interaktywność jest kluczowym elementem doświadczenia użytkownika. Aby zaimplementować zdarzenie onClick, można użyć zarówno atrybutu HTML, jak i metod JavaScript, takich jak addEventListener. Przykładowo, dodając do przycisku HTML atrybut onClick, możemy bezpośrednio wywołać funkcję JavaScript, co znacząco upraszcza kod. W kontekście standardów, onClick jest częścią DOM Level 2 Events Specification, co zapewnia kompatybilność z różnymi przeglądarkami. Przykład zastosowania: <button onClick='alert("Hello World!")'>Kliknij mnie</button> wywoła okno alertu po kliknięciu przycisku. Korzystanie z onClick pozwala na tworzenie dynamicznych interfejsów, które dostosowują się do działań użytkownika, co jest kluczowe w nowoczesnym web designie i programowaniu JavaScript.

Pytanie 28

W systemie baz danych MySQL komenda CREATE USER pozwala na

A. stworzenie użytkownika oraz przypisanie mu uprawnień do bazy
B. zmianę hasła dla już istniejącego użytkownika
C. zobaczenie danych o aktualnym użytkowniku
D. stworzenie nowego użytkownika
Niemniej jednak, inne wymienione odpowiedzi nie są poprawne w kontekście polecenia CREATE USER. W szczególności, polecenie to nie służy do modyfikowania haseł istniejących użytkowników. Aby zmienić hasło dla już istniejącego konta, należy użyć polecenia ALTER USER lub SET PASSWORD, które są dedykowane do tego celu. Takie podejście pozwala na bezpieczne aktualizowanie danych uwierzytelniających bez konieczności tworzenia nowego użytkownika, a także zapewnia większą kontrolę nad polityką haseł. Kolejnym niepoprawnym stwierdzeniem jest, że CREATE USER wyświetla informacje o istniejącym użytkowniku. W rzeczywistości, aby uzyskać szczegółowe informacje o użytkownikach, należy skorzystać z zapytań SELECT na tabeli mysql.user, gdzie przechowywane są dane dotyczące kont użytkowników. Polecenie CREATE USER nie ma funkcji przeglądania ani raportowania. Ostatnia fałszywa sugestia dotyczy możliwości nadania uprawnień bezpośrednio w momencie tworzenia użytkownika. Choć polecenie CREATE USER tworzy konto, to rzeczywiste przyznawanie uprawnień jest zadaniem dla polecenia GRANT, które należy uruchomić po utworzeniu konta. Tylko poprzez oddzielne nadanie uprawnień można precyzyjnie kontrolować, jakie operacje nowy użytkownik może wykonywać na danych, co jest kluczowym elementem zarządzania bezpieczeństwem w bazach danych.

Pytanie 29

Zawarty w ramce fragment kodu w języku JavaScript

Ilustracja do pytania
A. przypisze do zmiennej s fragment tekstu ze zmiennej t o długości określonej przez zmienną length
B. wyświetli długość tekstu ze zmiennej t
C. przypisze do zmiennej s zmienną t
D. przypisze zmiennej s długość tekstu ze zmiennej t
Zrozumienie funkcji length w kontekście JavaScript jest kluczowe dla rozróżnienia poprawnych i błędnych interpretacji kodu. W przypadku zadania, omówienie różnych interpretacji kodu wskazuje na kilka typowych nieporozumień. Jednym z nich jest przypisanie zmiennej s zmiennej t. Takie działanie wymagałoby użycia operatora przypisania bezpośrednio z jedną zmienną, a nie wywołania metody na niej. Kolejnym nieporozumieniem jest wyświetlenie długości napisu ze zmiennej t. Wyświetlanie wartości w JavaScript wymaga zastosowania np. console.log(), a sam zapis t.length jedynie odczytuje długość łańcucha. Innym błędnym podejściem jest przypisanie fragmentu napisu ze zmiennej t, o określonej przez zmienną length długości. Operator length w kontekście łańcucha znaków zwraca jego całkowitą długość, a nie jego fragment. Aby wyodrębnić część tekstu, należałoby użyć metod takich jak slice() czy substring(). Typowym błędem jest również założenie, że length działa jak funkcja przycinająca tekst, co może wynikać z niewłaściwego zrozumienia dokumentacji lub braku praktyki. Każda z tych błędnych odpowiedzi wskazuje na potrzebę głębszego zapoznania się z podstawowymi metodami manipulacji tekstem w JavaScript i ich praktycznym zastosowaniem w różnych kontekstach programistycznych, co jest istotnym krokiem w kierunku profesjonalnego programowania.

Pytanie 30

Podczas tworzenia witryny internetowej zastosowano kod definiujący jej wygląd. Jaką szerokość przeznaczono na zawartość strony?

Ilustracja do pytania
A. 600 px
B. 2 px
C. 640 px
D. 560 px
Przy projektowaniu stron internetowych jednym z najczęstszych błędów jest niewłaściwe zrozumienie sposobu w jaki szerokość elementów wpływa na układ strony. Na przykład wybór szerokości 2px jako wartości dla treści jest niezgodny z typowymi standardami projektowymi gdyż taka szerokość jest zbyt mała aby pomieścić jakąkolwiek treść. Może to prowadzić do błędów w wyświetlaniu lub wadliwego renderowania strony. Z kolei wartości takie jak 600px czy 640px mogą wydawać się poprawne jednak w kontekście podanego kodu CSS nie są zgodne z zdefiniowaną szerokością elementu body która wynosi 560px. Należy pamiętać że dobór odpowiedniej szerokości powinien uwzględniać nie tylko estetykę ale również użyteczność i responsywność strony co oznacza że projektant powinien również brać pod uwagę różnorodność urządzeń na których strona będzie wyświetlana. Niewłaściwe zrozumienie tej koncepcji może prowadzić do projektowania stron które nie są optymalne pod względem użytkowania lub użytkownik napotyka trudności w nawigacji. Właściwe podejście powinno obejmować testowanie i iteracyjne dostosowywanie wartości w celu optymalnego dopasowania do zamierzonych celów i grupy docelowej użytkowników. Zrozumienie tych zasad pozwala unikać typowych błędów i tworzyć strony które są zarówno estetyczne jak i funkcjonalne.

Pytanie 31

Filtracja sygnału wejściowego w czasie, która uwzględnia zasadę superpozycji, dotyczy filtru

A. niezmiennym w czasie
B. liniowego
C. przyczynowym
D. o skończonej odpowiedzi impulsowej
Odpowiedzi, które nie klasyfikują procesu filtracji sygnału jako liniowego, często prowadzą do nieporozumień w zakresie podstawowych pojęć związanych z teorią filtracji. Filtry o skończonej odpowiedzi impulsowej (FIR) rzeczywiście mogą być liniowe, ale to nie one definiują zasadę superpozycji, która jest kluczowa dla filtrów liniowych. Filtry FIR to jedynie jedna z klas filtrów, które można zaprojektować tak, aby były liniowe. Podejście przyczynowe w filtracji oznacza, że sygnał wyjściowy zależy tylko od bieżących i przeszłych wartości sygnału wejściowego, co również może być zgodne z filtrami liniowymi, ale nie jest ich jedyną cechą. Z kolei powiedzenie, że filtr jest 'niezmienny w czasie', odnosi się do filtrów, które nie zmieniają swoich właściwości w czasie, co również nie wyklucza filtrów liniowych, ale nie jest to kluczowe dla samej definicji procesów liniowych. Błędem jest zatem myślenie, że inne klasy filtrów automatycznie są niezwiązane z liniowością, gdyż wiele z nich, w tym FIR, IIR czy filtry przyczynowe, mogą spełniać tę właściwość. Ważne jest, aby zrozumieć, że linowość jest fundamentalnym pojęciem w teorii systemów i ma kluczowe znaczenie dla analizy sygnałów.

Pytanie 32

Który z linków ma prawidłową budowę?

A. <a href="mailto:adres"> tekst </a>
B. <a href="http://adres"> tekst <a>
C. <a href='mailto:adres'> tekst </a>
D. <a href='http://adres'> tekst </a>
Odpowiedzi, które nie spełniają standardów HTML, prowadzą do niepoprawnych wyników. Na przykład, użycie pojedynczych cudzysłowów w atrybucie href, jak w konstrukcji <a href='mailto:adres'> tekst </a>, choć działa w wielu przeglądarkach, nie jest zgodne z zaleceniami HTML5, które preferują podwójne cudzysłowy. Ten błąd może prowadzić do problemów z interpretacją przez parsery HTML, a w ekstremalnych przypadkach może uniemożliwić poprawne wyświetlanie odsyłaczy. Dodatkowo, ostatnia odpowiedź <a href="http://adres"> tekst <a> jest błędna, ponieważ nie zamyka znacznika <a>, co skutkuje usunięciem semantycznego znaczenia linku i może prowadzić do problemów z dostępnością oraz indeksowaniem przez wyszukiwarki. Tego typu błędy są często wynikiem niedbałości lub braku zrozumienia podstaw HTML. Poprawna konstrukcja odsyłaczy jest kluczowa w budowaniu dostępnych stron internetowych, które są łatwe do nawigacji i interpretacji przez różne urządzenia i technologie asystujące. Przykłady błędów w HTML mogą również prowadzić do frustracji użytkowników, którzy mogą mieć problemy z interakcją z witryną, co w efekcie wpływa na ich postrzeganie jakości i profesjonalizmu danej strony.

Pytanie 33

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

A. MIN
B. AVG
C. COUNT
D. SUM
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 34

W systemie bazy danych dotyczącej pojazdów, pole kolor w tabeli samochody może przyjmować wartości tylko z listy lakier. Aby zrealizować połączenie między tabelami samochody a lakier przez relację, należy użyć kwerendy

A. <br>ALTER TABLE samochody<br> ADD FOREIGN KEY kolor REFERENCES lakier;
B. <br>ALTER TABLE samochody<br> ADD FOREIGN KEY barwa REFERENCES samochody.lakier;
C. <br>ALTER TABLE samochody<br> ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId);
D. <br>ALTER TABLE lakier<br> ADD FOREIGN KEY (barwa) REFERENCES samochody(kolor);
Wszystkie błędne odpowiedzi opierają się na nieprawidłowym przypisaniu kluczy obcych lub niewłaściwych odniesieniach między tabelami. Przykładowo, pierwsza z odpowiedzi próbuje dodać klucz obcy do tabeli lakier, co jest niezgodne z zasadami relacyjnych baz danych, gdzie klucze obce powinny być definiowane w tabeli, która zawiera pole odnoszące się do innej tabeli. Klucz obcy powinien zawsze znajdować się w tabeli, która zawiera dane odnoszące się do innej tabeli, a nie w tabeli, z której te dane pochodzą. Druga odpowiedź sugeruje, że można dodać klucz obcy do kolumny kolor bez wskazania tabeli docelowej oraz właściwego klucza, co czyni tę odpowiedź niekompletną i błędną. Odpowiedź trzecia z kolei próbuje powiązać kolumnę barwa z tabelą samochody, co nie ma sensu w kontekście relacji; klucz obcy w tabeli samochody powinien odnosić się do klucza głównego w tabeli lakier, a nie do innej kolumny w tej samej tabeli. Typowym błędem jest także nieznajomość zasad normalizacji baz danych, co prowadzi do błędnych wniosków na temat relacji między tabelami. Zrozumienie tych zasad jest kluczowe dla właściwego projektowania struktury bazy danych oraz zapewnienia jej efektywności i integralności.

Pytanie 35

Który efekt został zaprezentowany na filmie?

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

Pytanie 36

Element

<meta charset="utf-8">
definiuje metadane dotyczące strony internetowej, odnosząc się do
A. języka witryny
B. kodowania znaków
C. słów kluczowych
D. opisu witryny
Ten element <meta charset="utf-8"> jest naprawdę ważny w nagłówku stron HTML, bo to on mówi przeglądarkom, jak odczytywać znaki w Twoim dokumencie. Dzięki temu tekst wyświetla się poprawnie na różnych urządzeniach. UTF-8 jest najbardziej popularnym kodowaniem, bo obsługuje niemal wszystkie znaki z różnych języków, co sprawia, że Twoja strona może być bardziej uniwersalna. Na przykład, jeśli masz tekst po polsku, to użycie UTF-8 upewnia się, że takie znaki jak ą czy ć będą prawidłowo pokazane. Właśnie dlatego warto stosować UTF-8, bo to, co zaleca W3C, jest bardzo sensowne - chodzi przecież o to, żeby strona była dostępna dla każdego, niezależnie od tego, z jakiego języka korzysta.

Pytanie 37

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

p {
  padding: 15px;
  border: 2px dotted gray; }
A. linia kropkowa; grubość 2 px; marginesy między tekstem a ramką 15 px
B. linia ciągła; grubość 2 px; marginesy poza ramką 15 px
C. linia kreskowa; grubość 2 px; marginesy poza ramką 15 px
D. linia ciągła; grubość 2 px; marginesy między tekstem a ramką 15 px
Odpowiedzi, które sugerują inne rodzaje obramowań, nie są zgodne z przedstawionym kodem CSS. Linia ciągła, określana jako 'solid', różni się od linii kropkowanej 'dotted', ponieważ jest to ciągła linia bez przerw. Wybór typu linii jest istotny w kontekście wizualnej prezentacji treści i ma wpływ na percepcję estetyczną strony internetowej. Ponadto, odpowiedzi sugerujące marginesy poza ramką zamiast marginesów wewnętrznych wprowadzają błąd w interpretacji właściwości 'padding'. 'Padding' odnosi się do przestrzeni wewnątrz elementu, pomiędzy jego zawartością a granicą, a nie do zewnętrznej przestrzeni między elementem a otaczającymi go obiektami, która jest kontrolowana za pomocą właściwości 'margin'. Tego typu błędne rozumienie może prowadzić do nieprawidłowego stylizowania elementów na stronie, co skutkuje nieestetycznym układem treści i pogorszoną czytelnością. Warto zawsze dokładnie zapoznać się z definicjami i działaniem poszczególnych właściwości CSS, aby unikać takich pomyłek. Zrozumienie różnicy między 'padding' a 'margin' jest kluczowe dla poprawnego projektowania układów stron zgodnie z najlepszymi praktykami w branży web designu

Pytanie 38

W PHP konstrukcja foreach stanowi rodzaj

A. pętli, wyłącznie dla elementów tablicy
B. wyboru, dla elementów tablicy
C. pętli, niezależnie od typu zmiennej
D. warunkową, niezależnie od typu zmiennej
Pierwsza niepoprawna odpowiedź myli foreach z instrukcją wyboru, co jest błędne. Foreach nie wybiera elementów, tylko je przetwarza. W PHP nie mamy jakiejś instrukcji wyboru jak if-else, które różnicują zadania w zależności od warunków. Pętla foreach działa na zasadzie przetwarzania wszystkich elementów, a nie ich selekcji. Następnie, ktoś napisał, że foreach jest niezależna od typu zmiennej, co również jest mylące. W prawdziwym życiu foreach wymaga, aby zmienna była tablicą. Jakbyś wrzucił coś innego, co nie jest tablicą, PHP wyrzuci błąd, więc to nie jest uniwersalne dla wszystkich typów. Ostatnia błędna odpowiedź próbuje przypisać foreach do instrukcji warunkowej. Instrukcje warunkowe, jak if czy switch, decydują na podstawie spełniania pewnych warunków, a foreach po prostu wykonuje operację na każdym elemencie tablicy. Ważne jest, żeby zrozumieć tę różnicę, bo każda z tych konstrukcji ma swoje zastosowania, które są istotne, gdy programujemy.

Pytanie 39

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

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

Pytanie 40

Poniższy fragment kodu PHP służy do zarządzania

if (empty($_POST["name"])) {
    $nameErr = "Name is required";
}
A. sesjami
B. formularzami
C. ciasteczkami
D. bazami danych
Kod PHP obsługujący formularz często bywa mylony z innymi procesami ze względu na podobieństwo składniowe oraz zastosowanie tych samych superglobalnych tablic. Jednakże w przykładzie przedstawionym w pytaniu użycie $_POST jednoznacznie wskazuje na interakcję z danymi przesyłanymi z formularza. Kod nie dotyczy ciasteczek, które używają tablicy $_COOKIE do operacji związanych z przechowywaniem małych ilości danych w przeglądarce klienta. Również nie obejmuje zarządzania sesjami, które w PHP realizowane jest poprzez tablicę $_SESSION oraz funkcje takie jak session_start(), służące do przechowywania danych użytkownika pomiędzy różnymi żądaniami. Bazy danych natomiast operują na zupełnie innych mechanizmach i wymagają specyficznych funkcji oraz rozszerzeń, jak MySQLi czy PDO, do interakcji z systemami zarządzania bazami danych. Częstym błędem jest przypisywanie funkcji walidacyjnych formularzy również do innych komponentów aplikacji, co może prowadzić do mylnych wniosków na temat ich roli i zastosowania. Zrozumienie różnic między tymi elementami jest kluczowe dla poprawnego projektowania i implementacji aplikacji webowych, zapewniając ich bezpieczeństwo i poprawne działanie. Kod PHP powinien być pisany z uwzględnieniem zasad separacji logiki aplikacyjnej, aby każda część systemu była odpowiedzialna za specyficzne zadania, co ułatwia utrzymanie i rozwój aplikacji.