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 kwietnia 2026 01:33
  • Data zakończenia: 17 kwietnia 2026 01:53

Egzamin zdany!

Wynik: 21/40 punktów (52,5%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

W trakcie weryfikacji stron internetowych nie uwzględnia się

A. działania hiperłączy
B. zgodności z różnymi przeglądarkami
C. błędów w składni kodu
D. źródła pochodzenia narzędzi edytorskich
Walidacja stron internetowych to proces, który ma na celu zapewnienie, że HTML, CSS oraz inne elementy technologii webowych są zgodne ze standardami określonymi przez W3C (World Wide Web Consortium). W kontekście walidacji nie bada się źródła pochodzenia narzędzi edytorskich, ponieważ te narzędzia, takie jak edytory tekstu czy IDE (Integrated Development Environment), są jedynie medium do tworzenia kodu, a nie jego treści. Z perspektywy walidacji, kluczowe jest, aby kod był syntaktycznie poprawny oraz spełniał standardy interoperability, takie jak HTML5 czy CSS3. Przykładem walidacji może być użycie narzędzi takich jak W3C Validator, które analizują kod strony i wskazują błędy składniowe, problemy z dostępnością oraz niezgodności z różnymi przeglądarkami. Dzięki walidacji, developers mogą zapewnić, że ich strony będą działały poprawnie na różnych urządzeniach i przeglądarkach, co wpływa na lepsze doświadczenia użytkowników. Walidacja jest zatem kluczowym krokiem w procesie tworzenia stron internetowych, zapewniającym ich jakość i zgodność ze światowymi standardami.

Pytanie 2

Który z elementów jest opcjonalny w kodzie HTML5 i jego pominięcie nie spowoduje wygenerowania błędu lub ostrzeżenia walidatora HTML?

A. <meta name="keywords" content="">
B. <title>Tytuł strony</title>
C. <!DOCTYPE html>
D. <html lang="pl">
To pytanie bardzo dobrze pokazuje różnicę między elementami wymaganymi przez specyfikację HTML5 a tymi, które są tylko dodatkowymi informacjami. Wiele osób myli tu pojęcie „często używany” z „obowiązkowy” i stąd biorą się błędne odpowiedzi. Deklaracja <!DOCTYPE html> w HTML5 jest kluczowa, bo informuje przeglądarkę, że ma interpretować dokument w trybie standardowym, zgodnie z HTML5, a nie w jakimś starym „quirks mode”. Jeśli ją pominiesz, walidator HTML będzie zgłaszał problemy, a przeglądarka może zacząć zachowywać się nieprzewidywalnie. To nie jest tylko formalność – brak doctype potrafi rozwalić działanie CSS-ów, szczególnie w starszych przeglądarkach. Dlatego w dobrych praktykach tworzenia stron WWW doctype jest zawsze na samym początku dokumentu. Podobnie element html z atrybutem lang, np. <html lang="pl">, jest bardzo ważny z punktu widzenia dostępności (WCAG, ARIA). Określenie języka dokumentu pomaga czytnikom ekranu i narzędziom asystującym poprawnie odczytywać treść. Walidatory HTML potrafią zgłaszać ostrzeżenia, gdy lang jest pominięty, bo to narusza dobre praktyki i wytyczne dotyczące dostępności. W nowoczesnych projektach webowych brak lang jest traktowany jako błąd jakościowy, nawet jeśli strona „jakoś działa”. Znacznik <title> w sekcji head też nie jest dowolny. Tytuł dokumentu jest wymagany przez specyfikację HTML, a jego brak może generować ostrzeżenia walidatora. Dodatkowo wpływa on na to, jak strona jest prezentowana w karcie przeglądarki, w historii, w zakładkach oraz w wynikach wyszukiwania. Z mojego doświadczenia brak tytułu to sygnał, że ktoś po prostu zaniedbuje podstawy semantyki HTML. Element meta name="keywords" jest inny od poprzednich. To tylko dodatkowy metatag, który nie wpływa na strukturę dokumentu, nie jest wymagany przez standard i obecnie nie ma realnego znaczenia dla SEO. Typowy błąd myślowy polega na tym, że skoro „kiedyś wszyscy kazali go wpisywać”, to musi być obowiązkowy. W HTML5 to po prostu opcjonalna ciekawostka. Właśnie dlatego jedynie jego pominięcie nie spowoduje błędów ani ostrzeżeń walidatora, natomiast ignorowanie doctype, lang czy title jest wbrew dobrym praktykom tworzenia stron WWW i standardom branżowym.

Pytanie 3

W formularzu wartości z pola input o typie number zostały przypisane do zmiennej a, a następnie przetworzone w skrypcie JavaScript w sposób następujący: ```var x = parseInt(a);``` Jakiego typu będzie zmienna x?

A. napisowego
B. Nan
C. liczbowego, całkowitego
D. zmiennoprzecinkowego
Wybór niepoprawnych odpowiedzi wynika z nieporozumienia dotyczącego działania funkcji parseInt oraz typów danych w JavaScript. W pierwszej z niepoprawnych odpowiedzi, Nan oznacza 'Not a Number', który jest zwracany, gdy operacja konwersji na liczbę nie może zostać przeprowadzona. W kontekście zmiennej a, jeśli ta wartość jest poprawnym wejściem z pola input typu number, parseInt nie zwróci NaN, a raczej prawidłową liczbę całkowitą. Kolejna opcja opisuje typ napisowy, co jest sprzeczne z tym, co zapewnia funkcja parseInt, ponieważ zwraca ona wartość liczbową, a nie tekst. Wartości typu string mogą być konwertowane na liczby, ale samo pole input o typie number nie wprowadza napisów, a zatem nie tworzy sytuacji, w której wynik byłby typu string. Ostatnia z błędnych odpowiedzi nawiązuje do zmiennoprzecinkowego typu danych. Chociaż JavaScript obsługuje liczby zmiennoprzecinkowe, funkcja parseInt celowo konwertuje na wartość całkowitą, co wyklucza możliwość uzyskania zmiennoprzecinkowego wyniku. Zrozumienie tych różnic jest istotne dla efektywnego programowania w JavaScript i unikania typowych pułapek związanych z konwersją typów.

Pytanie 4

Jakie kolory wchodzą w skład modelu barw CMYK?

A. cyjan, magenta, żółty i karmazyn
B. czerwony, zielony oraz niebieski
C. cyjan, magenta, żółty i czarny
D. czerwony, zielony, niebieski oraz kanał alfa
Czerwony, zielony i niebieski to kolory, które są składowymi modelu RGB (Red, Green, Blue), który jest stosowany głównie w kontekście wyświetlaczy elektronicznych, takich jak monitory i telewizory. W modelu RGB kolory są generowane przez dodawanie światła, co różni się od modelu CMYK, w którym kolory są uzyskiwane przez subtraktywne mieszanie barw. W kontekście druku, użycie RGB może prowadzić do nieprzewidywalnych rezultatów, gdyż kolory na ekranie nie zawsze odpowiadają tym, które pojawią się na wydruku. Często następuje konieczność konwersji kolorów z RGB na CMYK, aby uzyskać właściwe odwzorowanie kolorów. Cyjan, magenta, żółty i karmazyn to kombinacja kolorów, która nie jest standardowym zestawem składowych w modelu barw. Karmazyn, jako kolor pochodny, nie jest uznawany za podstawowy składnik modelu CMYK, a zamiast tego jest blisko związany z magentą, co może wprowadzać w błąd. Z kolei pojęcie kanału alfa odnosi się do przezroczystości w obrazach rastrowych, co jest związane z modelem kolorów RGBA, a nie z CMYK. Kanał alfa jest istotny w kontekście edycji grafiki komputerowej, ale nie ma zastosowania w tradycyjnych procesach druku, gdzie priorytetem jest odwzorowanie kolorów w formacie CMYK.

Pytanie 5

Kwerenda umożliwiająca wprowadzenie zmian w wielu rekordach lub przeniesienie ich za pomocą jednej operacji nosi nazwę kwerendy

A. krzyżowej
B. wybierającej
C. funkcjonalnej
D. parametrycznej
Kwerenda parametryczna to rodzaj kwerendy, która umożliwia użytkownikowi wprowadzenie parametrów w celu wykonania zapytania. Choć parametry mogą być wykorzystywane do modyfikacji danych, nie są one odpowiednie do wprowadzania masowych zmian, ponieważ wymagają interakcji użytkownika w celu ustalenia wartości parametrów. Z kolei kwerenda wybierająca, której celem jest pobieranie danych z bazy, nie wprowadza ani nie modyfikuje informacji, a jedynie prezentuje dane zgodnie z określonymi kryteriami. To sprawia, że nie można jej używać do wprowadzania zmian w rekordach. Kwerenda krzyżowa natomiast, która jest wykorzystywana do analizy danych w formie tabel przestawnych, również nie działa w kontekście masowych aktualizacji lub przeniesień rekordów. Zamiast tego, kwerendy krzyżowe agregują dane w celu analizy, co sprawia, że są one skuteczne do raportowania, ale nie do operacji modyfikujących bazę danych. Wszystkie te trzy typy kwerend mają swoje specyficzne zastosowania, lecz w kontekście pytania, to kwerenda funkcjonalna jest jedynym odpowiednim narzędziem do wprowadzania zmian w wielu rekordach jednocześnie.

Pytanie 6

Do uruchomienia kodu napisanego w języku PHP konieczne jest posiadanie w systemie

A. serwera WWW, parsera PHP oraz bazy danych MySQL
B. serwera WWW z bazą danych MySQL
C. przeglądarki internetowej
D. serwera WWW z interpreterem PHP
Aby wykonać kod zapisany w języku PHP, konieczne jest posiadanie serwera WWW z zainstalowanym interpreterem PHP. PHP (Hypertext Preprocessor) jest językiem skryptowym, który działa po stronie serwera, co oznacza, że kod PHP jest przetwarzany na serwerze zanim zostanie wysłany do przeglądarki użytkownika. Serwer WWW, taki jak Apache lub Nginx, musi być skonfigurowany do obsługi PHP, co zazwyczaj wymaga zainstalowania odpowiedniego modułu lub interpreter PHP. Przykładowo, w systemach Linux, PHP można zainstalować za pomocą menedżera pakietów, co umożliwia łatwe uruchamianie skryptów PHP. W przypadku prostych aplikacji webowych wystarczy zainstalować serwer WWW oraz PHP, aby rozpocząć pracę. Ważne jest również, aby pamiętać o różnicy między PHP a innymi językami, takimi jak JavaScript, który działa po stronie klienta. Standardy, takie jak PHP-FIG, określają, jak powinny być pisane i organizowane aplikacje w PHP, co ułatwia ich późniejsze rozwijanie i utrzymanie.

Pytanie 7

W tabeli zadania znajduje się pole tekstowe status. Jakie zapytanie należy użyć, aby usunąć te zadania, które mają status 'zamknięte'?

A. DELETE FROM zadania WHERE status = 'zamknięte';
B. TRUNCATE TABLE zadania WHERE status = 'zamknięte';
C. DELETE FROM zadania;
D. TRUNCATE TABLE zadania;
Odpowiedź DELETE FROM zadania WHERE status = 'zamknięte' jest poprawna, ponieważ wykorzystuje standardową składnię SQL do usuwania rekordów z tabeli na podstawie zadanych warunków. W tym przypadku, kwerenda ta usuwa tylko te wiersze, które mają wartość 'zamknięte' w polu status. Jest to podejście zgodne z dobrymi praktykami, ponieważ pozwala na precyzyjne określenie, które dane mają zostać usunięte, co minimalizuje ryzyko przypadkowego usunięcia innych rekordów. Na przykład, w systemie zarządzania projektami, możemy mieć wiele zadań z różnymi statusami, takimi jak 'otwarte', 'w trakcie', czy 'zamknięte'. Użycie tej kwerendy pozwala na oczyszczenie bazy danych z nieaktualnych zadań, co jest kluczowe dla utrzymania porządku i efektywności w zarządzaniu projektami. Ponadto, stosując tę metodę, możemy w przyszłości łatwo modyfikować warunki usuwania, na przykład zmieniając status na 'wstrzymane', zachowując elastyczność w zarządzaniu danymi.

Pytanie 8

W języku JavaScript należy sformułować warunek, który będzie prawdziwy, gdy zmienna a będzie jakąkolwiek liczbą naturalną dodatnią (również nie zerową) lub gdy zmienna b będzie liczbą mieszczącą się w przedziale od 10 do 100, włącznie. Wyrażenie logiczne zastosowane w tym warunku powinno mieć 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))
Odpowiedź (a>0) || ((b>=10) && (b<=100)) jest poprawna, ponieważ precyzyjnie odwzorowuje wymagane warunki. Warunek logiczny składa się z dwóch głównych części. Pierwsza część, (a>0), sprawdza, czy zmienna a jest liczbą naturalną dodatnią. Liczby naturalne dodatnie to liczby całkowite większe od zera, co oznacza, że a musi być większe od zera, aby warunek był spełniony. Druga część warunku, ((b>=10) && (b<=100)), wymaga, aby zmienna b znajdowała się w przedziale od 10 do 100, włącznie z tymi wartościami. Zastosowanie operatora && w tej części oznacza, że obie nierówności muszą być spełnione jednocześnie. Operator || łączy te dwie części, co oznacza, że wystarczy spełnić jeden z warunków, aby cały wyrażenie logiczne zwróciło prawdę. Jest to zgodne z zasadami programowania, które wskazują na konieczność precyzyjnego definiowania warunków w celu uniknięcia niejasności. W praktyce takie wyrażenie jest niezwykle przydatne w sytuacjach, gdy konieczne jest weryfikowanie wartości zmiennych przed ich dalszym przetwarzaniem, co pozwala na zwiększenie bezpieczeństwa i stabilności aplikacji.

