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: 13 kwietnia 2026 09:50
  • Data zakończenia: 13 kwietnia 2026 10:01

Egzamin zdany!

Wynik: 38/40 punktów (95,0%)

Wymagane minimum: 20 punktów (50%)

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

Jak nazywa się metoda dodawania arkusza stylów do dokumentu HTML zastosowana w poniższym kodzie?

<p style="color: red;">tekst paragrafu</p>
A. Styl wpisany, lokalny
B. Styl wewnętrzny
C. Styl zewnętrzny
D. Styl alternatywny, zewnętrzny
Styl wpisany, lokalny, to metoda definiowania stylów bezpośrednio w elemencie HTML, co jest dokładnie tym, co widzimy w przedstawionym kodzie. W tym przypadku atrybut "style" jest użyty, aby ustawić kolor tekstu na czerwony dla konkretnego paragrafu. Ta metoda jest przydatna, gdy potrzebujemy szybko wprowadzić zmiany w stylu pojedynczego elementu bez konieczności edytowania zewnętrznych arkuszy stylów. Z perspektywy standardów webowych, lokalne style mogą wprowadzać poważne problemy z utrzymaniem kodu, gdy stosowane w nadmiarze, ponieważ kody CSS mogą stać się trudne do zarządzania, a konsystencja stylów może być zagrożona. Z tego powodu, dla bardziej rozbudowanych projektów, rekomenduje się korzystanie z arkuszy stylów zewnętrznych lub wewnętrznych, które zapewniają lepszą organizację kodu oraz ułatwiają zarządzanie stylami na większą skalę. Dobrą praktyką jest również korzystanie z klas CSS, co pozwala na ponowne wykorzystanie stylów w różnych częściach dokumentu, eliminując duplikacje.

Pytanie 2

Aby zoptymalizować operacje na bazie danych, należy stworzyć indeksy dla pól, które są często wyszukiwane lub sortowane?

A. dodać więzy integralności.
B. utworzyć indeks.
C. stworzyć osobną tabelę przechowującą tylko te pola.
D. dodać klucz obcy.
Indeksowanie to kluczowy mechanizm optymalizacji wydajności baz danych. Indeksy pozwalają na szybsze wyszukiwanie, sortowanie oraz filtrowanie danych, co znacząco poprawia czas reakcji na zapytania. Kiedy tworzymy indeks na kolumnach, które są często używane w klauzulach WHERE, ORDER BY lub JOIN, silnik bazy danych może szybciej zlokalizować potrzebne dane, minimalizując czas przeszukiwania. Na przykład, w bazie danych o dużej liczbie rekordów, wyszukiwanie konkretnego użytkownika bez indeksu może wymagać przeszukania całej tabeli, co jest czasochłonne. W przypadku dodania indeksu do kolumny 'username', zapytanie SELECT * FROM users WHERE username = 'janek' będzie mogło wykorzystać indeks, aby natychmiastowo znaleźć odpowiedni rekord. Zgodnie z dokumentacją SQL Server i MySQL, indeksowanie jest również zalecane w przypadku kolumn, które są często modyfikowane, ponieważ pozwala na utrzymanie wysokiej wydajności przy dużych zbiorach danych. Indeksy mogą być zarówno unikalne, jak i nieunikalne, a ich odpowiednie zaplanowanie jest kluczowe dla zachowania równowagi między szybkością przetwarzania a wydajnością operacji zapisu. Ostatecznie, optymalizacja bazy danych za pomocą indeksów to niezbędny krok dla każdej aplikacji wymagającej efektywnego zarządzania danymi.

Pytanie 3

Funkcja agregująca MIN w języku SQL ma na celu obliczenie

A. minimalnej wartości kolumny, która jest wynikiem kwerendy
B. liczby wierszy, które zwraca kwerenda
C. ilości znaków w rekordach zwróconych przez kwerendę
D. średniej wartości różnych pól w rekordu zwróconego przez zapytanie
Funkcja agregująca MIN w języku SQL jest kluczowym narzędziem do analizy danych, której głównym celem jest zwracanie najmniejszej wartości z kolumny wynikowej zapytania. Jej zastosowanie jest szczególnie przydatne w kontekście analizy danych numerycznych, gdzie można chcieć określić najniższą wartość, na przykład w przypadku cen produktów, ocen studentów czy dat. Funkcja ta może być używana w klauzulach SELECT z instrukcją GROUP BY, co pozwala na obliczanie minimalnych wartości w różnych grupach danych. Przykładowo, zapytanie SELECT kategoria, MIN(cena) FROM produkty GROUP BY kategoria; zwróci najniższą cenę w każdej kategorii produktów. Warto także dodać, że zgodnie z standardem SQL, funkcja MIN działa na różnych typach danych, w tym liczbach całkowitych, zmiennoprzecinkowych i datach, co czyni ją niezwykle wszechstronnym narzędziem w codziennej pracy z bazami danych. Zrozumienie działania funkcji MIN i jej zastosowań pozwala na efektywne przetwarzanie danych oraz podejmowanie lepszych decyzji biznesowych opartych na analizie statystycznej.

Pytanie 4

Aby umieścić plik wideo na stronie internetowej z widocznymi przyciskami sterującymi oraz zapętlonym odtwarzaniem, należy w znaczniku <video> użyć atrybutów

A. autoplay i preload
B. loop i muted
C. controls i loop
D. controls i autoplay
Odpowiedź "controls i loop" jest całkiem dobra, bo te dwa atrybuty są naprawdę istotne, żeby wideo działało jak należy na stronie. Atrybut "controls" dodaje do odtwarzacza przyciski, które pozwalają na zatrzymywanie, odtwarzanie i regulowanie głośności, co jest bardzo wygodne dla ludzi. Z kolei "loop" sprawia, że filmik odtwarza się w kółko, co może być super użyteczne, szczególnie w prezentacjach albo reklamach, które chcemy pokazać kilka razy. Przykładowo, <video src='video.mp4' controls loop> wstawia wideo z przyciskami, które można łatwo obsługiwać, no i od razu się zapętla. W ogóle, korzystanie z tych atrybutów to dobra praktyka, bo sprawia, że strony są bardziej przyjazne dla użytkowników oraz poprawia ich doświadczenia.

Pytanie 5

Jakie polecenie HTML powinno być zastosowane, aby sformatować akapit tekstu?

Tekst może być zaznaczony albo istotny dla autora
A. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny dla autora</p>
B. <p>Tekst może być <mark>zaznaczony albo <i>istotny</i> dla autora</mark></p>
C. <p>Tekst może być <mark>zaznaczony albo <em>istotny</em> dla autora</mark></p>
D. <p>Tekst może być <mark>zaznaczony</mark> albo <em>istotny</em> dla autora</p>
Odpowiedź druga jest prawidłowa, ponieważ stosuje poprawną składnię HTML do oznaczenia fragmentów tekstu z różnym formatowaniem. Element <p> służy do definiowania paragrafu, w którym tekst jest umieszczony. Element <mark> używany jest do oznaczania tekstu, który powinien być zwrócony uwagę czytelnika, poprzez podkreślenie go kolorem tła. Z kolei <em> jest przeznaczony do oznaczenia tekstu, który ma zostać wyróżniony jako istotny, zazwyczaj poprzez użycie kursywy. Użycie tych elementów w połączeniu z zamykającymi tagami, jak w odpowiedzi drugiej, jest zgodne z zaleceniami standardów HTML5, które kładą nacisk na semantyczne znaczenie znaczników. To podejście wspiera dostępność oraz SEO, ponieważ pomaga czytnikom ekranowym i wyszukiwarkom lepiej zrozumieć strukturę i znaczenie treści. Praktyczne zastosowanie tych znaczników można zobaczyć na stronach internetowych, gdzie kluczowe informacje muszą być odpowiednio wyróżnione, aby poprawić doświadczenie użytkownika i przekazać istotne dane w czytelny sposób.

