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: 5 kwietnia 2026 16:20
  • Data zakończenia: 5 kwietnia 2026 16:47

Egzamin zdany!

Wynik: 25/40 punktów (62,5%)

Wymagane minimum: 20 punktów (50%)

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

Polecenie SQL:

GRANT SELECT, INSERT, UPDATE, DELETE ON klienci TO adam@localhost
Przedstawione polecenie SQL nadaje użytkownikowi adam@localhost prawa:
A. do zarządzania strukturą bazy danych klienci
B. do manipulowania danymi w tabeli klienci
C. do manipulowania danymi bazy danych klienci
D. do zarządzania strukturą tabeli klienci
W kontekście analizy niepoprawnych odpowiedzi, odpowiedzi dotyczące zarządzania strukturą tabeli klienci oraz zarządzania strukturą bazy danych klienci są niepoprawne, ponieważ polecenie GRANT nie odnosi się do tych aspektów. Zarządzanie strukturą tabeli zazwyczaj obejmuje takie operacje jak tworzenie lub modyfikowanie tabel, co jest realizowane przez polecenia takie jak CREATE TABLE czy ALTER TABLE. W przypadku polecenia GRANT, nie ma mowy o wprowadzaniu zmian w strukturze tabeli, a jedynie o nadawaniu uprawnień do manipulacji danymi. Podobnie, zarządzanie strukturą bazy danych dotyczy bardziej operacji administracyjnych, takich jak tworzenie bazy danych, co również nie jest tożsame z uprawnieniami do operacji na danych. Ostatnia z niepoprawnych odpowiedzi, dotycząca manipulowania danymi bazy danych klienci, jest również myląca, ponieważ odnosi się do całej bazy danych jako całości, podczas gdy polecenie dotyczy wyłącznie konkretnej tabeli. W praktyce, zarządzanie danymi w kontekście bazy danych oznacza operacje na zbiorze danych, a nie na pojedynczych rekordach w tabelach. Dlatego kluczowe jest zrozumienie, że GRANT pozwala na nadawanie uprawnień do działania na konkretnej tabeli, a nie na całej bazie danych czy jej strukturze.

Pytanie 2

Formatem plików graficznych rastrowych z bezstratną kompresją jest

A. PNG
B. JNG
C. SVG
D. CDR
Format PNG (Portable Network Graphics) jest popularnym formatem plików graficznych stosowanym do zapisu obrazów rastrowych z kompresją bezstratną. Oznacza to, że podczas zapisywania pliku nie następuje utrata jakości obrazu, co czyni go idealnym do grafiki internetowej, gdzie jakość wizualna ma kluczowe znaczenie. PNG obsługuje przezroczystość, co pozwala na tworzenie grafik z tłem przejrzystym, co jest niezwykle przydatne w projektowaniu stron internetowych oraz w aplikacjach graficznych. Format ten wspiera także różne głębokości kolorów, co oznacza, że można go używać do przedstawiania obrazów w rozdzielczości do 48 bitów na kanał kolorów. W porównaniu do formatu GIF, PNG oferuje lepszą jakość obrazu oraz szersze możliwości zastosowań, ponieważ nie jest ograniczony do palety 256 kolorów. PNG jest zgodny z wieloma standardami, w tym z Internet Engineering Task Force (IETF), który przyjął go jako standard dla grafiki internetowej. Przykłady zastosowania formatu PNG obejmują ikony, logo oraz ilustracje, które wymagają wysokiej jakości i przezroczystości.

Pytanie 3

Podczas definiowania tabeli produkty należy stworzyć pole cena, które będzie reprezentować wartość produktu. Odpowiedni typ danych dla tego pola to

A. TINYTEXT
B. ENUM
C. INTEGER(11)
D. DECIMAL(10, 2)
Typ DECIMAL(10, 2) jest optymalnym wyborem dla pola reprezentującego cenę produktu w bazie danych. Pozwala on na przechowywanie liczb dziesiętnych z określoną precyzją, co jest kluczowe w kontekście finansowym, gdzie dokładność kwot ma fundamentalne znaczenie. Wartość '10' oznacza maksymalną liczbę cyfr, które mogą zostać zapisane, a '2' definiuje liczbę cyfr po przecinku. Oznacza to, że możemy przechowywać wartości od -99999999.99 do 99999999.99, co jest wystarczające dla większości zastosowań komercyjnych. Użycie tego typu danych zapewnia, że operacje matematyczne, takie jak dodawanie, odejmowanie czy mnożenie cen, będą wykonywane z zachowaniem dokładności. Jest to zgodne z najlepszymi praktykami w projektowaniu baz danych, gdzie unika się typów danych, które mogą prowadzić do utraty precyzji, jak np. FLOAT czy DOUBLE. Przykładowo, w aplikacji e-commerce, gdzie ceny produktów są często wyświetlane z dwoma miejscami po przecinku, typ DECIMAL jest idealnym rozwiązaniem, aby uniknąć błędów w obliczeniach i zapewnić pełną przejrzystość cenową dla użytkowników.

Pytanie 4

Która z zasad walidacji strony internetowej jest nieprawidłowa?

A. Wyłączanie tagów musi następować w odwrotnej sekwencji do ich włączenia, np. ```<p> ... <big>...</big></p>```
B. Tagi, poza samozamykającymi się, funkcjonują do momentu ich wyłączenia znakiem "/", np. ```<p> ..</p>```
C. Jeżeli w poleceniu występuje kilka atrybutów, ich kolejność powinna być uporządkowana alfabetycznie np. ```<img alt="..." src="/.."/>```
D. W tagach nie jest brana pod uwagę różnica między dużymi a małymi literami, np. ```<p>``` i ```<P>``` to ten sam tag.
Odpowiedź dotycząca kolejności atrybutów w znacznikach HTML jest poprawna, ponieważ nie ma wymogu, aby atrybuty w znacznikach były uporządkowane alfabetycznie. W rzeczywistości, HTML pozwala na dowolną kolejność atrybutów, co czyni tę regułę błędną. Przykładowo, znacznik <img src="/path/to/image.jpg" alt="Opis obrazu" /> jest poprawny niezależnie od kolejności atrybutów. Ważne jest, aby atrybuty były odpowiednio używane w kontekście ich przeznaczenia, a nie w kontekście kolejności alfabetycznej. Dobrą praktyką jest również stosowanie atrybutów w sposób, który zwiększa czytelność kodu, jednak nie jest to wymóg techniczny. Zgodnie z zaleceniami W3C, kluczowym aspektem jest poprawność semantyczna i zgodność ze standardami, a nie kolejność atrybutów.

Pytanie 5

Podczas projektowania formularza konieczne jest wstawienie kontrolki, która odnosi się do innej kontrolki w odrębnym formularzu. Taka operacja w bazie danych Access jest

A. możliwa tylko wtedy, gdy są to dane numeryczne
B. możliwa dzięki ustawieniu ścieżki do kontrolki w atrybucie "Źródło kontrolki"
C. niemożliwa w każdym trybie poza trybem projektowania
D. niemożliwa
Błędne odpowiedzi wynikają z nieporozumienia dotyczącego możliwości i zasad działania kontrolek w formularzach Access. Ustawienie ścieżki do kontrolki we właściwości 'Źródło kontrolki' nie jest ograniczone do danych liczbowych, co jest błędnym założeniem. W rzeczywistości można odwoływać się do różnych typów danych, w tym tekstowych, datowych oraz liczbowych, co czyni tę funkcjonalność niezwykle uniwersalną. Twierdzenie, że odwołanie jest niemożliwe, jest również nieprawdziwe; Access oferuje rozbudowane możliwości tworzenia interakcji między formularzami, co jest szeroko stosowane w praktycznych zastosowaniach. Warto również zauważyć, że nie ma ograniczeń co do trybów pracy, które mogłyby wpływać na możliwość odwoływania się do kontrolek, co czyni to stwierdzeniem błędnym. W projektowaniu baz danych szczególnie istotne jest zrozumienie, jak różne elementy systemu mogą współdziałać, a umiejętność poprawnego użycia właściwości kontrolek jest kluczowa dla efektywności i użyteczności aplikacji. Ignorowanie tych aspektów prowadzi do nieefektywnego projektowania, w którym trudno jest zarządzać danymi oraz interakcjami użytkowników z aplikacją.