Pytanie 9

Jakie działania należy podjąć, aby stworzyć stronę internetową dostosowaną do potrzeb osób z niepełnosprawnościami, zgodnie z wytycznymi WCAG 2.x?

A. używać jedynie paragrafów, nie wykorzystywać nagłówków h1 – h6
B. używać jedynie jednej palety barw z jednym głównym kolorem oraz jego różnymi odcieniami
C. wybrać najczęściej stosowaną przeglądarkę i na niej przeprowadzać testy tworzonej strony
D. podpisywać wszystkie obrazy tekstem alternatywnym oraz kontrolki etykietami
Stosowanie tylko paragrafów bez nagłówków ogranicza strukturę i hierarchię informacji na stronie, co jest sprzeczne z zasadami dostępności. Nagłówki h1-h6 są kluczowymi elementami struktury dokumentu, które pomagają w organizacji treści i umożliwiają użytkownikom oraz technologiom asystującym, takim jak czytniki ekranu, szybkie zrozumienie układu informacji. Użytkownicy z niepełnosprawnościami często polegają na nawigacji opartej na strukturze nagłówków, aby efektywnie przemieszczać się po stronie. Wybór najpopularniejszej przeglądarki do testów nie zapewnia rzetelnej weryfikacji dostępności, ponieważ różne przeglądarki mogą różnie interpretować właściwości dostępności. Ponadto, ograniczenie się do jednej palety barw z tylko jednym głównym kolorem może prowadzić do problemów z kontrastem, co jest istotnym aspektem dostępności. Zgodnie z standardami WCAG, dobrze zaprojektowana paleta powinna zapewniać wystarczający kontrast między tekstem a tłem, aby umożliwić osobom z niepełnosprawnościami wzrokowymi łatwe odczytanie treści. Podsumowując, każde z tych podejść pomija kluczowe zasady, które są niezbędne do zapewnienia faktycznej dostępności stron internetowych.

Pytanie 10

Aby zweryfikować ustawienia w pliku php.ini, można wykonać skrypt PHP, który zawiera polecenie

A. <?php echo phpversion(); ?>
B. <?php phpinfo(); ?>
C. <?php ini_set(); ?>
D. <?php phpcredits(); ?>
Pomimo że inne funkcje podane w odpowiedziach mogą być użyteczne w różnych kontekstach, nie są one odpowiednie do wyświetlania pełnych ustawień konfiguracyjnych PHP. Funkcja ini_set(), na przykład, służy do dynamicznego zmieniania ustawień konfiguracyjnych w czasie działania skryptu, ale nie dostarcza informacji o aktualnych wartościach tych ustawień. Można ją użyć do modyfikacji konfiguracji, ale nie do ich przeglądania, co czyni ją nieodpowiednią do omawianego zadania. Ponadto, echo phpversion() zwraca jedynie wersję PHP, co jest zbyt ograniczone, aby zapewnić pełny przegląd środowiska konfiguracyjnego. Z kolei phpcredits() wyświetla informacje o wkładzie programistów PHP i nie ma związku z konfiguracją systemu, przez co również nie spełnia wymagań związanych z pytaniem. Często programiści mogą mylić te funkcje, zakładając, że są one w stanie dostarczyć kompleksowych informacji o ustawieniach PHP. Kluczowe jest zrozumienie różnic między tymi funkcjami i umiejętność zastosowania ich w odpowiednich kontekstach, co jest niezbędne do efektywnego zarządzania aplikacjami PHP.