Pytanie 6

Fragment kodu napisany w języku JavaScript, który realizuje sumowanie dwóch liczb, wygląda następująco (zobacz ramka): Aby operacja dodawania odbywała się po naciśnięciu przycisku zatytułowanego "dodaj", należy w miejsce wykropkowane wprowadzić

Ilustracja do pytania
A. <button onclick="return dodaj()">dodaj</button>
B. <button onselect="return dodaj()">oblicz</button>
C. <button onselect="return dodaj()">dodaj</button>
D. <button onclick="return obliczj()">dodaj</button>
Odpowiedź jest prawidłowa, ponieważ w języku JavaScript zdarzenie onclick jest standardowym sposobem uruchamiania funkcji w odpowiedzi na kliknięcie przycisku. W tym przypadku funkcja dodaj() zostanie wywołana, gdy użytkownik kliknie przycisk z napisem "dodaj". Jest to zgodne z powszechnymi praktykami w tworzeniu interfejsów użytkownika dla aplikacji webowych, gdzie zdarzenia są przypisywane do elementów HTML za pomocą atrybutów takich jak onclick czy onsubmit. Takie podejście pozwala na bezpośrednią interakcję użytkownika z elementami strony, co jest kluczowe dla dynamicznych aplikacji internetowych. Przy tworzeniu stron internetowych ważne jest, aby zdarzenia były jednoznacznie przypisane do odpowiednich funkcji, co ułatwia zarządzanie logiką aplikacji. Dodatkowo takie rozwiązanie zwiększa czytelność kodu i ułatwia jego dalsze utrzymanie i rozwój. W przypadku bardziej skomplikowanych projektów można również rozważyć oddzielanie logiki JavaScript od struktury HTML, używając zewnętrznych plików skryptów i bibliotek, takich jak jQuery czy React, co sprzyja lepszej organizacji kodu.

Pytanie 7

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 dzięki ustawieniu ścieżki do kontrolki w atrybucie "Źródło kontrolki"
B. niemożliwa
C. niemożliwa w każdym trybie poza trybem projektowania
D. możliwa tylko wtedy, gdy są to dane numeryczne
Odpowiedź jest poprawna, ponieważ w Microsoft Access można odwoływać się do kontrolek w innych formularzach poprzez ustawienie właściwości 'Źródło kontrolki'. Ta właściwość umożliwia wskazanie skąd ma pochodzić wartość, która ma być wyświetlana w danej kontrolce. Przykładowo, jeśli mamy formularz z danymi klientów, a chcemy w innym formularzu wyświetlić imię i nazwisko danego klienta, możemy użyć odpowiedniego odwołania do kontrolki w formularzu klientów. Ważne jest, aby ścieżka do kontrolki była poprawna, co oznacza, że musi być zgodna z nazwą formularza oraz nazwą kontrolki. Użycie właściwości 'Źródło kontrolki' jest zgodne z najlepszymi praktykami projektowania baz danych, ponieważ umożliwia elastyczne i dynamiczne łączenie danych. Zrozumienie tego procesu jest kluczowe dla efektywnego projektowania złożonych aplikacji bazodanowych z wieloma formularzami oraz relacjami między nimi.

Pytanie 8

Zmienna należąca do typu integer lub int jest w stanie przechować

A. liczbę całkowitą
B. liczbę rzeczywistą
C. ciąg znaków
D. znak
Typ zmiennych integer, czyli int, jest super ważny w programowaniu, bo służy do przechowywania liczb całkowitych. To takie liczby, co nie mają części dziesiętnych. Jest sporo języków programowania, które go używają, na przykład C++, Java czy Python. Głównie dzięki nim możemy efektywnie przechowywać i operować na tych liczbach. Wartości tego typu mogą być różne w zależności od systemu, na przykład w 32-bitowym typ int przechowuje liczby od -2 147 483 648 do 2 147 483 647. Używamy liczb całkowitych w różnych algorytmach, zwłaszcza tam, gdzie liczy się precyzja, jak w zliczaniu elementów albo w operacjach matematycznych. W standardzie C99 mamy różne typy całkowite, co pomaga w dokładnym określeniu, co potrzebujemy. Moim zdaniem, ogarnięcie typu integer to podstawa dla każdego, kto chce coś programować, bo na tym buduje się operacje matematyczne i logiczne.

Pytanie 9

Ogólne tablice służące do przechowywania informacji o ciasteczkach oraz sesjach: $_COOKIE oraz $_SESSION są elementem języka

A. C#
B. PHP
C. Perl
D. JavaScript
Odpowiedź PHP jest poprawna, ponieważ $_COOKIE i $_SESSION to superglobalne tablice, które są integralną częścią języka PHP. Umożliwiają one przechowywanie i zarządzanie danymi sesji oraz informacjami o ciasteczkach. $_COOKIE służy do odczytywania i zapisywania danych, które są przechowywane w urządzeniu użytkownika w postaci ciasteczek. Z kolei $_SESSION pozwala na przechowywanie danych sesyjnych na serwerze, co jest kluczowe dla utrzymania stanu użytkownika podczas przeglądania strony. Dzięki temu, programiści mogą tworzyć aplikacje webowe, które identyfikują użytkowników, zachowują ich preferencje oraz dane logowania, co poprawia doświadczenia użytkownika. Praktycznym zastosowaniem tych tablic jest na przykład realizacja systemów logowania, gdzie dane o użytkownikach są przechowywane w sesji, a ciasteczka mogą być używane do zapamiętywania ich preferencji na przyszłość. Często stosowanym standardem w branży jest dbanie o bezpieczeństwo danych sesyjnych, co można osiągnąć poprzez odpowiednie zarządzanie czasem życia sesji oraz używanie bezpiecznych ciasteczek.

Pytanie 10

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. Jest to lista punktowana z zagłębioną listą numerowaną.
B. Nie ma zagłębień i jest punktowana, wyświetla 5 punktów.
C. Jest to lista numerowana z zagłębioną listą punktowaną.
D. Nie ma zagłębień i jest numerowana, słowo "niebieski" ma przyporządkowany numer 5.
Dobra robota! Twoja odpowiedź jest na miejscu. Ta lista HTML, co widziałeś na obrazku, to faktycznie lista uporządkowana, stworzona przy pomocy znacznika <ol>. Takie listy są numerowane, co sprawia, że łatwiej je śledzić. W HTML mamy dwa rodzaje list: uporządkowane, czyli numerowane z <ol>, i nieuporządkowane, które robimy z <ul> i one są punktowane. Fajnie, że pamiętasz o CSS, bo dzięki niemu możemy dostosować wygląd tych list. Ogólnie, lista numerowana zaczyna od 1 i idzie dalej (1, 2, 3 itd.), a punktowana pokazuje kropki. Co ciekawe, można też zagnieżdżać listy, co daje nam takie wielopoziomowe struktury. Dlatego w tej liście mamy wewnątrz punktowaną, która jest stworzona z <ul>. I pamiętaj, że używanie właściwych znaczników ma znaczenie – szczególnie dla osób korzystających z czytników ekranu.