Pytanie 6

Która z poniższych funkcji języka PHP zamieni wyraz „kota” na wyraz „mysz” w zdaniu „ala ma kota”?

A. str_replace("ala ma kota", "kota", "mysz");
B. replace("kota", "mysz", "ala ma kota");
C. replace("ala ma kota", "kota", "mysz");
D. str_replace( "kota", "mysz", "ala ma kota");
Funkcja str_replace w języku PHP jest używana do zastępowania fragmentów tekstu w łańcuchach znaków. W przypadku podanego zadania, funkcja ta ma trzy argumenty: pierwszy argument to szukany ciąg ("kota"), drugi argument to ciąg, który ma zastąpić ten szukany ("mysz"), a trzeci argument to łańcuch, w którym ma zostać dokonana zmiana ("ala ma kota"). Dzięki tej funkcji, wynikowym tekstem po zastosowaniu będzie "ala ma mysz", co jest dokładnie tym, co chcemy osiągnąć. W praktyce, str_replace jest często wykorzystywana w aplikacjach webowych do dynamizowania treści, gdzie na przykład użytkownik może podać różne dane, które należy przetworzyć. Stosowanie str_replace jest zgodne z najlepszymi praktykami programowania w PHP – umożliwia łatwe i efektywne manipulowanie danymi tekstowymi, co jest integralną częścią wielu projektów. Dodatkowo, warto zaznaczyć, że str_replace jest funkcją case-sensitive, co oznacza, że rozróżnia wielkość liter, więc stosowanie jej wymaga staranności w kontekście przetwarzania tekstów.

Pytanie 7

Poniżej zamieszczony fragment skryptu w JavaScript zwróci

Ilustracja do pytania
A. wo
B. ze
C. owodzeni
D. wodzenia
Ten skrypt w JavaScript zaczyna od zadeklarowania zmiennej x, której przypisywana jest fraza 'Powodzenia na egzaminie'. Potem korzysta z metody substring na tej zmiennej z parametrami (3, 9). To znaczy, że wyciąga kawałek tekstu od indeksu 3 do 9. Pamiętaj, w JavaScript liczymy od zera, więc indeks 3 to czwarty znak, czyli 'o'. Dlatego z.substring(3, 9) zwraca 'odzeni'. Następnie, robimy kolejne wywołanie substring na tym wyniku, z parametrami (2, 4), co daje nam fragment od indeksu 2 do 4 w 'odzeni', czyli 'ze'. Na końcu, funkcja document.write(y) pokaże ten wynik na stronie. To świetny przykład na to, jak manipulować tekstem, co jest naprawdę przydatne w pracy z danymi. Z mojej perspektywy, zrozumienie operacji na tekstach to klucz do skutecznego przetwarzania i prezentacji informacji. Użycie takich metod w JavaScript do pracy z tekstem to absolutna podstawa, z którą warto się zapoznać.

Pytanie 8

Witryna internetowa powinna mieć zaprezentowaną strukturę bloków. Aby osiągnąć ten układ, należy przypisać sekcjom odpowiednie właściwości w następujący sposób:

Ilustracja do pytania
A. float tylko dla bloku 2; clear dla bloków: 3, 4
B. float tylko dla bloków: 3, 4; clear dla bloku 5
C. float tylko dla bloków: 2, 3, 4; clear dla bloku 5
D. float wyłącznie dla bloku 5; clear dla bloku 2
Błędy, jakie pojawiają się przy używaniu float i clear, zazwyczaj wynikają z niezrozumienia ich funkcji w kontekście układu stron. Przypisanie float tylko do bloku 5 oraz clear dla bloku 2 pokazuje, że blok 2 powinien być pod blokiem 5, co nie zgadza się z tym, co jest w diagramie, bo blok 2 jest nad blokami 3 i 4. Z kolei przypisanie float dla bloków 3 i 4 oraz clear dla bloku 5 sugeruje, że te dwa bloki powinny być w jednej linii, a blok 5 miałby być poniżej. To jest poprawne, ale nie naprawia całkowicie układu, bo blok 2 nie jest w tym ujęciu uwzględniony. Cała koncepcja przypisania float tylko dla bloku 2 i clear dla bloków 3 i 4 też ma swoje wady, bo blok 2 ma za zadanie otaczać bloki 3 i 4, ale nie może być przesunięty w taki sposób, żeby osiągnąć układ z diagramu. Często problem ze zrozumieniem float i clear bierze się z błędnego rozumienia relacji między elementami i ich wpływu na układ całościowy. Dlatego rozwiązaniem jest dokładne przypisanie float tym elementom, które trzeba przesunąć, oraz zastosowanie clear tam, gdzie ma się zakończyć efekt przesunięcia. W ten sposób elementy będą się wyświetlały według oczekiwanego układu. Myślę, że zrozumienie tych zasad jest kluczowe do tworzenia poprawnych i estetycznych układów na stronach www.

Pytanie 9

Wskaż problem z walidacją w podanym fragmencie kodu HTML

<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 może występować wewnątrz znacznika p
B. Znacznik zamykający /b niezgodny z zasadą zagnieżdżania
C. Nieznany znacznik h6
D. Znacznik br nie został poprawnie zamknięty
Znacznik zamykający b niezgodny z zasadą zagnieżdżania czyli poprawna odpowiedź 1 odnosi się do zasady poprawnego zagnieżdżania znaczników HTML Zasada ta mówi że znaczniki muszą być zamykane w odwrotnej kolejności do ich otwarcia W naszym przykładzie mamy otwierający znacznik b a następnie i co oznacza że najpierw powinien być zamknięty znacznik i a potem b Tego typu błąd jest często spotykany w kodzie HTML i może prowadzić do nieoczekiwanych problemów z wyświetlaniem strony Warto pamiętać że poprawne zagnieżdżanie znaczników wpływa na czytelność i utrzymanie kodu co jest kluczowe w większych projektach HTML jest językiem opartym na strukturze drzewiastej i każda niezgodność w zagnieżdżaniu może wpłynąć na sposób przetwarzania dokumentu przez przeglądarki Dbałość o szczegóły w strukturze dokumentu HTML jest zgodna z dobrymi praktykami branżowymi i wspomaga zgodność z różnymi przeglądarkami i urządzeniami co w konsekwencji poprawia dostępność i użyteczność strony internetowej

Pytanie 10

W CSS, co spowoduje poniższy kod z plikiem rysunek.png?

p {background-image: url("rysunek.png");}
A. widoczny, jeśli zastosowany zostanie znacznik img w kodzie
B. tłem całej witryny
C. tłem dla każdego akapitu
D. pokazany obok każdego akapitu
Wybrana odpowiedź jest poprawna ponieważ w arkuszach stylów CSS zastosowanie selektora elementu p z właściwością background-image powoduje że obraz rysunek.png zostanie ustawiony jako tło dla każdego elementu paragrafu na stronie. Jest to przydatna technika gdy chcemy nadać spójny wygląd wszystkim paragrafom w dokumencie. Tło to może być używane do celów estetycznych lub jako część identyfikacji wizualnej strony. Warto pamiętać że w CSS można dodatkowo kontrolować sposób wyświetlania obrazka tła za pomocą właściwości takich jak background-repeat background-size i background-position co pozwala na precyzyjne dostosowanie wyświetlania. Dobre praktyki zalecają aby obrazy tła były odpowiednio zoptymalizowane pod kątem rozmiaru aby nie wpływały negatywnie na szybkość ładowania strony. W praktyce stosowanie obrazów jako tła w paragrafach może wspierać wizualne narracje oraz zwiększać zaangażowanie użytkowników szczególnie gdy są stosowane w przemyślany sposób w kontekście projektowania doświadczeń użytkownika UX.