Pytanie 11

Poniżej przedstawiono fragment kodu w języku PHP. Jakie liczby wypisze ta pętla jako wynik swojego działania?

for ($i = 0; $i <= 20; $i += 4)
echo $i . ' ';
A. 0,4,8,12,16
B. 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
C. 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
D. 0,4,8,12,16,20
Pętla for w PHP działa tak, że zaczyna od 0 i leci aż do 20, dodając 4 przy każdej iteracji. Dzięki temu, dostajemy liczby 0, 4, 8, 12, 16 i 20. To jest naprawdę przydatne, zwłaszcza gdy chcemy przetwarzać co czwarty element w zbiorze. Pętle for są bardzo popularne w programowaniu, bo pozwalają robić rzeczy wielokrotnie bez zbędnego powtarzania kodu. Jeśli zrozumiesz, jak to działa, to potem dużo łatwiej będzie Ci pisać różne programy. Z moich doświadczeń wynika, że lepiej jest unikać tzw. magicznych liczb w kodzie, czyli takich, które nie mają sensownego wyjaśnienia. Lepiej używać stałych czy zmiennych, bo to sprawia, że kod jest bardziej czytelny i łatwiejszy do ogarnięcia w przyszłości.

Pytanie 12

W przedstawionym filmie, aby połączyć tekst i wielokąt w jeden obiekt tak, aby operacja ta była odwracalna zastosowano funkcję

A. wykluczenia.
B. grupowania.
C. sumy.
D. części wspólnej.
Prawidłowo – w filmie została użyta funkcja grupowania. W grafice wektorowej, np. w programach typu Inkscape, CorelDRAW czy Illustrator, grupowanie służy właśnie do logicznego połączenia kilku obiektów w jeden „zestaw”, ale bez trwałego mieszania ich geometrii. To znaczy: tekst dalej pozostaje tekstem, wielokąt dalej jest wielokątem, tylko są traktowane jak jeden obiekt przy przesuwaniu, skalowaniu czy obracaniu. Dzięki temu operacja jest w pełni odwracalna – w każdej chwili możesz rozgrupować elementy i edytować każdy osobno. Moim zdaniem to jest podstawowa dobra praktyka w pracy z projektami, które mogą wymagać późniejszych poprawek: podpisy, etykiety, logotypy, schematy techniczne. Jeśli połączysz tekst z kształtem za pomocą operacji boolowskich (suma, część wspólna, wykluczenie), to tekst zwykle zamienia się na krzywe, przestaje być edytowalny jako tekst. To bywa potrzebne przy przygotowaniu do druku czy eksportu do formatu, który nie obsługuje fontów, ale nie wtedy, gdy zależy nam na łatwej edycji. Z mojego doświadczenia: przy projektowaniu interfejsów, ikon, prostych banerów na WWW czy grafik do multimediów, najrozsądniej jest najpierw grupować logicznie elementy (np. ikona + podpis), a dopiero na samym końcu, gdy projekt jest ostateczny, ewentualnie zamieniać tekst na krzywe. Grupowanie pozwala też szybko zaznaczać całe moduły projektu, wyrównywać je względem siebie, duplikować całe zestawy (np. kafelki menu, przyciski z opisami) bez ryzyka, że coś się rozjedzie. W grafice komputerowej to taka podstawowa „organizacja pracy” – mniej destrukcyjna niż różne operacje na kształtach i zdecydowanie bardziej elastyczna przy późniejszych zmianach.

Pytanie 13

Jaki zestaw liczb zostanie wyświetlony w wyniku działania pętli napisanej w języku PHP?

$liczba = 10;
while ($liczba < 50) {
  echo "$liczba ";
  $liczba = $liczba + 5;
}
A. 0 5 10 15 20 25 30 35 40 45
B. 10 15 20 25 30 35 40 45 50
C. 0 5 10 15 20 25 30 35 40 45 50
D. 10 15 20 25 30 35 40 45
Prawidłowa odpowiedź to 10 15 20 25 30 35 40 45 ponieważ pętla while w języku PHP działa na zasadzie sprawdzania warunku przed każdą iteracją. W tym przypadku zmienna $liczba jest inicjalizowana wartością 10 a warunek w pętli sprawdza czy $liczba jest mniejsza niż 50. Wartość zmiennej jest wypisywana i następnie zwiększana o 5 w każdym kroku iteracyjnym. Pętla zakończy się gdy $liczba osiągnie wartość 50 lub większą. Dlatego ostatnią wypisaną wartością będzie 45 gdyż po dodaniu 5 zmienna $liczba wyniesie 50 i przestanie spełniać warunek pętli. Takie konstrukcje pętli są powszechne w programowaniu szczególnie gdy mamy do czynienia z iteracją po stałych przedziałach liczbowych. Stosowanie pętli while jest zalecane w przypadku gdy liczba iteracji nie jest z góry znana a jedynie zależy od spełnienia określonego warunku. Ważne jest by pamiętać o możliwości nieskończonej pętli jeśli warunek nigdy nie zostanie spełniony co może prowadzić do błędów wykonania programu. Praktycznym zastosowaniem takiej pętli jest iteracja po zbiorze danych którego rozmiar zależy od zewnętrznych czynników np danych wejściowych od użytkownika lub zawartości pliku.

Pytanie 14

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 15

W poniższym zapisie CSS kolor zielony zostanie zastosowany do

h2
{
    background-color: green;
}
A. czcionki wszystkich nagłówków na stronie
B. tła całej witryny
C. tła tekstu nagłówka drugiego poziomu
D. czcionki nagłówka drugiego poziomu
Zrozumienie różnicy między background-color a innymi właściwościami CSS jest kluczowe dla poprawnego stylizowania elementów na stronach internetowych. Właściwość background-color nie wpływa na kolor czcionki, lecz jedynie na kolor tła określonego elementu. Dlatego zapis background-color: green; dla selektora h2 ustawia zielone tło dla wszystkich nagłówków drugiego stopnia na stronie. To skutecznie wyklucza możliwość, by dotyczyło to samej czcionki czy całej strony. Idea, że mógłby to być kolor czcionki dla nagłówków bądź całej strony, jest błędna, ponieważ do zmiany koloru czcionki używa się właściwości color, a nie background-color. Mylenie tych właściwości jest częstym błędem, jednak ich prawidłowe rozróżnienie pozwala na precyzyjne sterowanie wyglądem elementów. Przy zastosowaniu właściwych stylów można zyskać nie tylko na atrakcyjności wizualnej, ale także na dostępności i użyteczności. Warto też pamiętać o znaczeniu semantycznym tagów HTML, co w połączeniu z odpowiednim stylizowaniem wspiera lepszą indeksację przez wyszukiwarki internetowe oraz poprawia doświadczenie użytkownika w nawigacji po stronie. Takie zrozumienie pozwala na tworzenie stron zgodnych z aktualnymi standardami webowymi, promując dobre praktyki w projektowaniu interfejsów użytkownika. Zastosowanie zielonego tła dla <h2> jest zgodne z zasadami CSS, co pozwala na dokładne kontrolowanie stylu w nowoczesnych aplikacjach internetowych.

Pytanie 16

W zamieszczonym kodzie PHP, zamiast znaków zapytania powinien być wyświetlony komunikat:

$x = mysql_query('SELECT * FROM mieszkancy');
if (!$x)
    echo '??????????????????????';