Pytanie 11

Jaką wartość zwróci funkcja w języku C++, jeśli parametry wynoszą a = 4 oraz b = 3?

long int fun1(int a, int b)
{
long int wynik = 1;
for (int i = 0; i < b; i++)
wynik *= a;
return wynik;
}
A. 12
B. 16
C. 64
D. 1
Funkcja fun1 w języku C++ oblicza potęgę liczby a do b. Wykorzystuje pętlę for aby przemnożyć początkową wartość 1 przez a dokładnie b razy co daje wynik a do potęgi b. W tym przypadku gdy a = 4 i b = 3 funkcja wykonuje 3 iteracje mnożąc wynik początkowo równy 1 przez 4 daje 4 następnie 16 i ostatecznie 64. To podejście ilustruje podstawowe zastosowanie pętli for w obliczeniach iteracyjnych. Takie podejście do obliczania potęg jest efektywne dla małych potęg ale dla większych wartości można rozważyć algorytmy typu exponentiation by squaring które są optymalniejsze. W programowaniu C++ pętla for jest często stosowana do zadań o z góry określonej liczbie iteracji co czyni ją idealnym wyborem dla tego problemu. Ważne jest także zrozumienie jak zmienne takie jak wynik są wykorzystywane do przechowywania stanu w trakcie iteracji co jest kluczowe w wielu algorytmach programistycznych. Takie rozumowanie i wykorzystanie pętli for jest zgodne z dobrymi praktykami programowania.

Pytanie 12

Aby dostosować dźwięk do określonego poziomu głośności, trzeba zastosować efekt

A. wyciszenia
B. podbicia basów
C. usuwania szumów
D. normalizacji
Normalizacja to proces, który ma na celu dostosowanie głośności dźwięku do określonego poziomu, co jest kluczowe w produkcji audio. Poprawna normalizacja zapewnia, że dźwięk osiąga optymalny poziom głośności bez zniekształceń, co jest szczególnie ważne w kontekście emisji radiowych, telewizyjnych oraz przy tworzeniu materiałów audio dla platform strumieniowych. W praktyce normalizacja może być realizowana za pomocą różnych algorytmów, takich jak LUFS (Loudness Units Full Scale), które mierzą głośność w sposób, który uwzględnia percepcję ludzkiego ucha. Przykładowo, jeśli mamy nagranie, które jest znacznie cichsze od innych utworów w albumie, proces normalizacji podniesie jego głośność do poziomu zbliżonego do reszty utworów, co poprawia ogólne wrażenie słuchowe. Ponadto, normalizacja jest zgodna z dobrymi praktykami branżowymi, które zalecają utrzymanie spójności głośności między różnymi mediami, co znacząco zwiększa jakość odbioru słuchowego.

Pytanie 13

Która z wartości tekstowych nie odpowiada podanemu wzorcowi wyrażenia regularnego?

(([A-ZŁŻ][a-ząęóżźćńłś]{2,})(-[A-ZŁŻ][a-ząęóżźćńłś]{2,}))?
A. Jelenia Góra
B. Kowalski
C. Kasprowicza
D. Nowakowska-Kowalska
Odpowiedź 'Jelenia Góra' jest nietrafiona. Wzór wyrażenia regularnego wymaga, żeby ciąg zaczynał się od wielkiej litery, a potem miał przynajmniej dwie małe litery. Dodatkowo, może być tam segment po myślniku z kolejną wielką literą, a na końcu małe litery. No i tutaj problem, bo 'Jelenia Góra' ma spację, a wzór nie lubi takich rzeczy, bo nie rozpoznaje spacji jako separatora. Z mojego doświadczenia w pracy z regexami, ważne jest, żeby takie elementy jak spacje były dokładnie przemyślane, szczególnie przy pracy z danymi. Im lepiej zrozumiesz te zasady, tym łatwiej będzie Ci pracować z różnymi przykładami i sytuacjami przy programowaniu. Także, warto pomyśleć o tym, jak optymalizować wzorce, żeby nasza praca była wydajniejsza i bezbłędna.

Pytanie 14

Które z poniższych zapytań SQL zwróci wszystkie kolumny z tabeli 'produkty'?

A. GET * FROM produkty;
B. SELECT produkty FROM *;
C. FETCH * FROM produkty;
D. SELECT * FROM produkty;
Zapytanie SQL, które zwraca wszystkie kolumny z tabeli, wykorzystuje składnię SELECT * FROM nazwa_tabeli. Gwiazdka (*) jest symbolem, który oznacza, że chcemy pobrać wszystkie kolumny z danej tabeli. Jest to bardzo przydatne, gdy chcemy szybko uzyskać pełne dane z tabeli bez konieczności wymieniania każdej kolumny z osobna. W praktyce często używa się tej składni w sytuacjach, gdy chcemy wykonać operacje diagnostyczne lub szybkie przeglądanie zawartości tabeli. Jednakże, w środowiskach produkcyjnych, zaleca się raczej precyzyjne określanie potrzebnych kolumn zamiast używania "*", ponieważ pozwala to na optymalizację zapytań i może zmniejszyć obciążenie bazy danych. Niemniej jednak, zapytanie SELECT * FROM produkty; jest poprawne i zgodne z SQL-owym standardem, co czyni je prawidłowym wyborem w tym kontekście.

Pytanie 15

W PHP konstrukcja foreach stanowi rodzaj

A. wyboru, dla elementów tablicy
B. pętli, wyłącznie dla elementów tablicy
C. warunkową, niezależnie od typu zmiennej
D. pętli, niezależnie od typu zmiennej
Pętla foreach w PHP to taki fajny sposób, żeby przejść przez wszystkie elementy tablicy. Została stworzona, żeby programiści mogli łatwiej ogarnąć przetwarzanie danych w tablicach, które są super ważnym typem danych w tym języku. Dzięki foreach można w prosty sposób dostać się do każdego elementu tablicy, bez zabawy w indeksy, co sprawia, że kod jest bardziej przejrzysty. Działa to tak: dla każdego elementu w tablicy robimy coś tam, co czyni ją świetnym narzędziem do pracy z większą ilością danych. Na przykład, można stworzyć tablicę z imionami i potem za pomocą foreach wypisać je na ekran. Fajnie jest też wiedzieć, że foreach nie zadziała z innymi typami danych, więc to ograniczenie, o którym trzeba pamiętać. W PHP używa się tej instrukcji na co dzień, co pokazuje, jak bardzo jest przydatna i jak bardzo ułatwia życie programistom.

Pytanie 16

Które wyrażenie logiczne należy zastosować w języku JavaScript, aby wykonać operacje tylko dla dowolnych liczb ujemnych z przedziału jednostronnie domkniętego <-200, -100)?