Pytanie 11

W języku HTML zdefiniowano listę:

<ol>
  <li>biały</li>
  <li>czerwony
    <ul>
      <li>różowy</li>
      <li>pomarańczowy</li>
    </ul></li>
  <li>niebieski</li>
</ol>
A. Nie ma zagłębień i jest punktowana, wyświetla 5 punktów.
B. Nie ma zagłębień i jest numerowana, słowo "niebieski" ma przyporządkowany numer 5.
C. Jest to lista punktowana z zagłębioną listą numerowaną.
D. Jest to lista numerowana z zagłębioną listą punktowaną.
Niestety, nie trafiłeś w odpowiedź. Ta lista, co widziałeś na obrazku, jakby nie było, jest zdefiniowana przez znacznik <ol>, więc to lista uporządkowana, a nie punktowana. W HTML mamy właśnie te dwa typy list: uporządkowane i nieuporządkowane, które robi się przez <ol> i <ul>. To, co w Twojej odpowiedzi może być błędne, to pomylenie zagnieżdżeń – w tej liście numerowanej jest jeszcze lista punktowana w środku. Nie ma czegoś takiego, że liczby przypisujesz do pojedynczych słów, jak 'niebieski', albo ograniczasz punkty. Numery w liście są przypisywane automatycznie, w kolejności dodawania. I ważne, żeby rozumieć różnice między tymi listami i umieć je właściwie zagnieżdżać. Jest to kluczowe w HTML.

Pytanie 12

W programie INKSCAPE / COREL, aby uzyskać efekt przedstawiony w napisie, należy

Ilustracja do pytania
A. zastosować funkcję wykluczenia z kołem
B. posłużyć się funkcją gradientu
C. skorzystać z funkcji wstaw / dopasuj tekst do ścieżki
D. wykorzystać funkcję sumy z kołem
Wybierając odpowiednie narzędzia do osiągnięcia skomplikowanych efektów typograficznych ważne jest zrozumienie właściwości każdej funkcji Dostępne odpowiedzi sugerują nieprawidłowe podejścia do problemu Gradient jest narzędziem używanym głównie do tworzenia płynnych przejść między kolorami w obiektach wektorowych Nie wpływa on bezpośrednio na układ tekstu wzdłuż ścieżki Wybór tej opcji może wynikać z błędnego rozumienia że gradient wpływa na formę obiektu w tym przypadku tekstu Funkcja sumy w kontekście programów graficznych takich jak Inkscape czy CorelDraw dotyczy operacji booleowskich na obiektach co prowadzi do łączenia kształtów Wynikowa forma jest sumą obszarów wyjściowych jednak znów nie wpływa to na układ tekstu wzdłuż ścieżki Działanie funkcji wykluczenia z kolei polega na tworzeniu przecięcia dwóch kształtów i usunięciu wspólnego obszaru co jest używane głównie w tworzeniu złożonych kształtów Nie ma to zastosowania przy dopasowywaniu tekstu do ścieżki Myślenie że te operacje booleowskie mogą wpływać na tekst wynika z niezrozumienia jak działają te funkcje w kontekście obiektów i tekstu w programach graficznych Kluczowym błędem jest tutaj założenie że funkcje do manipulacji kształtami mogą być bezpośrednio stosowane do tekstu bez zrozumienia specyfiki narzędzi jakimi są gradient sumowanie czy wykluczanie które nie dotyczą bezpośrednio zarządzania tekstem wzdłuż ścieżki

Pytanie 13

Zawarty w ramce fragment kodu w języku JavaScript

Ilustracja do pytania
A. przypisze do zmiennej s zmienną t
B. przypisze zmiennej s długość tekstu ze zmiennej t
C. przypisze do zmiennej s fragment tekstu ze zmiennej t o długości określonej przez zmienną length
D. wyświetli 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 14

Jaką właściwość CSS należy zastosować, aby uzyskać linie przerywaną w obramowaniu?

Ilustracja do pytania
A. dotted
B. double
C. dashed
D. solid
Odpowiedź dashed jest poprawna ponieważ w CSS właściwość ta służy do definiowania stylu obramowania w postaci linii kreskowanej Jest to często używane do wizualnego oddzielenia zawartości na stronie internetowej bez zbytniego skupiania uwagi Użycie dashed sprawia że linia jest bardziej subtelna w porównaniu do solid co czyni ją dobrym wyborem w przypadku chęci zachowania minimalistycznego wyglądu Zgodnie ze standardami CSS właściwość border-style może przyjmować kilka wartości w tym solid dotted double i dashed Każda z tych wartości ma swoje unikalne zastosowania na przykład solid tworzy ciągłą linię natomiast dotted tworzy linię z kropkami Linia dashed składa się z krótkich kresek co różni ją od linii double która jest podwójną linią W praktyce dashed jest często stosowane w projektach gdzie ważne jest wskazanie na określone sekcje lub elementy bez przytłaczania użytkownika Zgodnie z dobrymi praktykami można dostosować szerokość i kolor obramowania co pozwala na lepszą integrację z ogólnym stylem strony CSS daje dużą elastyczność w projektowaniu co pozwala na tworzenie różnorodnych i responsywnych interfejsów użytkownika

Pytanie 15

Który z wymienionych systemów nie należy do systemów CMS?

A. WordPress
B. Adobe Flash
C. Drupal
D. Joomla!
Adobe Flash to platforma do tworzenia animacji oraz interaktywnych aplikacji internetowych, a nie system zarządzania treścią (CMS). CMS to oprogramowanie, które umożliwia użytkownikom łatwe tworzenie, zarządzanie i publikowanie treści na stronach internetowych bez potrzeby znajomości języków programowania. Flash, stworzony przez firmę Adobe, był wykorzystywany głównie do animacji, gier i aplikacji multimedialnych w sieci, ale nie oferował funkcji typowych dla systemów CMS, takich jak zarządzanie bazą danych, szeregowanie treści czy obsługa użytkowników. Przykłady popularnych CMS-ów to WordPress, który dominuje wśród blogów i prostych stron internetowych, Joomla! znany z elastyczności i szerokich możliwości, oraz Drupal, który zapewnia zaawansowane funkcje dla większych i bardziej skomplikowanych projektów. Użytkownicy mogą łatwo edytować treści, zmieniać układ strony, dodawać nowe funkcjonalności poprzez wtyczki i modyfikować szablony bez potrzeby kodowania, co jest głównym powodem, dla którego CMS-y stały się tak popularne wśród osób nieposiadających umiejętności programistycznych.

Pytanie 16

W zaprezentowanym fragmencie algorytmu użyto

Ilustracja do pytania
A. trzy bloki operacyjne (procesy).
B. jeden blok decyzyjny.
C. dwie pętle.
D. jedną pętlę.
Niepoprawne odpowiedzi wynikają z błędnego zrozumienia struktury algorytmu. Opcja dotycząca dwóch pętli zakłada istnienie dwóch niezależnych cykli co nie znajduje potwierdzenia w przedstawionym schemacie. Taki błąd może wynikać z nieumiejętności rozróżniania złożonych konstrukcji czy mylenia pętli z blokami decyzyjnymi. Jedna pętla oznacza jedną sekwencję powtarzającą się co jest wyraźnie zilustrowane przez powrót strzałki w schemacie. Odpowiedź sugerująca jeden blok decyzyjny nie uwzględnia faktu że blok decyzyjny jest częścią struktury warunkowej a nie pętli. Decyzje wpływają na przepływ sterowania ale nie tworzą same w sobie powtarzającej się sekwencji. Trzy bloki operacyjne odnoszą się do liczby operacji w algorytmie lecz nie implikują pętli. Bloki operacyjne wykonują konkretne zadania jak obliczenia czy przypisania ale nie zmieniają struktury iteracyjnej. Zrozumienie roli każdego z tych elementów jest kluczowe w analizie algorytmów i projektowaniu efektywnego kodu.