A. Zapytanie zostało poprawnie przetworzone
B. Niepoprawna nazwa bazy danych
C. Błąd w trakcie przetwarzania zapytania
D. Niepoprawne hasło do bazy danych
W przedstawionym kodzie PHP, komunikat "??????????????????????" powinien wskazywać na błąd przetwarzania zapytania SQL. Kiedy wynik funkcji mysql_query() jest równy fałszowi (false), oznacza to, że zapytanie nie mogło zostać poprawnie wykonane. Może to być spowodowane różnymi czynnikami, takimi jak błędy w składni zapytania, problemy z połączeniem z bazą danych, lub nieprawidłowe tabele. W tym przypadku, dobrym podejściem jest użycie funkcji mysql_error() w celu uzyskania bardziej szczegółowych informacji na temat natury błędu. Przykład poprawnego kodu mógłby wyglądać tak: <p>$x = mysql_query('SELECT * FROM mieszkancy');<br>If (!$x) {<br>echo mysql_error();<br>}</p> Używanie tej metody pomaga w diagnostyce problemu i pozwala na szybsze jego rozwiązanie. Znalezienie i naprawienie błędów w zapytaniach SQL jest kluczowe w pracy z bazami danych, szczególnie w kontekście aplikacji internetowych, które muszą być niezawodne i efektywne.

Pytanie 17

W zapytaniu SQL, umieszczonym w ramce, symbol gwiazdki wskazuje, że w wyniku tego zapytania

Ilustracja do pytania
A. zostaną wyświetlone wszystkie wpisy z tabeli mieszkańcy
B. zostanie pominięty warunek dotyczący imienia
C. zostanie pokazane pole o nazwie "*" (gwiazdka)
D. zostaną wyświetlone wszystkie kolumny tabeli mieszkańcy
W kontekście zapytań SQL często dochodzi do błędów interpretacyjnych związanych z użyciem znaku gwiazdki (*). Niektóre osoby mogą błędnie zakładać, że znak ten ma inne zastosowanie niż wyświetlanie wszystkich kolumn, co prowadzi do nieporozumień. Pierwszym błędnym założeniem jest myśl, że znak gwiazdki zignoruje warunek w klauzuli WHERE; SQL jest językiem deklaratywnym i każde zapytanie wykonuje się zgodnie z jego składnią, uwzględniając podane warunki filtracji danych. Zapytanie SELECT * FROM mieszkańcy WHERE imie='Anna'; zawsze będzie selekcjonować rekordy, gdzie imię jest równe 'Anna', niezależnie od tego, co jest umieszczone po SELECT. Innym błędnym rozumieniem jest przekonanie, że znak gwiazdki wyświetli kolumnę o nazwie '*'. W rzeczywistości SQL nie rozpoznaje '*' jako nazwy kolumny, lecz jako symbol zastępczy dla wszystkich kolumn w tabeli. Takie podejście byłoby przeciwne samej naturze języka SQL, który jest precyzyjny i zorientowany na strukturalne przetwarzanie danych. Dobre praktyki branżowe zalecają także stosowanie jawnego nazywania kolumn w zapytaniach produkcyjnych, co zwiększa czytelność i bezpieczeństwo zapytania, zwłaszcza gdy bazy danych są duże i złożone.

Pytanie 18

Wynikiem działania algorytmu dla c = 3 jest liczba

Ilustracja do pytania
A. 24
B. 6
C. 12
D. 60
Żeby dobrze zrozumieć, dlaczego wyniki 6, 12 czy 60 nie są poprawne, trzeba spokojnie przeanalizować logikę całego schematu blokowego, a nie zatrzymywać się na pierwszym wrażeniu. Algorytm nie wykonuje pojedynczego mnożenia, tylko korzysta z pętli sterowanej zmienną b oraz warunkiem b <= c + 1. Takie konstrukcje są typowym źródłem pomyłek typu „o jeden za mało” lub „o jeden za dużo”, bo łatwo przeoczyć, że granica to właśnie c+1, a nie samo c. Częsta błędna intuicja jest taka: skoro c = 3, to b zaczyna od 2, więc mnożymy 1 * 2 * 3 i dostajemy 6. To wygląda logicznie, ale pomija fakt, że warunek dopuszcza jeszcze b = 4, bo sprawdzamy b <= 4, a nie b < 4. W efekcie pętla wykonuje się trzy razy: dla b = 2, 3 i 4. Stąd wynik 6 odpowiada jedynie sytuacji, gdyby warunek był zapisany jako b <= c (lub gdyby ktoś „w głowie” zakończył działanie pętli o jedną iterację za wcześnie). To klasyczny błąd przy ręcznej symulacji pętli. Podobnie wynik 12 zwykle bierze się z pomieszania kolejności operacji: ktoś policzy 2 * 3 = 6, potem doda 4 zamiast znowu pomnożyć, albo przerwie analizę po dwóch krokach. To pokazuje, jak ważne jest trzymanie się dosłownie instrukcji: a = a * b oznacza zawsze mnożenie, bez żadnych wyjątków. Z kolei 60 może być efektem całkowicie oderwanego od schematu zgadywania, albo próby „dopisywania” dodatkowych kroków, jakby pętla wykonywała się jeszcze dla kolejnych wartości, których warunek już nie dopuszcza. Z mojego doświadczenia warto przy takich zadaniach zawsze wypisać kolejne stany zmiennych a i b w tabelce: po inicjalizacji, po każdej iteracji i po wyjściu z pętli. To jest bardzo dobra praktyka, zgodna z profesjonalnym podejściem do analizy algorytmów, bo pozwala wyłapać wszystkie nieporozumienia związane z warunkiem końca pętli. Takie umiejętności przydają się potem w realnym kodzie, niezależnie czy piszesz w JavaScript, PHP, czy w innym języku – unikniesz wtedy typowych bugów związanych ze złym zakresem pętli i błędami obliczeń.

Pytanie 19

Wskaż, jaki błąd walidacyjny zawiera przedstawiony fragment kodu w języku HTML 5.

<h6>CSS</h6>
<p>Kaskadowe arkusze stylów (<b>ang. <i>Cascading Style Sheets</b></i>)<br>to język służący ...</p>
A. Znacznik br nie powinien znajdować się wewnątrz znacznika p
B. Znacznik br nie został prawidłowo zamknięty
C. Znacznik h6 nie jest używany w HTML5
D. Znacznik zamykający /b jest niezgodny z zasadą zagnieżdżania
Znacznik br w języku HTML5 może być stosowany samodzielnie i nie wymaga dodatkowego zamykania. Jest to znacznik pusty, który służy do wstawiania przerw w tekście i nie ma żadnych treści wewnętrznych. Jest szeroko używany i całkowicie dopuszczalny w ramach standardu HTML5. Użycie go wewnątrz znacznika p nie jest błędem; br jest wykorzystywany do łamania linii w akapitach i jest często stosowany w celach formatowania tekstu. W przypadku znacznika <h6>, jest on jak najbardziej częścią HTML5, służąc do definiowania nagłówków o najmniejszej ważności w hierarchii nagłówków. Zastosowanie wszystkich sześciu poziomów nagłówków (<h1> do <h6>) jest zgodne ze standardami, a każdy z nich ma swoje specyficzne zastosowanie w strukturze dokumentu. Dlatego też odpowiedzi sugerujące, że znacznik br musi być zamknięty lub że h6 nie jest częścią HTML5, są błędne i wynikają z niezrozumienia lub nieaktualnej wiedzy na temat standardów HTML. Prawidłowa konstrukcja dokumentu HTML i znajomość specyfikacji pozwalają na tworzenie semantycznie poprawnych i dobrze działających stron WWW.

Pytanie 20

O obiekcie zdefiniowanym w języku JavaScript można stwierdzić, że zawiera

var obiekt1 = {
  x: 0,
  y: 0,
  wsp: functon() { … }
}
A. dwie metody oraz jedną właściwość
B. dwie właściwości oraz jedną metodę
C. trzy metody
D. trzy właściwości
Odpowiedź, że obiekt w JavaScript ma dwie właściwości i jedną metodę, jest poprawna. Przykład obiektu `obiekt1` zawiera dwie właściwości: `x` i `y`, które są liczbowymi wartościami. Dodatkowo, metoda `wsp` jest poprawnie zdefiniowana jako funkcja, co czyni ją metodą obiektu. W praktyce obiekty w JavaScript służą do grupowania danych i funkcji, co jest przydatne w programowaniu obiektowym. Wprowadzenie do obiektów i ich właściwości oraz metod jest kluczowym elementem zrozumienia, jak JavaScript operuje na danych. Standardowe praktyki zalecają, aby metody były używane do definiowania zachowań obiektów, co jest zgodne z zasadami programowania zorientowanego obiektowo, gdzie obiekt jest zbiorem właściwości i metod, które operują na tych właściwościach. W kontekście dbałości o czystość kodu, warto zwrócić uwagę na stosowanie dobrej nazewnictwa dla metod i właściwości, co zwiększa czytelność i zrozumienie kodu. Przykładowo, jeśli `wsp` miała by reprezentować funkcję obliczającą współrzędne, dobrze by było, aby jej nazwa była bardziej opisowa, na przykład `obliczWspolrzedne`.