A. (liczba >= -200) && (liczba < -100)
B. (liczba <= -200) && (liczba < -100)
C. (liczba -100)
D. (liczba >= -200) || (liczba > -100)
Poprawne wyrażenie to (liczba >= -200) && (liczba < -100), bo dokładnie odwzorowuje zapis matematyczny przedziału jednostronnie domkniętego <-200, -100). W matematyce nawias kwadratowy oznacza, że granica jest włączona do przedziału, a nawias okrągły – że granica jest wyłączona. Czyli chcemy wszystkie liczby większe lub równe -200, ale jednocześnie mniejsze niż -100. W JavaScript przekłada się to właśnie na dwa porównania połączone operatorem logicznym AND, czyli &&. Warunek liczba >= -200 pilnuje dolnej granicy, a liczba < -100 pilnuje górnej, która jest otwarta. Jeśli którakolwiek z tych części będzie fałszywa, całe wyrażenie zwróci false, co jest dokładnie tym, czego oczekujemy przy opisie takiego przedziału. W praktyce taki zapis pojawia się bardzo często, np. przy walidacji danych wejściowych, filtrowaniu wyników, ustawianiu zakresów sliderów w interfejsie użytkownika albo przy sprawdzaniu warunków w grach (np. pozycja x obiektu ma być w jakimś zakresie). Przykład w JS: if (liczba >= -200 && liczba < -100) { // wykonaj kod tylko dla liczb z tego zakresu } Moim zdaniem warto od razu wyrobić sobie nawyk zapisywania zakresów w postaci dwóch prostych porównań połączonych &&, bo to jest czytelne dla innych programistów i zgodne z powszechną praktyką w branży. W wielu językach (nie tylko JavaScript, ale też C, Java, PHP) taki schemat warunków jest standardem. Trzeba też pamiętać, że w JS nie ma osobnego operatora „przedziału”, więc zawsze rozbijamy to właśnie na takie składowe porównania logiczne.

Pytanie 17

Jakiej opcji w edytorze grafiki rastrowej należy użyć, aby przygotować obraz do wyświetlenia na stronie w taki sposób, aby widoczna była tylko część znajdująca się w obrębie ramki?

Ilustracja do pytania
A. Skalowanie
B. Perspektywa
C. Odbicie
D. Kadrowanie
Kadrowanie to proces polegający na usuwaniu niechcianych części obrazu w celu skupienia uwagi na jego istotnych elementach. W kontekście przygotowywania rysunku do wyświetlenia na stronie internetowej, kadrowanie pozwala na wyeksponowanie tylko tych fragmentów grafiki, które mają być widoczne dla odbiorcy, jednocześnie usuwając zbędne tło czy elementy. Jest to technika szeroko stosowana w branży graficznej i fotograficznej, gdzie precyzyjne dostosowanie kompozycji wizualnej ma kluczowe znaczenie dla estetyki oraz komunikacji wizualnej. Kadrowanie wspiera także optymalizację plików graficznych, redukując ich rozmiar i poprawiając czas ładowania strony. W edytorach grafiki rastrowej, takich jak Adobe Photoshop czy GIMP, kadrowanie jest intuicyjnym narzędziem, które pozwala na szybkie i efektywne dostosowanie kadru do wymogów projektu. Dobre praktyki branżowe zalecają regularne kadrowanie w celu zwiększenia czytelności i nadania profesjonalnego wyglądu materiałom wizualnym. Poprawnie wykadrowany obraz nie tylko poprawia estetykę, ale również może wpłynąć na przekaz oraz zaangażowanie użytkowników. Wybór właściwych proporcji i skali podczas kadrowania jest istotny dla uzyskania spójnego i harmonijnego efektu końcowego, który będzie zgodny z założeniami projektu oraz oczekiwaniami odbiorcy.

Pytanie 18

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

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

Pytanie 19

W CSS, aby ustalić nietypowe odległości między słowami, używa się właściwości

A. word-spacing
B. white-space
C. letter-space
D. line-spacing
W języku CSS właściwość word-spacing jest używana do definiowania odstępu między wyrazami w elemencie tekstowym. Zwiększenie lub zmniejszenie odstępu między wyrazami może znacznie wpłynąć na czytelność i estetykę tekstu. Wartość tej właściwości można ustawić w jednostkach długości, takich jak piksele (px), em, rem lub procenty. Na przykład, zastosowanie word-spacing: 5px; w kodzie CSS spowoduje zwiększenie odstępu między wyrazami o 5 pikseli. Wartością domyślną tej właściwości jest 0, co oznacza, że odstępy są ustalane przez przeglądarkę na podstawie czcionki i innych parametrów tekstu. Użycie word-spacing może być szczególnie przydatne w przypadku projektowania stron internetowych, gdzie estetyka tekstu ma kluczowe znaczenie dla doświadczeń użytkownika. Dlatego, aby osiągnąć pożądany efekt wizualny, projektanci często manipulują odstępami między wyrazami w swoich stylach CSS, co jest zgodne z wytycznymi W3C dotyczącymi dostępności i czytelności treści na stronach internetowych.

Pytanie 20

W celu wykonania kopii bazy danych biblioteka w systemie MySQL należy w konsoli użyć polecenia

A. mysqlduplicate –u root biblioteka > kopia.sql
B. copymysql –u root biblioteka kopia.sql
C. backupmysql -u root biblioteka kopia.sql
D. mysqldump -u root biblioteka > kopia.sql
Poprawne polecenie do wykonania kopii bazy danych MySQL to „mysqldump -u root biblioteka > kopia.sql”. Narzędzie mysqldump jest oficjalnym, standardowym programem dostarczanym razem z serwerem MySQL i właśnie ono służy do tworzenia logicznych kopii zapasowych baz danych. Działa tak, że łączy się z serwerem MySQL, odczytuje strukturę tabel oraz dane, a następnie generuje plik tekstowy zawierający instrukcje SQL typu CREATE TABLE i INSERT. Taki plik można potem w prosty sposób wgrać z powrotem, np. poleceniem „mysql -u root biblioteka < kopia.sql”. To jest bardzo wygodne w praktyce, bo backup jest przenośny między serwerami, wersjami MySQL, a nawet można go edytować ręcznie w razie potrzeby. W tym poleceniu „-u root” oznacza użytkownika bazy danych, czyli logujemy się jako użytkownik root. W realnym środowisku produkcyjnym zwykle używa się konta z mniejszymi uprawnieniami i dodatkowo opcji „-p”, żeby podać hasło (np. „mysqldump -u backup_user -p biblioteka > kopia.sql”). Nazwa „biblioteka” to nazwa bazy, którą archiwizujemy. Znak „>” to przekierowanie powłoki systemowej (bash, cmd itp.), które zapisuje wynik działania programu mysqldump do pliku „kopia.sql” zamiast wypisywać go na ekran. To przekierowanie nie jest częścią MySQL, tylko mechanizmem systemu operacyjnego, co czasem bywa mylące dla początkujących. Moim zdaniem warto od razu wyrabiać sobie dobre nawyki: używać mysqldump regularnie, najlepiej w skryptach cron (Linux) lub Harmonogramie zadań (Windows), trzymać kopie na innym serwerze i testować odtwarzanie. W praktyce administracji serwerami i bezpieczeństwa danych takie kopie logiczne są podstawą procedur disaster recovery. W dokumentacji MySQL mysqldump jest wymieniony jako jedno z głównych narzędzi do backupu i migracji baz danych, więc znajomość dokładnie tego polecenia to absolutna podstawa pracy z MySQL w środowiskach webowych i nie tylko.

Pytanie 21

Co wchodzi w skład standardowego frameworka?

A. przetwarzanie formularzy oraz wbudowany serwer
B. domena oraz obsługa błędów
C. zarządzanie komunikacją z bazą danych, system uruchamiania i przetwarzania akcji
D. system uruchamiania i przetwarzania akcji oraz certyfikat http
Frameworki aplikacji webowych dostarczają zestawu narzędzi i standardów, które ułatwiają tworzenie oprogramowania. W kontekście tego pytania, zarządzanie komunikacją z bazą danych oraz mechanizm uruchamiania i przetwarzania akcji stanowią kluczowe komponenty każdego frameworka. Zarządzanie komunikacją z bazą danych odnosi się do sposobów, w jakie aplikacja łączy się z bazą danych, wykonuje zapytania i przetwarza wyniki. Przykładowo, w frameworkach takich jak Django czy Ruby on Rails, stosuje się ORM (Object-Relational Mapping), co ułatwia interakcję z bazą danych poprzez obiektowe podejście zamiast pisania surowych zapytań SQL. Mechanizm uruchamiania i przetwarzania akcji opisuje, jak framework interpretuje i obsługuje żądania użytkowników, co obejmuje routing, middleware i obsługę logiki biznesowej. Takie podejście jest zgodne z zasadą DRY (Don't Repeat Yourself), co zwiększa efektywność i jakość kodu w projektach programistycznych.

Pytanie 22

W którym z bloków powinien znaleźć się warunek pętli?

Ilustracja do pytania
A. C.
B. B.
C. D.
D. A.
Blok oznaczony literą C jest symbolem decyzji w diagramach przepływu i jest używany do umieszczania warunków pętli w programowaniu. Symbol ten, przypominający romb, pozwala na zadanie pytania lub warunku, który decyduje o dalszym przebiegu działania programu. W praktyce, w językach programowania takich jak C++ czy Python, pętle warunkowe takie jak 'while' lub 'for' wymagają zdefiniowania warunku, który kontroluje liczbę iteracji. Blok decyzyjny umożliwia tworzenie logiki kontrolowanej przez dane wejściowe, co jest fundamentalne dla dynamicznych i responsywnych aplikacji. Zastosowanie bloku decyzyjnego zgodnie ze standardami branżowymi, jak np. UML (Unified Modeling Language), jest kluczowe dla tworzenia zrozumiałych i skalowalnych diagramów przepływu. Dzięki temu, programiści mogą łatwo komunikować algorytmy złożone z sekwencji warunków i decyzji, co jest niezbędne w projektowaniu oprogramowania o dużej złożoności. Praktyczne zrozumienie i stosowanie warunków w blokach decyzyjnych jest kluczowe dla tworzenia efektywnych rozwiązań programistycznych.

Pytanie 23

Który z poniższych formatów nie umożliwia zapisu plików animowanych?

A. ACE
B. SWF
C. GIF
D. SVG
GIF, SWF i SVG to popularne formaty, które umożliwiają przechowywanie animacji. GIF, czyli Graphics Interchange Format, od lat jest standardem w sieci do tworzenia prostych animacji. Dzięki możliwości zapisywania sekwencji obrazów w jednym pliku, GIF umożliwia tworzenie krótkich klipów animowanych, które są powszechnie wykorzystywane w mediach społecznościowych, takich jak Twitter czy Facebook. Format ten obsługuje do 256 kolorów z palety, co sprawia, że jest idealny do prostych animacji, ale mniej skuteczny w przypadku bardziej złożonych obrazów kolorowych. SWF, lub Shockwave Flash, jest innym formatem, który został zaprojektowany przez firmę Adobe do tworzenia interaktywnych aplikacji i animacji w sieci. Umożliwia on osadzanie dźwięku, wideo oraz zaawansowane animacje, co czyni go bardzo wszechstronnym narzędziem dla twórców treści internetowych. SVG, z angielskiego Scalable Vector Graphics, to format oparty na XML, który obsługuje grafikę wektorową oraz animacje. Dzięki zastosowaniu technologii HTML5, SVG pozwala na dynamiczne animacje i interaktywność, co znacząco zwiększa jego zastosowanie w nowoczesnych aplikacjach internetowych. W związku z tym, te trzy formaty są niewątpliwie przystosowane do tworzenia i zapisywania plików animowanych, co czyni je nieodpowiednimi odpowiedziami w kontekście pytania.

Pytanie 24

Przedstawiona jest tabela pracownicy, w której umieszczono rekordy widoczne obok. Jaką wartość zwróci wykonanie umieszczonej w ramce kwerendy SQL?

SELECT MAX(pensja) FROM pracownicy WHERE pensja < 3000;
idimienazwiskopensja
1AnnaKowalska3400
2MonikaNowak1300
3EwelinaNowakowska2600
4AnnaPrzybylska4600
5MariaKowal2200
6EwaNowacka5400
A. 2600
B. 5400
C. 1300
D. 2200
Kwerenda SQL SELECT MAX(pensja) FROM pracownicy WHERE pensja < 3000; służy do znalezienia maksymalnej wartości w kolumnie pensja z rekordów spełniających warunek pensja mniejsza niż 3000. Przeszukując tabelę pracownicy widzimy że wartości spełniające ten warunek to 1300 2600 i 2200. Najwyższą z tych wartości jest 2600 co czyni tę odpowiedź poprawną. Zrozumienie tego typu kwerend SQL jest kluczowe w pracy z bazami danych ponieważ pozwala na wyciąganie konkretnych informacji z dużych zbiorów danych. W praktyce takie zapytania mogą być używane do analizowania danych pracowniczych w firmach gdzie na przykład chcemy zidentyfikować pracowników z wynagrodzeniem poniżej określonego progu. Jest to zgodne z dobrymi praktykami w branży gdzie używa się agregacji danych do celów analitycznych. Zrozumienie jak działa funkcja MAX() w połączeniu z klauzulą WHERE umożliwia efektywne filtrowanie i przetwarzanie danych co jest niezbędne w wielu aplikacjach biznesowych.

Pytanie 25

W PHP typ float oznacza

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

Pytanie 26

Który paragraf w przedstawionym kodzie zostanie wyświetlony czcionką o kolorze niebieskim?

<!DOCTYPE html>
<html>
<head>
<style>
div~p { color: blue; }
</style>
</head>
<body>
  <div>
    <p>pierwszy paragraf</p>
      <div>
        <p>drugi paragraf</p>
        <p>trzeci paragraf</p>
      </div>
    <p>czwarty paragraf</p>
  </div>
</body>
</html>
A. Czwarty.
B. Drugi.
C. Trzeci.
D. Pierwszy.
Źródłem problemu w tym zadaniu jest zrozumienie, jak dokładnie działa selektor `div~p`. Na pierwszy rzut oka wiele osób patrzy po prostu na kolejność paragrafów w kodzie i zakłada, że skoro wewnątrz diva są kolejne `<p>`, to one wszystkie będą niebieskie. To jest typowe mieszanie działania selektora rodzeństwa z selektorem potomków. Zapis `div p` rzeczywiście oznaczałby „każdy paragraf znajdujący się gdziekolwiek wewnątrz diva”, ale w pytaniu użyto operatora tyldy `~`, który ma inne znaczenie. Selektor `div~p` wskazuje elementy `<p>`, które są rodzeństwem elementu `<div>`, czyli mają tego samego rodzica w drzewie DOM, i jednocześnie występują po nim w kodzie. To oznacza, że przeglądarka w ogóle nie patrzy na paragrafy zagnieżdżone głębiej, np. w dodatkowym `<div>` w środku. One nie są rodzeństwem, tylko potomkami, więc selektor ich nie obejmuje. Częsty błąd polega też na myleniu selektora `div~p` z `div+p`. Ten drugi wybiera wyłącznie pierwszy paragraf bezpośrednio po divie na tym samym poziomie, natomiast `~` obejmuje wszystkie późniejsze rodzeństwa danego typu. W tym przykładzie jedynym `<p>`, który jest na tym samym poziomie co zewnętrzny `<div>` i stoi po nim, jest „czwarty paragraf”. Pozostałe, mimo że wizualnie znajdują się „w środku” tego diva, nie są rodzeństwem, tylko są bardziej zagnieżdżone. Z mojego doświadczenia wynika, że dopóki nie narysuje się sobie drzewa DOM albo nie podejrzy struktury w DevTools, bardzo łatwo o takie pomyłki. Dobra praktyka w CSS to zawsze myśleć o relacjach: rodzic–dziecko, rodzeństwo, potomek, a dopiero potem o kolejności w kodzie. Dzięki temu selektory są pisane świadomie, bardziej precyzyjnie i nie powodują niespodziewanych efektów w większych projektach.

Pytanie 27

SELECT AVGcena) FROM usługi; Celem użycia funkcji agregującej AVG w tym zapytaniu jest

A. określić najwyższą cenę usług
B. wyliczyć średnią arytmetyczną cen wszystkich usług
C. zliczyć ilość dostępnych usług w tabeli
D. zsumować wartości kosztów wszystkich usług
Odpowiedź "obliczyć średnią arytmetyczną cen wszystkich usług" jest poprawna, ponieważ funkcja AVG (average) w SQL jest zaprojektowana do obliczania średniej wartości z zestawu danych w danej kolumnie. W podanym zapytaniu, AVG(cena) ma na celu zsumowanie wartości w kolumnie 'cena' dla wszystkich wierszy w tabeli 'usługi' oraz podzielenie tej sumy przez liczbę wierszy, które zawierają dane. W praktyce, średnia arytmetyczna jest niezwykle użyteczna w analizie danych, ponieważ pozwala na uzyskanie jednego, reprezentatywnego wyniku, który może być pomocny w podejmowaniu decyzji biznesowych. Na przykład, firma usługowa może użyć tej informacji do oceny swojej polityki cenowej, porównując średnią cenę swoich usług do średnich cen konkurencji. Zgodnie z najlepszymi praktykami w branży, stosowanie funkcji agregujących takich jak AVG powinno być integralną częścią procesów analizy danych, szczególnie w kontekście raportowania i oceny efektywności operacyjnej.

Pytanie 28

Które z poniższych twierdzeń najlepiej opisuje klasę Owoc zdefiniowaną w PHP i przedstawioną w kodzie?

class Owoc {
  public $nazwa;
  private $kolor;
  function set_nazwa($nazwa) {
    $this->nazwa = $nazwa;
  }
}
A. Zawiera dwa pola oraz jedną metodę, pole kolor ma widoczność ograniczoną jedynie do metod klasy
B. Zawiera dwa pola oraz jedną metodę, pole nazwa ma widoczność ograniczoną tylko do metod klasy
C. Zawiera dwa pola oraz jeden konstruktor, oba pola mają widoczność ograniczoną tylko do metod klasy
D. Zawiera jedno pole oraz dwie metody, przy czym jedna z metod ma zakres prywatny
Klasa Owoc w języku PHP jest zdefiniowana z dwoma polami: publicznym $nazwa i prywatnym $kolor. Odpowiedź wskazująca, że pole kolor ma ograniczony dostęp tylko do metod klasy, jest prawidłowa, ponieważ zastosowanie modyfikatora private oznacza, że pole to jest dostępne wyłącznie wewnątrz klasy. Jest to dobra praktyka projektowania, gdzie prywatne pola chronią integralność danych, umożliwiając dostęp i modyfikację tylko za pośrednictwem metod klasy. W tym przypadku, metoda set_nazwa pozwala na ustawienie wartości dla pola $nazwa, ale nie ma bezpośredniej metody dla $kolor, co jest celową strategią, aby zapewnić kontrolę nad dostępem do tego pola. W praktyce, pole $kolor mogłoby być wykorzystywane do przechowywania informacji, które nie powinny być zmieniane zewnętrznie, a jedynie konfigurowane wewnątrz klasy lub podczas jej inicjalizacji. Taki układ sprzyja enkapsulacji, jednym z filarów programowania obiektowego, promując bezpieczeństwo danych i modularność kodu. W projektach komercyjnych zaleca się również dodanie metod get i set dla prywatnych zmiennych, aby zachować elastyczność i kontrolę nad danymi.

Pytanie 29

Która definicja CSS wskazuje na formatowanie nagłówka h1: tekst z przekreśleniem, z odstępami między słowami wynoszącymi 10 px oraz w kolorze czerwonym?

Ilustracja do pytania
A. D
B. C
C. A
D. B
Odpowiedź A jest w porządku, bo dobrze odpowiada na to, co pytanie wymaga. Deklaracja 'text-decoration: overline;' dodaje linię nad tekstem, a nie pod nim. Właściwie to mega ważne, bo można łatwo pomylić nadkreślenie z podkreśleniem. Plus, 'word-spacing: 10px;' ustawia fajny odstęp między wyrazami, co sprawia, że nagłówki wyglądają lepiej i są bardziej czytelne. A jak ustawiłeś kolor tekstu na 'red', to wszystko jest super zgodne z tym, co miało być w zadaniu. Używanie takich definicji CSS to standard w tworzeniu stron, bo dobrze stylizowane nagłówki pomagają w organizacji treści i poprawiają wrażenia użytkowników. Pamiętaj, że sensowne i dobrze zdefiniowane style CSS to nie tylko wygoda, ale też ułatwiają późniejsze poprawki dla innych programistów.

Pytanie 30

W języku PHP, przy pracy z bazą MySQL, aby zakończyć sesję z bazą, należy wywołać

A. mysqli_commit()
B. mysqli_close()
C. mysqli_rollback()
D. mysqli_exit()
Odpowiedź mysqli_close() jest prawidłowa, ponieważ ta funkcja jest używana do zamknięcia połączenia z bazą danych MySQL w języku PHP. Po zakończeniu wszystkich operacji na bazie danych, zaleca się wywołanie tej funkcji, aby zwolnić zasoby systemowe oraz zamknąć połączenie, co jest zgodne z dobrymi praktykami programistycznymi. Użycie mysqli_close() jest istotne, ponieważ niezamknięte połączenia mogą prowadzić do wycieków pamięci i wyczerpania dostępnych zasobów, co z kolei może wpłynąć na wydajność aplikacji. W praktyce, jeśli mamy otwarte połączenie z bazą danych, po zakończeniu operacji, takich jak pobieranie lub wstawianie danych, używamy mysqli_close($connection), gdzie $connection to nasza zmienna reprezentująca połączenie. Oprócz tego, pamiętajmy, że dbanie o odpowiednie zarządzanie połączeniami ma kluczowe znaczenie dla bezpieczeństwa i stabilności naszych aplikacji.

Pytanie 31

Który atrybut należy dodać do znacznika <video>, aby wyciszyć dźwięk odtwarzanego w przeglądarce filmu?

<video>
    <source src="film.mp4" type="video/mp4">
</video>
A. muted
B. loop
C. controls
D. autoplay
Twoja odpowiedź jest poprawna. Atrybut 'muted' jest używany w znaczniku <video>, aby wyłączyć dźwięk dla filmu wyświetlanego w przeglądarce. Jest to sposób na sterowanie dźwiękiem bez konieczności korzystania z dodatkowych elementów kontrolujących odtwarzanie filmu. Jest to bardzo przydatne, gdy chcemy, aby film był odtwarzany w tle bez zakłócania użytkownika dźwiękiem, co jest często stosowane na stronach internetowych. Ważne jest to, że to atrybut 'muted' jest odpowiedzialny za początkowy stan dźwięku filmu, a nie za to, czy użytkownik będzie mógł go później włączyć. Dodatkowo, dobrą praktyką jest pozostawienie użytkownikowi możliwości sterowania dźwiękiem, nawet jeśli jest on domyślnie wyłączony, co można osiągnąć dodając atrybut 'controls'.

Pytanie 32

Przedstawione zapytanie SELECT wykonane na tabeli przechowującej dane o uczestnikach konkursu ma za zadanie wybrać

SELECT MAX(wiek) - MIN(wiek) FROM uczestnicy;
A. różnicę wieku pomiędzy najstarszym i najmłodszym uczestnikiem.
B. liczbę najstarszych uczestników.
C. średnią arytmetyczną wieku uczestników.
D. minimalny oraz maksymalny wiek uczestników.
Gratulacje, ta odpowiedź jest poprawna. Zapytanie SQL używa funkcji agregujących MAX i MIN do określenia maksymalnej i minimalnej wartości wieku w tabeli uczestników. Użycie tych funkcji umożliwia nam zidentyfikowanie najstarszego i najmłodszego uczestnika. Następnie, zapytanie oblicza różnicę między tymi wartościami, co odpowiada różnicy wieku między najstarszym i najmłodszym uczestnikiem. To jest standardowe podejście w SQL do wykonywania tego typu zapytań. W praktyce, takie zapytania są często używane w analizie danych do określania różnorodności danych, takiej jak zakres wieku uczestników w danym konkursie. Pamiętaj, że funkcje agregujące w SQL, takie jak MAX i MIN, są niezwykle przydatne w analizie danych, umożliwiając nam podsumowanie i analizę dużych zbiorów danych.

Pytanie 33

Jak brzmi nazwa metody sortowania, która polega na wielokrotnym analizowaniu kolejnych elementów tablicy oraz zamianie miejscami sąsiadujących elementów, aby utrzymać porządek według ustalonej reguły?

A. Sortowanie kubełkowe
B. Sortowanie bąbelkowe
C. Sortowanie przez wybór
D. Sortowanie szybkie
Sortowanie bąbelkowe, znane także jako Bubble Sort, to jedna z najprostszych metod sortowania, która polega na wielokrotnym przechodzeniu przez tablicę i porównywaniu par sąsiadujących elementów. Jeśli dany element jest większy od swojego sąsiada, następuje ich zamiana miejscami. Ta metoda sprawdza tablicę wielokrotnie, aż do momentu, gdy nie są już potrzebne żadne zamiany, co oznacza, że tablica jest posortowana. Przykładem zastosowania sortowania bąbelkowego mogą być sytuacje, gdy mamy do czynienia z niewielkimi zbiorami danych, na przykład w aplikacjach edukacyjnych, które mają na celu naukę podstaw algorytmiki. Warto pamiętać, że mimo swojej prostoty, sortowanie bąbelkowe ma złożoność czasową O(n²), co sprawia, że nie jest efektywne dla dużych zbiorów danych. Mimo to, jego zrozumienie stanowi dobry punkt wyjścia do nauki bardziej zaawansowanych algorytmów sortujących."

Pytanie 34

W języku C++ funkcja, która zwraca rezultat potęgowania i operuje na dwóch argumentach: liczbie x oraz wykładniku w, powinna mieć taką deklarację

A. int potega(int x, int w);
B. void potega(int x, int w);
C. void potega(int x, int w, int wynik);
D. int potega(int x);
Zgadzasz się, że 'int potega(int x, int w);' to trafna odpowiedź. Funkcja do potęgowania faktycznie potrzebuje dwóch rzeczy: podstawy x i wykładnika w, a na końcu powinna zwrócić liczbę całkowitą, która jest wynikiem potęgowania. Jakby to wyglądało w praktyce? Można by to napisać jako 'int potega(int x, int w) { return pow(x, w); }'. Przy czym 'pow' pochodzi z biblioteki cmath i robi te wszystkie magiczne obliczenia. Ważne jest, by przy projektowaniu funkcji myśleć o ich użyteczności, czyli żeby miały jasno określone wejście i wyjście. A jak już mówimy o potęgowaniu, to musimy też pamiętać o specjalnych przypadkach, jak potęgowanie zera do zera, które w matematyce jest równe 1. Dlatego dobrze zrobiona funkcja powinna to uwzględniać. W programowaniu kluczowe jest, by obliczenia były efektywne i poprawne, zwłaszcza w naukowych i inżynieryjnych projektach, gdzie precyzja jest bardzo istotna.

Pytanie 35

Odszumienie zapisu dźwiękowego można wykonać w programie

A. Audacity
B. Blender
C. Inkscape
D. FileZilla
Poprawna odpowiedź to Audacity, bo jest to specjalistyczny, ale jednocześnie darmowy i otwartoźródłowy program do edycji oraz obróbki dźwięku. W praktyce oznacza to, że możesz w nim nagrywać, przycinać, normalizować, a właśnie także odszumiać nagrania audio. W menu Efekty znajdziesz funkcje typu „Usuwanie szumu” (Noise Reduction), które działają na podstawie próbki szumu – najpierw zaznaczasz fragment, gdzie słychać sam szum tła (np. wentylator, brumienie, szum ulicy), a potem program wykorzystuje ten wzorzec do odfiltrowania podobnych częstotliwości z całego nagrania. To jest standardowa, bardzo typowa procedura w amatorskiej i półprofesjonalnej postprodukcji audio. Moim zdaniem Audacity to taki „podstawowy kombajn” dźwiękowy, którego warto znać w technikum. Pozwala też stosować inne efekty: kompresję, korekcję barwy (EQ), filtrowanie dolno- i górnoprzepustowe, zmianę głośności (normalizacja, wzmacnianie), a nawet proste miksowanie kilku ścieżek. W kontekście dobrych praktyk ważne jest, żeby nie przesadzać z odszumianiem, bo zbyt agresywne ustawienia potrafią zepsuć brzmienie głosu, tworząc artefakty i metaliczny dźwięk. Profesjonaliści zwykle pracują tak, że najpierw nagrywają jak najczyściej (dobry mikrofon, cisza w pomieszczeniu), a dopiero potem delikatnie odszumiają w programie. Audacity dobrze wpisuje się w takie podejście, bo daje podgląd efektu (odsłuch) przed zatwierdzeniem zmian i możliwość cofania operacji. W realnych projektach szkolnych czy webowych, np. przy przygotowaniu podcastu, narracji do filmu instruktażowego albo materiału wideo na stronę WWW, właśnie w Audacity robi się podstawowe czyszczenie dźwięku, zanim materiał trafi do montażu wideo lub na serwer.

Pytanie 36

W podanym przykładzie pseudoklasa hover spowoduje, że styl pogrubiony zostanie zastosowany

Ilustracja do pytania
A. dla wszystkich odwiedzonych odnośników
B. dla każdego odnośnika bez względu na jego aktualny stan
C. odnośnikowi, gdy kursor myszy na nim spocznie
D. dla wszystkich nieodwiedzonych odnośników
Pseudoklasa hover w CSS jest stosowana do definiowania stylu elementu, gdy użytkownik umieszcza nad nim kursor myszy. W kontekście odnośników, stosowanie pseudoklasy hover pozwala na dynamiczne dostosowywanie ich wyglądu, co jest kluczowe dla poprawy interaktywności i użyteczności stron internetowych. W przykładzie a:hover { font-weight: bold; } styl pogrubiony zostanie zastosowany do odnośnika, gdy użytkownik najedzie na niego kursorem myszy. Jest to częsta praktyka w projektowaniu stron, która pomaga użytkownikom łatwiej identyfikować aktywne elementy nawigacyjne. Standardy sieciowe, takie jak W3C, rekomendują stosowanie takich interakcji w celu poprawy doświadczenia użytkownika. Praktyczne zastosowanie pseudoklasy hover jest szerokie, od prostych efektów wizualnych, po skomplikowane animacje i przejścia. Ważne jest jednak, aby pamiętać o zapewnieniu alternatywnych metod interakcji dla użytkowników korzystających z urządzeń dotykowych, gdzie hover nie jest obsługiwany. Zrozumienie i właściwe stosowanie pseudoklas w CSS jest podstawą tworzenia nowoczesnych i dostępnych interfejsów użytkownika.

Pytanie 37

Który efekt został zaprezentowany na filmie?

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

Pytanie 38

W języku JavaScript zapisano funkcję. Co ona ma za zadanie.

function fun1(f) {
    if (f < 0) f = f * (-1);
    return f
}
A. wypisać wartość bezwzględną z f
B. zwrócić wartość bezwzględną z f
C. wypisać wartość odwrotną do f
D. zwrócić wartość odwrotną do f
Twoja odpowiedź jest poprawna. Funkcja, o której mówi pytanie, zwraca wartość bezwzględną z argumentu f. W języku programowania JavaScript wartość bezwzględną możemy obliczyć w różny sposób. W tym przypadku, dla f mniejszego od zera funkcja mnoży f przez -1, co jest równoznaczne z obliczeniem wartości bezwzględnej dla liczby ujemnej. Dla liczby nieujemnej, funkcja zwraca jej wartość bez zmian. To jest zgodne z definicją wartości bezwzględnej, która mówi, że jest to odległość liczby od zera na osi liczb rzeczywistych, bez względu na kierunek. W praktyce, wartość bezwzględna często jest używana w algorytmach, w których interesuje nas tylko 'rozmiar' wartości, a nie jej kierunek, np. w algorytmach statystycznych, graficznych czy fizycznych.

Pytanie 39

Jakie są odpowiednie kroki w odpowiedniej kolejności, które należy podjąć, aby nawiązać współpracę pomiędzy aplikacją internetową po stronie serwera a bazą danych SQL?

A. wybór bazy, zapytanie do bazy, nawiązanie połączenia z serwerem baz danych, wyświetlenie na stronie WWW, zamknięcie połączenia
B. wybór bazy danych, nawiązanie połączenia z serwerem baz danych, zapytanie do bazy - wyświetlane na stronie WWW, zamknięcie połączenia
C. nawiązanie połączenia z serwerem baz danych, wybór bazy, zapytanie do bazy - wyświetlane na stronie WWW, zamknięcie połączenia
D. zapytanie do bazy, wybór bazy, wyświetlenie na stronie WWW, zamknięcie połączenia
Aby nawiązać współpracę między aplikacją internetową a bazą danych SQL, niezbędne jest przestrzeganie odpowiedniej sekwencji kroków. Proces ten rozpoczyna się od nawiązania połączenia z serwerem baz danych, co jest kluczowe, ponieważ bez aktywnego połączenia aplikacja nie ma możliwości komunikacji z bazą. Następnie dokonujemy wyboru konkretnej bazy danych, z którą chcemy pracować. Jest to istotny krok, ponieważ w przypadku serwera mogą istnieć różne bazy, a aplikacja musi wiedzieć, z którą z nich ma się połączyć. Po dokonaniu wyboru bazy następuje wysłanie zapytania do bazy danych, które może być zapytaniem typu SELECT, INSERT, UPDATE, lub DELETE w zależności od potrzeb aplikacji. Po zrealizowaniu zapytania wyniki są przetwarzane i wyświetlane na stronie internetowej. Ostatnim krokiem jest zamknięcie połączenia z bazą danych, co jest ważne dla zarządzania zasobami, zapobiega to wyciekom pamięci i utrzymuje wydajność serwera. Te kroki są zgodne z ogólnymi standardami tworzenia aplikacji webowych i wzorcami projektowymi, jak na przykład architektura MVC, gdzie kontroler jest odpowiedzialny za zarządzanie komunikacją z bazą danych.

Pytanie 40

Zaprezentowano rezultat zastosowania CSS oraz odpowiadający mu kod HTML. W jaki sposób trzeba zdefiniować styl, aby uzyskać takie formatowanie?

Ilustracja do pytania
A. p::first-letter { font-size: 400%; color: blue; }
B. .first-letter { font-size: 400%; color: blue; }
C. #first-letter { font-size: 400%; color: blue; }
D. p.first-letter { font-size: 400%; color: blue; }
Odpowiedź jest prawidłowa, ponieważ selektor CSS p::first-letter precyzyjnie określa, że stylizacja ma być zastosowana do pierwszej litery każdego akapitu, który jest oznaczony tagiem p. Jest to pseudo-element CSS, który umożliwia dostęp do pierwszej litery bloku tekstu w celu nadania jej unikalnego wyglądu. W tym przypadku zmieniono jej rozmiar na 400% oraz kolor na niebieski. Użycie ::first-letter jest zgodne z najlepszymi praktykami, gdyż pozwala na zachowanie semantyczności HTML i oddzielenie warstwy prezentacyjnej od treści, co jest kluczowe w responsywnym projektowaniu stron internetowych. Pseudo-elementy jak ::first-letter są niezwykle przydatne w tworzeniu estetycznych i czytelnych interfejsów użytkownika, zwłaszcza w przypadku publikacji zawierających dużo tekstu. Dobrą praktyką jest stosowanie pseudo-elementów w połączeniu z klasami i identyfikatorami, aby stylizacja była elastyczna i mogła być łatwo dostosowywana zgodnie z potrzebami projektu.