Pytanie 17

Jakie wyrażenie logiczne w języku PHP weryfikuje, czy zmienna1 znajduje się w jednostronnie domkniętym przedziale <-5, 10)?

A. $zmienna1 >= -5 || $zmienna1 < 10
B. $zmienna1 <= -5 && $zmienna1 < 10
C. $zmienna1 >= -5 && $zmienna1 < 10
D. $zmienna1 <= -5 || $zmienna1 < 10
Odpowiedź $zmienna1 >= -5 && $zmienna1 < 10 jest poprawna, ponieważ odpowiada definicji jednostronnie domkniętego przedziału, który obejmuje wartość -5 oraz wszystkie wartości większe, ale nie obejmuje wartości 10. Operator && (AND) jest używany do jednoczesnego sprawdzania dwóch warunków: pierwszy warunek ($zmienna1 >= -5) zapewnia, że zmienna jest większa lub równa -5, a drugi warunek ($zmienna1 < 10) sprawdza, czy zmienna jest mniejsza niż 10. W praktyce, taki zapis jest istotny w aplikacjach, gdzie ograniczamy zakres wartości dla zmiennych, na przykład w formularzach walidacji danych wejściowych. Dzięki temu możemy uniknąć błędów, które mogą wystąpić w przypadku niepoprawnych danych. Ponadto, stosowanie operatorów logicznych w PHP jest zgodne z najlepszymi praktykami programowania, jak na przykład dbałość o czytelność kodu oraz jego łatwość w utrzymaniu. Warto także pamiętać o testowaniu skrajnych wartości, aby upewnić się, że nasze warunki działają zgodnie z oczekiwaniami.

Pytanie 18

Aby w języku HTML uzyskać formatowanie paragrafu przedstawione w ramce, należy zastosować kod

Ilustracja do pytania
A. <p>Tekst może być <mark>zaznaczony albo <i>istotny</i> dla autora</mark></p>
B. <p>Tekst może być <mark>zaznaczony albo <em>istotny</em> dla autora</mark></p>
C. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
D. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny dla autora</p>
W tym zadaniu kluczowy problem w niepoprawnych odpowiedziach dotyczy dwóch rzeczy: semantyki znaczników oraz poprawnego zagnieżdżania i domykania tagów HTML. To są niby drobiazgi, ale w realnych projektach potrafią narobić niezłego bałaganu, zwłaszcza przy większych serwisach i integracji z arkuszami CSS czy skryptami JS. Po pierwsze, w części propozycji znaczniki są domykane w złej kolejności albo w ogóle brakuje domknięcia. HTML co prawda bywa tolerancyjny i przeglądarka jakoś to sobie "naprawi", ale z punktu widzenia standardów W3C jest to kod niepoprawny. Jeśli otwierasz <mark>, to najpierw musisz go zamknąć </mark>, zanim zakończysz inne znaczniki albo cały paragraf. Krzyżowe zagnieżdżanie typu: otwieram <mark>, w środku <em>, a zamykam najpierw </mark>, potem </em> – jest po prostu błędne. Walidator HTML od razu to wychwyci. Druga sprawa to obejmowanie znacznikiem <mark> zbyt dużego fragmentu tekstu, łącznie z innymi elementami inline, jak <i> czy <em>. W przykładzie graficznym widać wyraźnie, że podświetlone jest tylko jedno słowo, a kursywa dotyczy innego słowa poza zakreślonym fragmentem. Jeśli więc w kodzie wrzucimy <mark> na większy kawałek, łącznie z tekstem pochyłym, przeglądarka zaznaczy więcej niż powinna i efekt wizualny będzie inny niż na ilustracji. Kolejna kwestia to użycie <i> zamiast <em>. Technicznie <i> też zrobi kursywę, ale jest to element czysto prezentacyjny, bez znaczenia semantycznego. W nowoczesnym HTML5 zaleca się stosowanie <em>, bo podkreśla ono ważność fragmentu z punktu widzenia treści, a nie tylko wygląd. Czytniki ekranu i narzędzia dostępnościowe korzystają z tej informacji. Typowy błąd myślowy polega na tym, że ktoś patrzy wyłącznie na efekt wizualny: "ma być kursywa, to daję <i>" albo "ma się świecić na żółto, to obejmę <mark> wszystko". Tymczasem dobre praktyki frontendu mówią: najpierw semantyka i poprawna struktura, dopiero potem wygląd. Dlatego warto pilnować zarówno właściwego zakresu działania <mark>, jak i domykania tagów w logicznej, zagnieżdżonej kolejności. Dzięki temu kod jest czytelny, łatwiejszy w utrzymaniu i lepiej współpracuje z narzędziami deweloperskimi.

Pytanie 19

Aby strona internetowa skutecznie dopasowywała się do urządzeń mobilnych, należy ustalić rozmiar czcionki

A. tylko znacznikami big i small
B. w pikselach
C. w milimetrach
D. w procentach
Definiowanie wielkości czcionki w pikselach może prowadzić do sztywnych układów, które nie skalują się prawidłowo na różnych urządzeniach. Piksele są jednostką stałą, co oznacza, że niezależnie od rozmiaru ekranu, czcionka zawsze będzie miała tę samą wielkość. To podejście może skutkować trudnościami w odczycie tekstu na mniejszych ekranach, co jest sprzeczne z zasadami projektowania responsywnego. Kolejna jednostka, czyli milimetry, również nie jest praktycznym rozwiązaniem, gdyż nie uwzględnia różnic w rozdzielczości ekranów oraz ich fizycznych rozmiarów. Wygląd witryny może znacznie różnić się w zależności od urządzenia, co komplikuje doświadczenie użytkownika. Użycie znaczników big i small jest całkowicie przestarzałą metodą, która nie tylko ogranicza kontrolę nad rozmiarem tekstu, ale także nie jest zgodna z nowoczesnymi standardami HTML i CSS. Współczesne podejścia do projektowania stron internetowych kładą nacisk na semantykę i dostępność, a te tagi nie wspierają tych celów. Dlatego poprawne podejście polegające na zastosowaniu procentów, względnych jednostek, takich jak em lub rem, jest znacznie bardziej efektywne w kontekście tworzenia elastycznych, responsywnych i dostępnych projektów webowych.

Pytanie 20

Które zapytanie SQL wybiera nazwiska z tabeli klient, które mają co najmniej jedną literę i zaczynają się na literę Z?

A. SELECT nazwisko FROM klient WHERE nazwisko='Z?'
B. SELECT nazwisko FROM klient WHERE nazwisko='Z_?'
C. SELECT nazwisko FROM klient WHERE nazwisko LIKE 'Z_%'
D. SELECT nazwisko FROM klient WHERE nazwisko LIKE 'Z%'
Odpowiedź SELECT nazwisko FROM klient WHERE nazwisko LIKE 'Z%'; jest poprawna, ponieważ wykorzystuje operator LIKE, który jest standardowym narzędziem w SQL do wyszukiwania wzorców w danych tekstowych. Znak procenta (%) w tym kontekście oznacza, że może wystąpić dowolna liczba znaków po literze Z, co jest zgodne z wymaganiem, aby nazwiska były co najmniej jednoliterowe. W praktyce, takie zapytanie umożliwia efektywne wyszukiwanie danych w bazach, co jest kluczowe w kontekście aplikacji zarządzających danymi klientów. Dobre praktyki w projektowaniu baz danych zalecają stosowanie operatora LIKE do filtrowania wyników, co pozwala na zwiększenie przejrzystości i wydajności. W przypadku wyszukiwania nazwisk, można również użyć indeksów, aby przyspieszyć wykonanie zapytań, co jest ważne w kontekście dużych zbiorów danych, gdzie czas odpowiedzi aplikacji może mieć istotne znaczenie dla użytkowników końcowych. Używanie LIKE w połączeniu z odpowiednimi znakami wieloznacznymi jest więc kluczowym elementem efektywnego zarządzania danymi.