Pytanie 21

W tabeli programiści znajdują się kolumny: id, nick, ilosc_kodu, ocena. W kolumnie ilosc_kodu zapisano liczbę linii kodu, które programista napisał w danym miesiącu. Jakie zapytanie umożliwi obliczenie całkowitej liczby linii kodu stworzonych przez wszystkich programistów?

A. SELECT SUM(ocena) FROM ilosc_kodu;
B. SELECT MAX(ilosc_kodu) FROM programisci
C. SELECT COUNT(programisci) FROM ilosc_kodu;
D. SELECT SUM(ilosc_kodu) FROM programisci;
Poprawna odpowiedź to 'SELECT SUM(ilosc_kodu) FROM programisci;'. To polecenie wykorzystuje funkcję agregującą SUM, która sumuje wartości w kolumnie 'ilosc_kodu' dla wszystkich wpisów w tabeli 'programisci'. Jest to najbardziej odpowiednia metoda do obliczenia całkowitej liczby linii kodu napisanych przez wszystkich programistów w danym miesiącu. Funkcje agregujące, takie jak SUM, COUNT, AVG, MAX czy MIN, są kluczowe w SQL, ponieważ pozwalają na efektywne przetwarzanie danych i uzyskiwanie podsumowań na podstawie określonych kryteriów. Dobrą praktyką jest również używanie jednoznacznych aliasów w zapytaniach oraz dbanie o czytelność kodu, co ułatwia jego późniejsze modyfikacje oraz utrzymanie. Przykładowo, można rozszerzyć zapytanie o dodatkowe filtry, aby obliczyć sumę linii tylko dla programistów o określonej ocenie, używając klauzuli WHERE. Tego typu umiejętności są niezbędne w codziennej pracy analityka danych, programisty lub administratora baz danych, gdzie przetwarzanie informacji w sposób efektywny i zrozumiały ma kluczowe znaczenie dla podejmowania decyzji biznesowych.

Pytanie 22

Gdzie w dokumencie HTML mogą być umieszczane fragmenty kodu JavaScript?

A. wyłącznie w sekcji <body>, w znaczniku <java>
B. zarówno w sekcji <head>, jak i <body>, w znaczniku <script>
C. tak w sekcji <head>, jak i <body>, w znaczniku <java>
D. jedynie w sekcji <head>, w znaczniku <script>
Wiesz, wstawianie kodu JavaScript do dokumentu HTML powinno odbywać się w znaczniku <script>. Możesz go umieścić zarówno w <head>, jak i w <body>. Często wrzucamy skrypty do <head>, bo chcemy, żeby załadowały się przed wyświetleniem treści. To się przydaje, gdy skrypty zmieniają coś w DOM. Z drugiej strony, jak wrzucisz je do <body>, to skrypty będą ładowane po całej treści, co może przyspieszyć to, co widzi użytkownik. Na przykład, jeśli tworzysz coś interaktywnego, lepiej umieścić skrypty na dole, żeby nie blokować renderowania. Dobrze jest też pamiętać o atrybucie 'defer' w <script>, bo dzięki temu skrypt się ściąga równolegle z innymi rzeczami, ale działa dopiero jak cały dokument jest załadowany. To ważne, żeby strony działały sprawnie i były przyjemne w użytkowaniu.

Pytanie 23

W językach programowania strukturalnego do przechowywania danych o 50 uczniach (ich imionach, nazwiskach, średniej ocen) należy zastosować

A. tablicę 50 elementów o składowych typu łańcuchowego.
B. klasę 50 elementów typu tablicowego.
C. strukturę 50 elementów o składowych tablicowych.
D. tablicę 50 elementów o składowych strukturalnych.
Wybór nieodpowiedniej struktury danych w programowaniu może prowadzić do nieefektywnego zarządzania danymi i trudności w ich przetwarzaniu. Propozycja użycia struktury 50 elementów o składowych typu tablicowego z reguły nie jest optymalnym podejściem. Tablice w programowaniu są jednorodne, co oznacza, że przechowują tylko jeden typ danych. W przypadku przechowywania informacji o uczniach, takich jak imiona, nazwiska i średnie ocen, każdy z tych atrybutów powinien być reprezentowany przez różne typy danych (np. łańcuchy dla imion i nazwisk oraz liczby zmiennoprzecinkowe dla ocen). Oparcie się na tablicy elementów o składowych tablicowych prowadziłoby do sytuacji, w której trudno byłoby obsługiwać różne typy danych, co jest niepraktyczne i może prowadzić do wielu błędów. Wybór tablicy 50 elementów o składowych łańcuchowych jest także niewłaściwy, ponieważ ponownie nie umożliwia zarządzania różnorodnymi danymi, a jedynie danymi tekstowymi. Przy tego rodzaju podejściu nie można efektywnie przechowywać i operować na różnych typach danych. Kolejny błąd to korzystanie z klasy 50 elementów typu tablicowego, co nie jest zgodne z założeniami programowania obiektowego, które zaleca modelowanie obiektów jako jednostek zawierających różne atrybuty. Wybierając odpowiednią strukturę danych, programiści powinni zwracać uwagę na złożoność danych oraz na to, jak będą one używane w kodzie, co z kolei wpływa na wydajność oraz czytelność aplikacji.

Pytanie 24

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

A. Skanujących urządzeń.
B. Cyfrowych przyrządów dokonujących pomiarów.
C. Obrazów generowanych przez drukarki i plotery
D. Obrazów bitmapowych.
Rozdzielczość wyrażana w jednostkach ppi (pixels per inch) odnosi się do ilości pikseli na cal w obrazach tworzonych przez drukarki i plotery. Wyższa wartość ppi oznacza większą gęstość pikseli, co przekłada się na wyższą jakość druku oraz więcej szczegółów w finalnym obrazie. W praktyce, standardowe wartości ppi dla wysokiej jakości druku to 300 ppi lub więcej, co jest preferowane w przypadku fotografii oraz materiałów reklamowych. Wartości te są zgodne z wytycznymi branżowymi, które sugerują, że dla druku offsetowego zaleca się rozdzielczość minimum 300 ppi, aby zachować szczegóły i ostrość obrazu. Użycie odpowiednich wartości ppi jest kluczowe w procesie prepress, gdzie przygotowuje się materiały do druku. Nieodpowiednia rozdzielczość może prowadzić do rozmycia, pikselizacji i ogólnej utraty jakości w finalnym produkcie, co negatywnie wpływa na wrażenia wizualne odbiorców oraz wizerunek marki.

Pytanie 25

Co chce osiągnąć poniższe zapytanie MySQL?

ALTER TABLE ksiazki
MODIFY tytul VARCHAR(100) NOT NULL;
A. Dodać do tabeli ksiazki kolumnę tytul
B. Zmienić nazwę kolumny w tabeli ksiazki
C. Zmienić typ kolumny w tabeli ksiazki
D. Usunąć kolumnę tytul z tabeli ksiazki
Polecenie SQL ALTER TABLE ksiazki MODIFY tytul VARCHAR(100) NOT NULL; służy do zmiany typu kolumny tytul w tabeli ksiazki. W tym przypadku typ kolumny jest zmieniany na VARCHAR(100), co oznacza, że będzie przechowywać łańcuchy znaków o maksymalnej długości 100 znaków, a dodatkowo kolumna ta nie może przyjmować wartości NULL. Użycie ALTER TABLE i MODIFY pozwala na dynamiczną modyfikację struktury tabeli bez konieczności jej usuwania i ponownego tworzenia, co jest korzystne w dużych systemach bazodanowych, gdzie minimalizacja czasu przestoju jest kluczowa. Praktyczne zastosowanie polecenia MODIFY jest szerokie i obejmuje sytuacje, w których wymagane są zmiany w przechowalności danych, na przykład aby dostosować się do nowych wymagań biznesowych lub normatywnych. Warto pamiętać o dopasowaniu zmian do istniejących danych i zapewnieniu spójności bazy danych, co jest dobrą praktyką w zarządzaniu bazami danych.

Pytanie 26

Aby przekształcić tekst „ala ma psa” na „ALA MA PSA”, jaka funkcja PHP powinna być zastosowana?