Pytanie 21

Podaj słowo kluczowe w języku C++, które umieszczane przed wbudowanym typem danych, umożliwia przyjmowanie jedynie nieujemnych wartości liczbowych?

A. unsigned
B. const
C. short
D. long
Słowo kluczowe 'unsigned' w języku C++ jest używane do deklaracji zmiennych, które będą przechowywać tylko wartości nieujemne. Oznacza to, że zmienna zadeklarowana jako 'unsigned int' będzie miała zakres od 0 do 4 294 967 295 (dla 32-bitowej reprezentacji), co podwaja maksymalną wartość w porównaniu do standardowego 'int', który może przyjmować wartości od -2 147 483 648 do 2 147 483 647. Zastosowanie 'unsigned' jest szczególnie przydatne w sytuacjach, gdzie negatywne wartości nie mają sensu, jak w przypadku liczników, indeksów tablic czy operacji na bitach. Przykład zastosowania: w pętli for, gdy iterujemy przez elementy tablicy, możemy użyć 'unsigned int' dla indeksu, aby upewnić się, że nie przyjmiemy błędnej wartości indeksu, co mogłoby prowadzić do nieprzewidzianych błędów. W praktyce, stosowanie 'unsigned' wspiera bezpieczeństwo i integralność danych, a także zwiększa zakres wartości, które można przechowywać.

Pytanie 22

W CSS należy ustawić tło dokumentu na obraz rys.png, który powinien się powtarzać tylko w poziomie. Którą definicję trzeba przypisać selektorowi body?

A. {background-image: url("rys.png"); background-repeat: round;}
B. {background-image: url("rys.png"); background-repeat: repeat;}
C. {background-image: url("rys.png"); background-repeat: repeat-x;}
D. {background-image: url("rys.png"); background-repeat: repeat-y;}
Wszystkie pozostałe opcje definiują sposób powtarzania tła, lecz każda z nich wprowadza inne zasady, co sprawia, że są one niewłaściwe w kontekście przedstawionego pytania. Wybór background-repeat: round, jak w pierwszej opcji, powoduje, że obrazek będzie powtarzany w taki sposób, aby całość się wpasowała w dostępne miejsce, ale niekoniecznie będzie powtarzany w ustalony sposób, co nie odpowiada założeniom pytania. Druga opcja, background-repeat: repeat, ustawia powtarzanie obrazu zarówno w poziomie, jak i w pionie, co jest sprzeczne z wymaganiem, aby obraz powtarzał się tylko w poziomie. Ostatnia z wyborów, background-repeat: repeat-y, z kolei powtarza obraz w pionie, co również nie spełnia założenia o poziomym powtarzaniu. Niestety, wiele osób myli te właściwości, co może prowadzić do niezamierzonych efektów wizualnych w projektach. Dlatego kluczowe jest zrozumienie różnicy między różnymi typami powtórzeń i ich zastosowaniem w praktyce. Właściwe użycie CSS, w tym dobór właściwych wartości dla background-repeat, wpływa na wydajność oraz na estetykę interfejsów użytkownika. W kontekście dobrych praktyk należy również pamiętać o optymalizacji obrazów oraz zapewnieniu, że używane techniki nie wpływają negatywnie na czas ładowania strony. Rozumienie tych aspektów jest kluczowe dla każdego, kto zajmuje się projektowaniem stron internetowych.

Pytanie 23

Podczas walidacji witryn internetowych nie analizuje się

A. zgodności z różnymi przeglądarkami
B. źródła pochodzenia narzędzi edycyjnych
C. działania hiperlinków
D. błędów w składni kodu
W procesie walidacji stron internetowych, źródło pochodzenia narzędzi edytorskich nie jest przedmiotem analizy, ponieważ walidacja koncentruje się na technicznych aspektach kodu HTML, CSS i JavaScript, które wpływają na funkcjonalność oraz dostępność strony. Główne obszary walidacji obejmują zgodność z przeglądarkami, co oznacza, że strona powinna działać poprawnie w różnych środowiskach przeglądarkowych. Działania linków są również monitorowane, aby zapewnić, że wszystkie odnośniki kierują do właściwych lokalizacji oraz nie prowadzą do błędów 404. Błędy składni kodu są kluczowe, ponieważ mogą znacząco wpłynąć na sposób, w jaki strona jest renderowana przez przeglądarki. Przykładowo, walidatory HTML, takie jak W3C Validator, pomagają identyfikować błędy i ostrzegają o problemach, które mogą wpłynąć na dostępność i SEO strony. Dobre praktyki wymuszają, aby każda strona internetowa była nie tylko estetyczna, ale przede wszystkim funkcjonalna i zgodna z obowiązującymi standardami, co przekłada się na lepsze doświadczenia użytkowników.

Pytanie 24

Aby stworzyć układ strony z trzema kolumnami obok siebie, można wykorzystać styl CSS

Ilustracja do pytania
A. A
B. B
C. C
D. D
W rozwiązaniu B zastosowano właściwość clear both co powoduje że element z klasą kolumny nie pozwala na ustawienie innych elementów obok siebie w tym samym wierszu Elementy z właściwością clear both resetują float wokół siebie co oznacza że żadna kolumna nie może być pływająca obok innej W efekcie nie osiągniemy zamierzonego celu jakim jest trzykolumnowy układ w jednym wierszu Jest to błąd często popełniany przez osoby nieznające działania mechanizmu clear w CSS Rozwiązanie C natomiast korzysta z float right oraz height co ustawia elementy pływające z prawej strony kontenera oraz ustawia wysokość na 33 procent co może być mylące float right stosowany jest głównie gdy chcemy aby elementy pływały do prawej krawędzi co nie jest pomocne w sytuacji kiedy zamierzamy stworzyć równomierne kolumny Rozwiązanie D przy zastosowaniu float left oraz width 40 procent powoduje że trzy kolumny nie zmieszczą się obok siebie w jednym wierszu ponieważ przekroczą 100 procent szerokości dostępnej przestrzeni Jest to klasyczny błąd w wyliczeniach kiedy szerokość sumuje się do wartości wyższej niż 100 procent co prowadzi do niepożądanego łamania się wierszy i niepoprawnego układu strona internetowa Aby uniknąć takich błędów warto zawsze przeliczać sumaryczną szerokość wszystkich elementów pływających i upewnić się że nie przekracza ona dostępnej przestrzeni w kontenerze To podejście pozwala na tworzenie bardziej przewidywalnych i spójnych układów na stronie internetowej

Pytanie 25

W sekcji nagłówka dokumentu HTML umieszczono ```Strona miłośników psów``` Zawarty tekst będzie widoczny