A. strstr ('ala ma psa');
B. strtoupper('ala ma psa');
C. strtolower('ala ma psa');
D. ucfirst ('ala ma psa');
Funkcja strtoupper w PHP jest używana do konwersji wszystkich liter w danym ciągu znaków na wielkie litery. W kontekście modyfikacji tekstu „ala ma psa” na „ALA MA PSA”, zastosowanie funkcji strtoupper('ala ma psa') jest poprawnym podejściem. Funkcja ta jest częścią standardowej biblioteki PHP i jest szeroko stosowana w projektach, gdzie zachowanie wielkich liter jest kluczowe. Przykład użycia funkcji strtoupper jest prosty: wystarczy przekazać do niej ciąg, który ma zostać przekształcony. Przykładem może być zapis: $text = 'ala ma psa'; $uppercaseText = strtoupper($text); echo $uppercaseText; co wygeneruje wynik ALA MA PSA. Warto zauważyć, że funkcja ta nie zmienia oryginalnego ciągu, lecz zwraca nowy ciąg z przekształconymi literami. Zastosowanie funkcji strtoupper jest szczególnie przydatne w aplikacjach webowych, gdzie formatowanie tekstu może być kluczowe dla zapewnienia spójności danych wyjściowych oraz ich estetyki.

Pytanie 27

Aby uzyskać dane z tabeli pracownicy wyłącznie dla osób, które osiągnęły 26 lat, należy zastosować zapytanie

A. SELECT * FROM pracownicy WHERE wiek > '25'
B. SELECT * FROM pracownicy AND wiek > '25'
C. SELECT * FROM wiek WHERE pracownicy > '25'
D. SELECT * FROM pracownicy OR wiek > '25'
Poprawne zapytanie to 'SELECT * FROM pracownicy WHERE wiek > '25';'. To zapytanie jest zgodne z zasadami SQL i pozwala na wyświetlenie wszystkich rekordów z tabeli 'pracownicy', które spełniają określony warunek dotyczący wieku. Używając klauzuli WHERE, precyzyjnie filtrujemy wyniki i zwracamy tylko tych pracowników, którzy mają więcej niż 25 lat. Warto pamiętać, że w SQL operator '>' jest wykorzystywany do porównywania wartości, a w tym przypadku pozwala nam na wybranie pracowników, którzy ukończyli 26 lat. Przy projektowaniu zapytań SQL, kluczowe jest stosowanie odpowiednich warunków filtrujących, aby ograniczyć zwracane dane do tych istotnych dla analiz. Przykładowo, analiza wieku pracowników w kontekście przyznawania dodatków lub przeprowadzania szkoleń może opierać się na takich zapytaniach. W praktyce, ważne jest także wykorzystanie indeksów w bazach danych, aby zwiększyć wydajność zapytań, zwłaszcza w dużych zbiorach danych.

Pytanie 28

Wskaż nieprawidłowy opis optymalizacji kodu generowanego przez program.

A. Powinna skutkować modyfikacją kodu źródłowego, aby działał on szybciej
B. Jej celem jest sprawdzenie zgodności z wymogami formalnymi
C. Jej celem jest zwiększenie efektywności działania programu
D. Może być realizowana na różnych etapach działania w celu przyspieszenia wykonania kodu przez procesor
Wszystkie niepoprawne odpowiedzi odnoszą się do różnych aspektów, które nie są zgodne z rzeczywistym celem optymalizacji kodu wynikowego. Poprawa wydajności programu i zwiększenie szybkości wykonywania kodu przez procesor są kluczowymi elementami optymalizacji; niezbędne jest dążenie do maksymalizacji efektywności działania aplikacji. Proces optymalizacji nie może być związany jedynie z zgodnością z wymogami formalnymi, ponieważ to bardziej dotyczy analizy jakości kodu i jego zgodności z zasadami programowania, a nie jego wydajności. Dodatkowo, modyfikacje kodu źródłowego w kontekście optymalizacji powinny koncentrować się na przyspieszeniu działania, a nie tylko na poprawie formalnych aspektów, które mogą nie wpływać na wydajność. W praktyce, jeśli kod źródłowy nie jest zoptymalizowany pod kątem wydajności, może prowadzić do znacznych opóźnień, co jest niezgodne z celem optymalizacji. Dlatego istotne jest, aby w procesie tym skupić się na zwiększaniu szybkości i wydajności, a nie na spełnianiu jedynie formalnych wymogów, które mogą być mniej istotne w kontekście ogólnej funkcjonalności i szybkości działania programów.

Pytanie 29

Wskaż warunek w języku JavaScript, który ma na celu sprawdzenie, czy przynajmniej jeden z poniższych przypadków jest spełniony: 1) dowolna naturalna liczba a jest liczbą trzycyfrową 2) dowolna liczba całkowita b jest liczbą ujemną

A. ((a>99)&&(a<1000))||(b<0)
B. ((a>99)||(a<1000))||(b<0)
C. ((a>99)&&(a<1000))&&(b<0)
D. ((a>99)||(a<1000))&&(b<0)
Warunek zapisany jako ((a>99)&&(a<1000))||(b<0) jest poprawny, ponieważ sprawdza dwa różne przypadki. Pierwsza część warunku, (a>99)&&(a<1000), zwraca prawdę, gdy a jest liczbą naturalną w zakresie od 100 do 999, co oznacza, że jest to liczba trzycyfrowa. Z kolei druga część, b<0, jest spełniona, gdy b jest liczbą całkowitą mniejszą od zera, co oznacza, że jest to liczba ujemna. Zastosowanie operatora logicznego '||' (OR) pozwala na spełnienie warunku, gdy przynajmniej jeden z dwóch przypadków jest prawdziwy. Użycie operatora '&&' (AND) w pierwszej części jest kluczowe, ponieważ musi być spełniony zarówno warunek większy niż 99, jak i mniejszy niż 1000, co pozwala na precyzyjne określenie, czy a jest liczbą trzycyfrową. Przykładowo, gdy a = 150, a b = -5, cały warunek zwróci prawdę z powodu drugiej części warunku. Na przeciwnym biegunie, jeśli a = 50, a b = 5, warunek zwróci fałsz, ponieważ ani a nie jest trzycyfrowe, ani b nie jest ujemne. Tego rodzaju warunki są powszechnie stosowane w programowaniu, aby weryfikować różne stany i wartości zmiennych w aplikacjach webowych i systemach informatycznych.

Pytanie 30

Bitmapa stanowi typ obrazu

A. interakcyjnym
B. wektorowym
C. rastrowym
D. analogowym
Wybierając odpowiedzi inne niż 'rastrowym', można napotkać na szereg nieporozumień dotyczących typów obrazów i ich zastosowań. Przykładowo, odpowiedź 'interakcyjnym' może sugerować, że obraz bitmapowy ma zdolność do reagowania na działania użytkownika, co jest nieprawidłowe, ponieważ bitmapy są statycznymi reprezentacjami wizualnymi. Interaktywność w kontekście grafiki dotyczy raczej animacji lub elementów wideo. Odpowiedź 'wektorowym' odnosi się do zupełnie innego typu grafiki, która używa matematycznych równań do definiowania kształtów i linii, co pozwala na skalowanie bez utraty jakości. Wektory są wykorzystywane w projektach, które wymagają precyzyjnych linii i kształtów, jak logotypy czy ilustracje, a ich zastosowanie jest inne niż w przypadku bitmap. Wybór odpowiedzi 'analogowym' wskazuje na mylne pojęcie, że bitmapa mogłaby być obrazem fizycznym, takim jak slajdy czy zdjęcia wydrukowane, co jest sprzeczne z naturą cyfrowych obrazów; bitmapy są bytem cyfrowym, co oznacza, że są one przetwarzane i przechowywane w formacie elektronicznym. Tego rodzaju pomyłki mogą prowadzić do nieporozumień w pracy z grafiką, dlatego warto zwracać uwagę na różnice między tymi pojęciami oraz ich odpowiednie zastosowanie w praktyce.

Pytanie 31

Podana jest tabela psy z polami: imie, rasa, telefon_wlasciciela, rok_szczepienia. Jakie polecenie SQL należy zastosować, aby znaleźć numery telefonów właścicieli, których psy były szczepione przed rokiem 2015?