A. w treści witryny, na banerze witryny
B. w polu adresowym, za wprowadzonym adresem URL
C. w treści witryny, w pierwszym ukazanym nagłówku
D. na pasku tytułu w przeglądarce
Odpowiedź jest poprawna, ponieważ zawartość tagu <title> w kodzie HTML określa tytuł dokumentu, który jest wyświetlany na pasku tytułu przeglądarki. Tytuł ten jest kluczowym elementem SEO, ponieważ wpływa na sposób, w jaki użytkownicy postrzegają stronę w wynikach wyszukiwania. W praktyce, dobrze dobrany tytuł zwiększa szansę na kliknięcia i poprawia widoczność strony w internecie. Warto pamiętać, że tytuł powinien być krótki, zwięzły i zawierać najważniejsze słowa kluczowe, aby skutecznie komunikować, o czym jest strona. Dobre praktyki zalecają, aby długość tytułu nie przekraczała 60 znaków, aby uniknąć jego obcięcia w wynikach wyszukiwania. Dodatkowo, tytuł powinien być unikalny dla każdej podstrony, co ułatwia użytkownikom i wyszukiwarkom zrozumienie zawartości witryny.

Pytanie 26

W systemie MySQL trzeba użyć polecenia REVOKE, aby użytkownikowi anna cofnąć możliwość wprowadzania zmian jedynie w definicji struktury bazy danych. Odpowiednia komenda do odebrania tych uprawnień ma postać

A. REVOKE ALL ON tabela1 FROM 'anna'@'locaihost'
B. REVOKE CREATE UPDATE DROP ON tabela1 FROM 'anna'@'localhost'
C. REVOKE CREATE INSERT DELETE ON tabela1 FROM 'anna'@'localhost'
D. REVOKE CREATE ALTER DROP ON tabela1 FROM 'anna'@'localhost'
Polecenie REVOKE w MySQL jest używane do odbierania przydzielonych wcześniej uprawnień użytkownikom. W kontekście pytania, właściwa odpowiedź to 'REVOKE CREATE ALTER DROP ON tabela1 FROM 'anna'@'localhost''. To polecenie wskazuje na odebranie użytkownikowi 'anna' możliwości tworzenia nowych obiektów w bazie danych (CREATE), zmiany struktury istniejących obiektów (ALTER) oraz usuwania obiektów (DROP) w tabeli 'tabela1'. Odbieranie tych praw jest kluczowe w zarządzaniu bezpieczeństwem bazy danych, ponieważ pozwala na precyzyjne kontrolowanie, kto ma dostęp do modyfikacji struktury bazy danych. W praktyce, administratorzy baz danych często muszą ograniczać uprawnienia użytkowników, aby zapobiec nieautoryzowanym zmianom, które mogą wpłynąć na integralność danych. Dobrą praktyką jest regularne przeglądanie i aktualizowanie uprawnień użytkowników, aby dostosować je do zmieniających się potrzeb organizacji oraz zwiększyć poziom bezpieczeństwa systemu.

Pytanie 27

Po wykonaniu przedstawionego kodu PHP, w zmiennej $napis zostaje zapisany ciąg znaków.

$napis = "Programowanie w PHP";
$napis = substr($napis, 3, 5);
A. gramo
B. og
C. gr
D. ogram
W podanym kodzie PHP używana jest funkcja substr() która służy do wycinania fragmentu ciągu znaków. W tym przypadku mamy ciąg znaków 'Programowanie w PHP'. Funkcja substr() przyjmuje trzy argumenty: pierwszy to ciąg znaków drugi to pozycja startowa trzecia to długość wycinka. Pozycje w ciągu znaków w PHP zaczynają się od zera dlatego pozycja startowa 3 oznacza czwarty znak w ciągu co w przypadku 'Programowanie w PHP' odpowiada literze 'g'. Trzeci argument 5 oznacza że wycinamy pięć znaków zaczynając od pozycji 3. Stąd funkcja zwróci napis 'gramo'. Znajomość funkcji substr() jest przydatna w różnych sytuacjach na przykład podczas formatowania danych wejściowych lub wyodrębniania części łańcucha takich jak numery telefonów czy kody pocztowe. Ważne jest aby pamiętać że indeksowanie zaczyna się od zera co jest kluczowe przy używaniu tej funkcji. Dobre praktyki w programowaniu zalecają również traktowanie długości wycinka jako parametru opcjonalnego co umożliwia wycięcie do końca łańcucha.

Pytanie 28

Jednoznacznym identyfikatorem rekordu w bazie danych jest pole

A. klucza głównego.
B. klucza obcego.
C. wyłącznie typu tekstowego.
D. wyłącznie typu logicznego.
Poprawna jest odpowiedź dotycząca klucza głównego, bo to właśnie pole (lub zestaw pól) oznaczone jako PRIMARY KEY w tabeli pełni rolę jednoznacznego identyfikatora rekordu. W praktyce oznacza to, że dla każdej krotki (wiersza) w tabeli wartość klucza głównego musi być unikalna i nie może być pusta (NULL). Systemy baz danych, takie jak MySQL, PostgreSQL, SQL Server czy Oracle, egzekwują te zasady automatycznie – jeśli spróbujesz wstawić drugi rekord z tą samą wartością klucza głównego, dostaniesz błąd naruszenia unikalności. Moim zdaniem to jedna z kluczowych zasad normalnego projektowania baz danych: zawsze projektujemy tabelę zaczynając od przemyślania klucza głównego. W aplikacjach webowych bardzo często używa się prostego klucza głównego typu liczbowego (np. INT AUTO_INCREMENT lub SERIAL), który jest technicznym identyfikatorem rekordu. Dzięki temu łatwo się odwołać do konkretnego użytkownika, zamówienia czy produktu po jego ID. Klucz główny jest też podstawą do definiowania kluczy obcych w innych tabelach – relacje typu 1:N czy N:M opierają się właśnie na odwołaniach do wartości PRIMARY KEY. Z mojego doświadczenia wynika, że stosowanie sztucznych (surrogate) kluczy głównych, zamiast kombinowania z wieloma polami naturalnymi, upraszcza później zapytania SQL, modyfikacje struktury i integrację z kodem w PHP czy JavaScript. W dobrze zaprojektowanej bazie danych każda tabela relacyjna powinna mieć jasno zdefiniowany klucz główny, bo bez tego trudno mówić o porządnym zarządzaniu danymi, spójności referencyjnej i wydajnym indeksowaniu.

Pytanie 29

W HTML znacznik <i> powoduje uzyskanie takiego samego efektu wizualnego jak znacznik

A. <strong>
B. <u>
C. <em>
D. <pre>
Znacznik <em> w HTML służy do podkreślenia wyrazu w sposób, który jest semantyczny oraz wizualny. Oznacza on, że dany tekst ma szczególne znaczenie, co jest zgodne z dobrymi praktykami w tworzeniu dostępnych stron internetowych. Użycie <em> jest preferowane w sytuacjach, gdy chcemy wyróżnić określone słowa lub frazy, co jest istotne dla zrozumienia treści. Przykładem może być zdanie: "Wartość ta jest <em>szczególnie</em> istotna w kontekście analizy". W takim przypadku tekst "szczególnie" będzie wyróżniony nie tylko dla użytkownika, ale również dla wyszukiwarek oraz technologii asystujących, co przyczynia się do lepszej dostępności strony. W przeciwieństwie do znaczników, które mają głównie funkcję wizualną, takich jak <i>, <em> przynosi dodatkowe znaczenie semantyczne, co czyni go bardziej odpowiednim w kontekście tworzenia dokumentów HTML zgodnych z standardami W3C.

Pytanie 30

W JavaScript, funkcja matematyczna Math.pow() jest wykorzystywana do obliczania

A. wartości bezwzględnej liczby
B. wartości przybliżonej liczby
C. pierwiastka kwadratowego liczby
D. potęgi liczby
W języku JavaScript funkcja Math.pow() jest używana do obliczania potęgi liczby. Przyjmuje ona dwa argumenty: pierwszy to podstawa potęgowania, a drugi to wykładnik. W wyniku działania funkcji uzyskujemy wartość, która jest równoważna podstawie podniesionej do podanej potęgi. Na przykład, wywołanie Math.pow(2, 3) zwróci 8, ponieważ 2 do potęgi 3 to 2 * 2 * 2. Funkcja ta jest zgodna z ECMAScript, co oznacza, że jest standardem w JavaScript i można jej używać w różnych kontekstach, takich jak obliczenia matematyczne w aplikacjach webowych. Istotnym aspektem używania Math.pow() jest również fakt, że może przyjmować liczby ujemne oraz liczby zmiennoprzecinkowe, co czyni ją bardzo uniwersalnym narzędziem. Dodatkowo, dla potęgowania liczby do potęgi 0, wynik zawsze wynosi 1, co jest zgodne z zasadami matematycznymi. Dlatego Math.pow() jest kluczowym elementem biblioteki matematycznej JavaScript, ułatwiającym programistom wykonywanie bardziej skomplikowanych obliczeń.

Pytanie 31

W języku PHP zmienna globalna $_POST, służąca do odbierania danych z formularza przesłanych metodą POST, jest: 

A. tablicą asocjacyjną.
B. ciągiem znaków zakodowanym w JSON.
C. obiektem klasy stdClass.
D. zmienną tekstową.
Poprawnie – w PHP zmienna superglobalna $_POST jest tablicą asocjacyjną, czyli zbiorem par klucz ⇒ wartość. Kluczami są nazwy pól formularza (atrybut name w HTML), a wartościami – dane przesłane metodą POST. Dzięki temu po stronie PHP możesz wygodnie odwoływać się do konkretnych pól, np.: $imie = $_POST['imie']; $email = $_POST['email'];. To jest bardzo naturalne, bo struktura formularza HTML też opiera się na nazwach pól, więc mapowanie na tablicę asocjacyjną jest po prostu praktyczne. Moim zdaniem ważne jest też zrozumienie, że $_POST zawsze jest tablicą (array w PHP), nawet jeśli w formularzu jest tylko jedno pole. Jeżeli użytkownik nic nie wyśle, to będzie to pusta tablica, a nie null czy ciąg znaków. Z mojego doświadczenia warto zawsze sprawdzać isset($_POST['nazwa']) albo używać filter_input(INPUT_POST, 'nazwa'), co jest zgodne z dobrymi praktykami bezpieczeństwa. $_POST jest jedną z tzw. superglobali, obok $_GET, $_SERVER, $_FILES, $_SESSION itd. Są one dostępne w całym skrypcie, niezależnie od zasięgu (scope) funkcji. W kontekście formularzy webowych przyjętym standardem jest: używamy $_GET do danych z adresu URL (zapytania typu ?id=5), a $_POST do danych z formularzy, szczególnie gdy przesyłamy hasła, większe teksty, dane wrażliwe. To jest zgodne z typową architekturą aplikacji webowych w PHP. Warto też wiedzieć, że wartości w $_POST są zawsze typu string (lub tablica stringów, gdy używasz nazw pól z nawiasami, np. name="interesy[]"), ale sama zmienna $_POST jest tablicą asocjacyjną. Dobra praktyka: nie ufaj ślepo zawartości $_POST – zawsze waliduj i filtruj dane wejściowe przed zapisaniem do bazy czy wyświetleniem użytkownikowi, żeby unikać np. XSS i SQL injection.

Pytanie 32

Wskaż nieprawdziwe zdanie dotyczące normalizacji dźwięku.

A. Gdy najgłośniejszy fragment dźwięku ma wartość pół na skali, to wszystkie dźwięki zostaną wzmocnione dwukrotnie - w ten sposób najgłośniejszy fragment osiągnie maksymalną wartość na skali.
B. Podczas normalizacji poziom głośności całego nagrania jest wyrównywany.
C. Funkcja normalizacja znajduje się w menu programu do edycji dźwięku.
D. Normalizacja polega na obniżeniu poziomu najgłośniejszej próbki w sygnale do określonej wartości, a następnie w odniesieniu do niej proporcjonalnym zwiększeniu głośności pozostałej części sygnału.
Twoja odpowiedź dobrze wskazuje na to, jak działa normalizacja. Generalnie chodzi o to, żeby dostosować głośność całego nagrania tak, aby najgłośniejszy fragment nie był za cichy. Kiedy ten najgłośniejszy kawałek jest na poziomie 50%, normalizacja podnosi głośność całego nagrania, żeby ten fragment był na maksa. W praktyce to też oznacza, że inne, cichsze części nagrania też będą głośniejsze, co jest ważne, bo pozwala to utrzymać przyjemny balans w dźwięku. Normalizacja jest bardzo powszechna, zwłaszcza w produkcji muzyki, żeby różne utwory miały podobny poziom głośności, bo różnice mogą być dość irytujące podczas słuchania. Ważne, żeby zawsze sprawdzić, czy po normalizacji nie ma jakichś zniekształceń czy clippingu. Czasem warto też używać normalizacji razem z innymi technikami, jak kompresja, żeby osiągnąć jeszcze lepszy efekt końcowy.

Pytanie 33

Portal internetowy dysponuje bardzo złożonym systemem stylów, który obejmuje style zewnętrzne, wewnętrzne oraz lokalne. Jak można zagwarantować, że określona cecha zdefiniowana w zewnętrznym stylu jest zawsze stosowana do elementu HTML, niezależnie od bardziej priorytetowych stylów?

A. przy pomocy pseudoelementu ::after
B. jako pseudoklasę :active
C. jako selektor potomka
D. przy pomocy reguły !important
Zdefiniowanie cechy za pomocą selektora potomka, pseudoklasy :active lub pseudoelementu ::after to podejścia, które nie spełniają wymaganego celu w kontekście priorytetyzacji stylów CSS. Selektor potomka odnosi się do elementów, które są zagnieżdżone wewnątrz innych elementów i nie zapewnia on wyższego priorytetu. Na przykład, jeśli mamy regułę `div p { color: blue; }`, a później w innym miejscu `p { color: red; }`, kolor tekstu w elemencie <p> będzie czerwony, niezależnie od tego, że jest on dzieckiem <div>. Pseudoklasa :active dotyczy stanu interakcji z elementem, jak naciśnięcie przycisku. Nie można jej używać do stawiania stylów jako domyślnych, ponieważ działa tylko w momencie aktywacji, co nie spełnia wymogu stałego przypisania stylu. Pseudoelement ::after służy do dodawania treści po elemencie, ale również nie wpływa na priorytet wyświetlania stylów. Użycie tych metod w kontekście prób ustalenia stałych cech stylów może prowadzić do nieporozumień i błędów w kodzie, ponieważ nie zapewniają one odpowiedniej kontroli nad priorytetami, co jest kluczowe w projektowaniu stylów CSS. W praktyce, aby uniknąć konfliktów i nieprzewidywalnych rezultatów, zaleca się odpowiednie planowanie struktury styli oraz przejrzystość w używaniu reguły !important tylko tam, gdzie to absolutnie konieczne.

Pytanie 34

Użytkownik podał adres nieistniejącego obiektu na serwerze. Próba nawiązania połączenia spowoduje wystąpienie błędu

A. 400
B. 503
C. 500
D. 404
Odpowiedź 404 jest poprawna, ponieważ oznacza, że serwer nie może znaleźć zasobu, którego żąda klient. W praktyce, gdy użytkownik próbuje uzyskać dostęp do nieistniejącej strony internetowej lub pliku, serwer zwraca kod błędu 404, co sygnalizuje, że dany adres URL jest nieprawidłowy. Jest to standardowy kod odpowiedzi HTTP, który jest powszechnie wykorzystywany w branży internetowej. Dobre praktyki wskazują, że strony 404 powinny być przyjazne użytkownikowi, na przykład poprzez sugerowanie alternatywnych linków lub przycisków do powrotu na stronę główną. Zrozumienie tego błędu jest istotne dla webmasterów oraz deweloperów, którzy pracują nad utrzymaniem strony, ponieważ błędy 404 mogą wpłynąć na doświadczenie użytkownika oraz pozycjonowanie strony w wyszukiwarkach. Regularne monitorowanie i poprawa linków na stronie jest kluczowym aspektem optymalizacji SEO oraz zarządzania treścią.