A. SELECT imie, rasa FROM psy WHERE rok_szczepienia > 2015
B. SELECT telefon_wlasciciela FROM psy WHERE rok_szczepienia > 2015
C. SELECT psy FROM rok_szczepienia < 2015
D. SELECT telefon_wlasciciela FROM psy WHERE rok_szczepienia < 2015
Wybór odpowiedzi 'SELECT telefon_wlasciciela FROM psy WHERE rok_szczepienia < 2015;' jest poprawny z kilku powodów. Przede wszystkim, zapytanie to spełnia wymogi dotyczące selekcji danych z tabeli 'psy', koncentrując się na właścicielach psów, które zostały zaszczepione przed rokiem 2015. W SQL klauzula WHERE jest kluczowym elementem, który pozwala na filtrowanie wyników według określonych kryteriów. W tym przypadku, filtrujemy psy na podstawie roku ich szczepienia, co jest zgodne z naszym celem. Ponadto, selekcjonowanie tylko kolumny 'telefon_wlasciciela' jest właściwe, ponieważ chcemy uzyskać konkretne dane, a nie całą tabelę. Użycie operatora '<' jest odpowiednie, ponieważ skupia się na roku mniejszym niż 2015. Praktycznym zastosowaniem tego zapytania może być uzyskanie kontaktów do właścicieli, aby przypomnieć im o konieczności ponownego zaszczepienia ich psów, co wpisuje się w działania profilaktyczne i zdrowotne w dbaniu o dobrostan zwierząt. Warto również pamiętać, że dobre praktyki w projektowaniu baz danych zalecają użycie poprawnych typów danych oraz właściwe indeksowanie kolumn, co może przyspieszyć wykonanie zapytań tego typu.

Pytanie 32

Funkcja CONCAT() w SQL służy do

A. usuwania określonego tekstu
B. uzyskiwania podłańcucha ze wskazanego tekstu
C. przycinania tekstu do wyświetlenia
D. łączenia tekstów do wyświetlenia
Funkcja CONCAT() w SQL nie ma nic wspólnego z usuwaniem tekstu, przycinaniem go ani wyznaczaniem podłańcuchów. Usunięcie wskazanego tekstu to inaczej operacja związana z funkcją REPLACE lub DELETE, które służą do usuwania fragmentów danych z tabel, a nie ich łączenia. Przycinanie tekstu, z kolei, może być realizowane za pomocą funkcji CHARINDEX lub LEN, które są używane do określenia długości tekstu lub jego pozycji, ale nie mają one zastosowania w kontekście łączenia różnych elementów. Odpowiedź sugerująca, że CONCAT() wyznacza podłańcuchy znaków, również jest mylna, ponieważ do tego celu służą funkcje takie jak SUBSTRING czy LEFT, które pozwalają na wyodrębnianie określonych części tekstu na podstawie pozycji. Typowym błędem myślowym jest mylenie różnych funkcji SQL, które pełnią odrębne role. Należy pamiętać, że każda z tych operacji ma swoje unikalne zastosowanie i są one wykorzystywane w różnych kontekstach. Dlatego przed przystąpieniem do użycia konkretnej funkcji, warto dokładnie zrozumieć jej przeznaczenie i działanie, aby uniknąć nieporozumień i błędów w zapytaniach SQL.

Pytanie 33

Działaniem podanego kodu PHP będzie wypełnienie tablicy

$tab = array();
for ($i = 0; $i < 10; $i++) {
    $tab[$i] = rand(-100, 100);
}
foreach ($tab as $x) {
    if ($x < 0) {
        echo "$x ";
    }
}
A. 10 losowymi wartościami, a następnie wypisanie wartości ujemnych
B. kolejnymi liczbami od 0 do 9 i ich wypisanie
C. kolejnymi liczbami od -100 do 100 i wypisanie wartości ujemnych
D. 100 losowymi wartościami, a następnie wypisanie wartości dodatnich
Zakładając, że odpowiedzi są błędne, warto zwrócić uwagę na kilka aspektów. Pierwsza z błędnych odpowiedzi sugeruje, że tablica jest wypełniana kolejnymi liczbami od 0 do 9, co jest niezgodne z zamysłem kodu, gdzie wykorzystywana jest funkcja losująca 'rand', a nie sekwencyjne przypisywanie wartości. W efekcie zamiast wartości od 0 do 9, mamy do czynienia z liczbami losowymi z szerokiego zakresu. Ponadto, druga odpowiedź błędnie interpretuje, że tablica zawiera liczby od -100 do 100. Mimo że możliwe jest, aby tablica zawierała takie liczby, kod nie wypełnia jej w sposób sekwencyjny i nie gwarantuje, że wszystkie wartości będą ujemne. Ostatnia błędna odpowiedź odnosi się do 100 losowych wartości, co również jest niepoprawne, ponieważ w kodzie jedynie 10 losowych wartości jest generowanych i zapisywanych w tablicy. Wreszcie, kod koncentruje się na wypisywaniu wartości ujemnych, dlatego odpowiedzi dotyczące wartości dodatnich są również mylące. Nie można zatem mówić o sytuacji, w której wartości dodatnie są wypisywane, co podkreśla, że analiza i interpretacja kodu są kluczowe dla zrozumienia jego działania.

Pytanie 34

Jakim sposobem w języku PHP można zapisać komentarz zajmujący kilka linii?

A. /* */
B. //
C. #
D. <!-- -->
W języku PHP, sposób komentowania bloku komentarza w kilku liniach to użycie znaków /* i */. Taki sposób pozwala na umieszczenie dowolnej ilości tekstu w obrębie tych znaków, co jest niezwykle przydatne, gdy chcemy opisać bardziej złożoną funkcję lub fragment kodu. Na przykład, w czasie tworzenia dokumentacji kodu, często stosujemy bloki komentarzy do szczegółowego opisania działania funkcji, parametrów oraz zwracanych wartości. Dzięki temu każdy programista, który będzie pracował z naszym kodem w przyszłości, może szybko zrozumieć jego przeznaczenie. Dobrą praktyką jest również umieszczanie daty aktualizacji oraz informacji o autorze w takich blokach, co ułatwia zarządzanie projektem. Stosowanie bloków komentarzy jest zgodne z konwencjami programistycznymi, co zwiększa czytelność kodu i jego późniejszą konserwację.

Pytanie 35

Funkcja drzewo kontekstowe w edytorze WYSIWYG Adobe Dreamweaver ma na celu

A. określenie kaskadowych arkuszy stylów przypisanych do strony
B. przygotowanie szablonu witryny internetowej
C. stylizację tekstu za pomocą dostępnych znaczników
D. prezentowanie interaktywnej struktury drzewa HTML dla treści statycznych i dynamicznych
Wybór odpowiedzi dotyczącej definiowania kaskadowych arkuszy stylów (CSS) w kontekście funkcji drzewa kontekstowego w Adobe Dreamweaver jest mylący. Kaskadowe arkusze stylów są narzędziem służącym do stylizacji stron internetowych, ale nie są bezpośrednio związane z funkcjonalnością drzewa kontekstowego, które koncentruje się na przedstawieniu struktury HTML dokumentu. Kiedy projektant korzysta z edytora, może wprowadzać zmiany w stylach CSS, jednak drzewo kontekstowe nie jest dedykowane temu procesowi. Ponadto, zrozumienie struktury HTML jest kluczowe do efektywnego stosowania CSS, ale to nie oznacza, że można je mylić. Druga odpowiedź, dotycząca tworzenia szablonu strony internetowej, jest również nieprecyzyjna. Szablony są narzędziem do ułatwienia konstrukcji stron, ale drzewo kontekstowe nie jest bezpośrednio związane z ich tworzeniem. Podobnie, formatowanie tekstu przy pomocy znaczników nie jest funkcją drzewa kontekstowego; jest to zadanie edytora WYSIWYG jako całości. Zrozumienie tych koncepcji technicznych jest kluczowe, aby uniknąć typowych pułapek myślowych, takich jak mylenie różnych funkcji edytorów oraz ich zastosowań w procesie tworzenia stron internetowych. Osoby pracujące w branży powinny być dobrze zaznajomione z odpowiedzialnością, jaką niesie ze sobą poprawne stosowanie narzędzi i technologii, aby efektywnie realizować projekty webowe.

Pytanie 36

Jaką właściwość pola w tabeli powinno się ustawić, aby akceptowało ono wyłącznie dane liczbowe?

Ilustracja do pytania
A. Tagi inteligentne
B. Wartość domyślną
C. Maskę wprowadzania
D. Regułę sprawdzania poprawności
Tagi inteligentne są narzędziem umożliwiającym szybki dostęp do dodatkowych funkcji lub opcji związanych z danymi w polu. Nie mają jednak zdolności do ograniczania samej zawartości pola w kontekście dozwolonych znaków. Ich rola jest raczej wspomagająca użytkownika poprzez dodawanie kontekstowych opcji, ale nie dotyczą bezpośrednio walidacji danych. Wartość domyślna to z kolei predefiniowana wartość, jaką pole przyjmuje w momencie tworzenia nowego rekordu, jednak nie wpływa na to, jakie dane użytkownik może wprowadzić. Jest użyteczna do ułatwienia tworzenia danych, ale nie służy do ograniczania formatu wprowadzanych danych. Chociaż reguła sprawdzania poprawności może być stosowana do określania, jakie dane są uznawane za poprawne, jej główną rolą jest weryfikacja już wprowadzonych danych, a nie ich formatowanie w trakcie wprowadzania. Reguły te mogą informować o błędach po wprowadzeniu danych, lecz nie zapobiegają samemu wprowadzaniu błędnych danych. Wiele osób może mylnie sądzić, że reguła sprawdzania poprawności i maska wprowadzania pełnią podobne funkcje, jednak maska działa na poziomie interfejsu wprowadzania, wymuszając określony format w czasie rzeczywistym, podczas gdy reguła działa retrospektywnie. Zrozumienie tych różnic pozwala na odpowiednie zastosowanie tych narzędzi w projektowaniu baz danych, co skutkuje lepszym zarządzaniem jakością danych oraz zwiększeniem intuicyjności interfejsu użytkownika. Stosowanie masek wprowadzania jest szczególnie korzystne w kontekście aplikacji z dużą ilością danych liczbowych, gdzie precyzja jest kluczowa, a reguły poprawności lepiej sprawdzają się w kontekście logicznych zależności pomiędzy polami danych. To rozróżnienie jest kluczowe dla osiągnięcia wysokiej jakości danych i łatwej obsługi w systemach informatycznych.

Pytanie 37

Jakie znaczniki należy zastosować, aby w pliku z rozszerzeniem php umieścić kod napisany w języku PHP?

A. <?php ................................ ?>
B. <php>  .......................  </php>
C. <php ..................................... />
D. <?php> .......................... <php?>
Żeby umieścić kod PHP w pliku o rozszerzeniu .php, trzeba użyć znaczników <?php i ?>. Te znaczniki mówią serwerowi, że wszystko, co jest między nimi, należy traktować jako kod PHP. To jest standardowa praktyka w PHP, ważne jest, aby kod był właściwie przetwarzany przez interpreter. Na przykład, jeżeli chcemy pokazać napis na stronie, możemy użyć: <?php echo 'Witaj świecie!'; ?>. Dzięki temu można w łatwy sposób wpleść kod PHP w plik HTML i robić różne rzeczy, jak np. pracować z bazami danych czy obsługiwać formularze. Zrozumienie tych znaczników jest mega ważne dla każdego programisty, bo wpływa to na wydajność i bezpieczeństwo aplikacji. Jeszcze jedno, PHP to język dynamicznie typowany, więc jego interpretacja może się różnić w zależności od kontekstu. Dlatego tak istotne jest, żeby dobrze formatować kod.

Pytanie 38

Jak należy skonstruować zapytanie przy pomocy polecenia SELECT, aby wyświetlić unikalne nazwiska osób zamieszkujących osiedle?

A. SELECT TOP 10 nazwisko FROM mieszkancy;
B. SELECT AVG(nazwisko) FROM mieszkancy;
C. SELECT DISTINCT nazwisko FROM mieszkancy;
D. SELECT nazwisko FROM mieszkancy ORDER BY nazwisko;
Odpowiedź 'SELECT DISTINCT nazwisko FROM mieszkancy;' jest poprawna, ponieważ wykorzystuje klauzulę DISTINCT, która eliminuje duplikaty w wynikach zapytania. W kontekście baz danych, klauzula ta jest niezwykle użyteczna, gdy zależy nam na uzyskaniu unikalnych wartości z kolumny. W tym przypadku, wybierając unikalne nazwiska osób z tabeli 'mieszkancy', zapewniamy, że każde nazwisko pojawi się w wynikach tylko raz, co jest istotne w analizach i raportach, gdzie duplikaty mogłyby wprowadzać w błąd. Praktycznym przykładem użycia tego zapytania może być sytuacja, w której chcemy przygotować raport dla władz lokalnych o mieszkańcach danego osiedla. Zastosowanie DISTINCT pozwoli na przejrzystość raportu i jego większą użyteczność. Warto dodać, że użycie DISTINCT jest zgodne z dobrymi praktykami w programowaniu SQL, ponieważ przyczynia się do efektywnego zarządzania danymi i poprawy jakości wyników.

Pytanie 39

Tabele Osoby oraz Zainteresowania są połączone relacją jeden do wielu. Jakie zapytanie SQL należy użyć, aby w oparciu o tę relację poprawnie wyświetlić imiona i odpowiadające im hobby?

Ilustracja do pytania
A. SELECT imie, hobby FROM Osoby, Zainteresowania;
B. SELECT imie, hobby FROM Osoby.Zainteresowania_id = Zainteresowania.id FROM Osoby, Zainteresowania;
C. SELECT imie, hobby FROM Osoby JOIN Zainteresowania ON Osoby.Zainteresowania_id = Zainteresowania.id;
D. SELECT imie, hobby FROM Osoby, Zainteresowania WHERE Osoby.id = Zainteresowania.id;
Odpowiedź numer 1 jest poprawna, ponieważ wykorzystuje składnię JOIN, która jest standardowym sposobem łączenia dwóch tabel w SQL. W tym przypadku tabele Osoby i Zainteresowania są połączone za pomocą klucza obcego Osoby.Zainteresowania_id, który odwołuje się do klucza głównego w tabeli Zainteresowania. Dzięki użyciu klauzuli ON możemy precyzyjnie określić warunek łączenia tych tabel. Takie podejście jest zgodne z dobrymi praktykami projektowania baz danych, ponieważ pozwala na efektywne zarządzanie relacjami między danymi. Stosowanie JOIN umożliwia również ograniczenie wyniku do konkretnych wierszy, co zwiększa wydajność zapytań. Praktyczne zastosowanie tego rodzaju zapytań obejmuje różne systemy zarządzania danymi, gdzie konieczne jest pobieranie powiązanych informacji z wielu źródeł danych. Warto również pamiętać, że JOIN-y są ustandaryzowanym elementem języka SQL, co gwarantuje ich poprawne działanie w różnych systemach bazodanowych, takich jak MySQL, PostgreSQL czy Oracle SQL. W kontekście relacyjnych baz danych stanowią one fundament w optymalizacji i organizacji danych, co jest kluczowe dla profesjonalistów z branży IT.

Pytanie 40

Aby zaktualizować maksymalną długość kolumny imie w tabeli klienci do 30 znaków, należy zastosować w języku SQL poniższy kod

A. ALTER TABLE klienci MODIFY COLUMN imie VARCHAR(30);
B. CHANGE TABLE klienci MODIFY imie CHAR(30);
C. ALTER TABLE klienci CHANGE imie TEXT;
D. CHANGE TABLE klienci TO COLUMN imie SET CHAR(30);
Odpowiedzi, które nie zostały uznane za poprawne, zawierają istotne błędy w składni i logice użycia poleceń SQL. W pierwszym przypadku, użycie 'CHANGE TABLE' oraz 'TO COLUMN' jest niezgodne z syntaksą SQL. W SQL nie istnieje polecenie 'CHANGE TABLE', co czyni tę odpowiedź całkowicie błędną. Dodatkowo, 'SET CHAR(30)' nie jest akceptowaną konstrukcją w kontekście modyfikacji kolumn. W drugim przypadku, użycie 'CHAR(30)' zamiast 'VARCHAR(30)' ogranicza możliwość przechowywania danych do stałej długości 30 znaków, co nie jest optymalne dla pól tekstowych, w których długość danych może się różnić. To może prowadzić do marnotrawienia przestrzeni w bazie danych. Ostatnia odpowiedź, w której proponuje się użycie polecenia 'CHANGE' oraz 'TEXT', jest również błędna, ponieważ 'TEXT' nie jest odpowiednim typem danych w tym kontekście i nie odpowiada wymaganiom dotyczącym długości. Właściwe polecenia powinny być zgodne z zasadami SQL oraz specyfiką danych, które chcemy przechowywać, co w tym przypadku nie zostało spełnione.