Pytanie 35

Kolor zaprezentowany na ilustracji, zapisany w modelu RGB, w formacie szesnastkowym będzie określony w następujący sposób

Ilustracja do pytania
A. 77A0C1
B. 71A0B2
C. 76A3C1
D. 77A1C1
Kolor w modelu RGB zapisany jako 119 160 193 odpowiada wartości szesnastkowej 77A0C1. W systemie RGB każda z trzech składowych kolorów czerwonego zielonego i niebieskiego jest reprezentowana przez wartość od 0 do 255. Przy konwersji do systemu szesnastkowego używamy par znaków dla każdej z wartości. Dla wartości 119 uzyskujemy 77 dla 160 otrzymujemy A0 a dla 193 wynik to C1. Sumując te wartości uzyskujemy kod 77A0C1 który jest szeroko stosowany w projektach graficznych i webowych. W praktyce znajomość zapisu szesnastkowego jest niezbędna w branży IT zwłaszcza w web designie oraz przy tworzeniu interfejsów użytkownika. Standardem jest wykorzystywanie tego zapisu w stylach CSS gdzie precyzyjne określenie koloru ma kluczowe znaczenie dla estetyki i funkcjonalności projektu. Prawidłowy dobór i zapis kolorów wpływa na UX i branding dlatego znajomość sposobów konwersji i czytania kolorów w różnych systemach jest kluczowa dla profesjonalistów w tej dziedzinie.

Pytanie 36

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

A. strukturę 50 elementów o składowych tablicowych.
B. tablicę 50 elementów o składowych strukturalnych.
C. tablicę 50 elementów o składowych typu łańcuchowego.
D. klasę 50 elementów typu tablicowego.
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 37

W SQL klauzula DISTINCT w poleceniu SELECT zapewnia, że zwrócone wyniki

A. będą spełniały dany warunek.
B. będą zgrupowane według wskazanego pola.
C. będą uporządkowane.
D. nie zawiera będą duplikatów.
Niepoprawność pierwszej odpowiedzi wynika z nieporozumienia dotyczącego funkcji DISTINCT. Klauzula ta nie ma na celu sortowania danych, a jedynie eliminację powtórzeń. Wyniki zapytania mogą być posortowane, ale jest to realizowane za pomocą osobnej klauzuli ORDER BY, a nie DISTINCT. Drugą odpowiedzią, która jest błędna, jest twierdzenie, że DISTINCT wymusza spełnienie określonego warunku. Klauzula DISTINCT nie jest używana do filtrowania danych na podstawie warunków; aby to osiągnąć, zwykle stosuje się klauzulę WHERE, która określa konkretne kryteria, jakie muszą być spełnione przez zwracane rekordy. Ostatnia błędna odpowiedź sugeruje, że wyniki będą pogrupowane według określonego pola, co jest mylące, ponieważ grupowanie osiąga się za pomocą klauzuli GROUP BY. Ta klauzula agreguje wiersze w grupy opierając się na wartościach w określonych kolumnach, a następnie umożliwia wykonywanie operacji agregujących, takich jak COUNT, SUM czy AVG, co jest zupełnie inną funkcjonalnością niż ta oferowana przez DISTINCT. W skrócie, klauzula DISTINCT koncentruje się na eliminacji duplikatów, podczas gdy sortowanie, warunki i grupowanie to odrębne aspekty zapytań SQL.

Pytanie 38

Komenda skierowana do serwera bazy danych, która polega na zbieraniu, wyszukiwaniu lub zmienianiu danych w bazie, nosi nazwę

A. formularza
B. kolumny
C. kopii
D. kwerendy
Kwerenda to termin używany w kontekście baz danych, który odnosi się do polecenia wysyłanego do serwera bazy danych w celu wykonywania operacji na danych. Główne funkcje kwerend to zbieranie, modyfikowanie lub wyszukiwanie danych w tabelach bazy danych. Kwerendy są kluczowym elementem języka SQL (Structured Query Language), który jest standardem w zarządzaniu relacyjnymi bazami danych. Na przykład, kwerenda SELECT umożliwia pobieranie danych z określonych kolumn w tabeli, a kwerenda UPDATE pozwala na modyfikację istniejących danych. Dobre praktyki w pisaniu kwerend obejmują optymalizację zapytań, używanie indeksów, a także dbanie o bezpieczeństwo (np. unikanie ataków typu SQL Injection). Zrozumienie, jak działają kwerendy, jest niezbędne dla każdego, kto pracuje z bazami danych, ponieważ pozwala to na efektywne zarządzanie danymi oraz ich analizę.

Pytanie 39

Jakie pola znajdują się w formularzu?

Ilustracja do pytania
A. Textarea, Option, Input(Checkbox), Input(Checkbox), Input(Submit), Input(Reset)
B. Input(Text), Select, Input(Radio), Input(Radio), Input(Submit), Input(Reset)
C. Input(Text), Input(Checkbox), Select, Select, Input(Submit), Input(Reset)
D. Textarea, Select, Input(Radio), Input(Radio), Input(Reset), Input(Submit)
Odpowiedź, którą wybrałeś, jest ok, bo wszystko trzyma się zasady formularzy z obrazka. Input(Text) to właśnie pole, w którym wpisujesz swoje nazwisko. Potem mamy Input(Select), który pozwala wybrać jedno z województw z listy – to też jest na plus. Przy Input(Radio) można wybrać jedną opcję, co dobrze pasuje do wyboru między Studiami podyplomowymi a Kursem. Input(Submit) jest do wysyłania formularza, więc tu też wszystko gra. Na końcu Input(Reset) zeruje wszystko, co jest przydatne, kiedy chcesz wyczyścić formularz. Wszystkie te elementy są zgodne z HTML5, co jest teraz standardem w tworzeniu stron. Fajnie, że formularz ma logiczne ułożenie, bo ułatwia to korzystanie z niego. Moim zdaniem, dobrze wiedzieć, jakie elementy są stosowane w formularzach, żeby wszystko działało tak jak powinno.

Pytanie 40

Pętla zapisana w języku PHP wstawi do tablicy liczby:

$x = 0;
for ($i = 0; $i < 10; $i++)
{
    $tabl[$i] = $x;
    $x = $x + 10;
}
A. 10, 20, 30, 40, 50, 60, 70, 80, 90, 100
B. 0, 10, 20, 30, 40, 50, 60, 70, 80, 90
C. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
D. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Niestety, Twoja odpowiedź jest nieprawidłowa. Błędne odpowiedzi sugerują, że pętla wstawia do tablicy liczby od 0 do 9 lub od 10 do 100, albo od 0 do 10. To jest niepoprawne, ponieważ pętla zaczyna się od $x = 0 i wykonuje się 10 razy ($i od 0 do 9), a w każdej rundzie pętli wartość $x jest zwiększana o 10. Dlatego po 10 rundach w tablicy znajdują się liczby: 0, 10, 20, 30, 40, 50, 60, 70, 80, 90. Wybór innej odpowiedzi może wynikać z błędnego zrozumienia działania pętli albo mylenia różnych rodzajów pętli, które mają różne zastosowania. Pętle są fundamentalnym elementem każdego języka programowania, w tym PHP, dlatego warto zrozumieć ich działanie. Proszę poświęcić więcej czasu na zrozumienie tego tematu, ponieważ jest to podstawa do dalszego programowania.