Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 5 maja 2026 11:32
  • Data zakończenia: 5 maja 2026 11:58

Egzamin zdany!

Wynik: 33/40 punktów (82,5%)

Wymagane minimum: 20 punktów (50%)

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

Jakie typy danych w C++ są używane do reprezentacji liczb rzeczywistych?

A. double oraz bool
B. double oraz short
C. float oraz long
D. float oraz double
Odpowiedź 'float i double' jest prawidłowa, ponieważ te dwa typy danych w języku C++ są przeznaczone do reprezentowania liczb rzeczywistych. Typ 'float' zajmuje 4 bajty pamięci i służy do przechowywania liczb zmiennoprzecinkowych o pojedynczej precyzji, co oznacza, że może reprezentować liczby z ograniczoną dokładnością. Typ 'double', z kolei, zajmuje 8 bajtów pamięci i pozwala na przechowywanie liczb zmiennoprzecinkowych o podwójnej precyzji. Dzięki temu 'double' umożliwia reprezentację znacznie większych i bardziej precyzyjnych wartości. W praktyce, typ 'float' jest często używany w sytuacjach, gdzie oszczędność pamięci jest kluczowa, na przykład w grafice komputerowej, natomiast 'double' jest preferowany w obliczeniach naukowych i inżynieryjnych, gdzie precyzja jest priorytetem. Dlatego zrozumienie różnicy między tymi typami danych oraz ich zastosowań jest niezbędne do efektywnego programowania w C++. Zgodnie z najlepszymi praktykami, programiści powinni dobierać typy danych odpowiednio do wymagań swojego projektu, zwracając uwagę na równowagę między precyzją a wydajnością.

Pytanie 2

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

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

Pytanie 3

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);
Przyjrzyjmy się tym nieprawidłowym odpowiedziom. 'int potega(int x);' to trochę za mało, bo brakuje drugiego argumentu, czyli wykładnika, który jest niezbędny do potęgowania. Potęgowanie potrzebuje obu elementów: podstawy i wykładnika, więc jeżeli jeden z nich wypadnie, to funkcja będzie niekompletna. Odpowiedź 'void potega(int x, int w);' również jest błędna, bo mówi, że funkcja nie zwraca żadnej wartości. W kontekście potęgowania, każdy by oczekiwał uzyskać konkretny wynik. Jak funkcja nic nie zwraca, to można mieć spore problemy z dalszym przetwarzaniem. Co do 'void potega(int x, int w, int wynik);' - dodawanie dodatkowego argumentu niepotrzebnie komplikuje sprawę. Bywa, że można przekazywać argumenty przez referencję, ale w prostym potęgowaniu to po prostu zbędne. Dużo osób nie zdaje sobie sprawy, jak ważne jest, żeby funkcje miały jasno określony interfejs. Dobre funkcje powinny dokładnie określać, co biorą i co zwracają, wtedy łatwiej je używać i integrować w innych częściach programów.

Pytanie 4

Cechy przedstawione w tabeli dotyczą?

  • Strony ustalają dążenie do konkretnego wyniku
  • Ważny jest efekt pracy, a nie sposób jej realizacji
  • Zleceniodawca przekazuje za wykonawcę zaliczkę na podatek dochodowy
A. umowy o pracę
B. umowy zlecenia
C. umowy agencyjnej
D. umowy o dzieło
Umowa o pracę różni się od umowy o dzieło w kilku kluczowych aspektach. Przede wszystkim, umowa o pracę koncentruje się na procesie wykonywania pracy, a nie tylko na jej rezultacie. Pracownik w ramach umowy o pracę podlega określonym przepisom dotyczącym czasu pracy, urlopów i innych świadczeń pracowniczych, co nie ma miejsca w umowie o dzieło. Z kolei umowa zlecenia także skupia się bardziej na wykonywaniu usług niż na osiąganiu konkretnego rezultatu, co oznacza, że zleceniobiorca powinien wykonać powierzone zadanie z należytą starannością, ale niekoniecznie osiągnąć określony efekt końcowy. Umowa agencyjna jest jeszcze innym typem kontraktu, w którym agent działa na rzecz zleceniodawcy, ale niekoniecznie musi dostarczać konkretny produkt lub usługę końcową. Typowym błędem jest mylenie tych umów z uwagi na podobieństwa w formalnościach czy obowiązkach podatkowych, jednak kluczowe jest zrozumienie różnic w zakresie oczekiwań co do efektu pracy i sposobu jej rozliczania.

Pytanie 5

Wybierz prawidłowy sposób umieszczania komentarzy w kodzie źródłowym HTML

A. /* informacje komentarza */
B. <!-- informacje komentarza -->
C. -- informacje komentarza --
D. "" informacje komentarza ""
Poprawny komentarz w HTML musi być zapisany dokładnie w formie: <!-- treść komentarza -->. To jest jedyny format zgodny ze specyfikacją HTML (HTML5, ale też starsze wersje). Przeglądarka traktuje wszystko, co znajduje się między ciągiem znaków <!-- a -->, jako komentarz, czyli tego nie wyświetla użytkownikowi i nie interpretuje jako kod. Dzięki temu można w kodzie zostawiać sobie uwagi, opisy sekcji, tymczasowo coś „wyłączyć” albo oznaczyć fragment do późniejszej edycji. W praktyce stosuje się np.: <!-- Nawigacja główna strony --> albo <!-- TODO: dodać link do panelu logowania -->. Moim zdaniem komentarze są szczególnie ważne w większych projektach, bo po miesiącu naprawdę trudno pamiętać, po co była jakaś dziwna konstrukcja w HTML. Warto też wiedzieć, że w HTML nie stosujemy ani //, ani /* */ jak w JavaScript czy CSS. To są inne języki, inne reguły. Jeżeli wstawisz coś w stylu <!-- <p>Tekst</p> -->, to cały ten akapit jest ignorowany przez przeglądarkę, co jest wygodne przy testowaniu. Dobra praktyka jest też taka, żeby nie przesadzać z ilością komentarzy, ale tam gdzie struktura jest mniej oczywista (np. zagnieżdżone divy, rozbudowane formularze), lepiej dodać krótki, konkretny opis. W projektach komercyjnych często używa się komentarzy do oznaczania sekcji layoutu, np. <!-- HEADER START -->, <!-- FOOTER END -->, co ułatwia pracę całemu zespołowi. W skrócie: tylko zapis z nawiasami ostrymi i myślnikami, czyli <!-- ... -->, jest w HTML prawidłowy i rozpoznawany jako komentarz.

Pytanie 6

Czym jest relacja w bazach danych?

A. logicznym powiązaniem tabel
B. połączeniem dwóch pól jednej tabeli
C. kluczem podstawowym w relacji tabel
D. algebraicznym powiązaniem tabel
Niektóre odpowiedzi wskazujące, że relacja w bazach danych jest algebraicznym połączeniem tabel albo chodzi o klucz główny w relacji tabel, są trudne do przyjęcia. Bo relacje w bazach danych to nie tylko techniczne sprawy, ale przede wszystkim sposób łączenia różnych tabel. Używanie terminu 'algebraiczne połączenie' trochę mija się z celem, bo te relacje są bardziej związane z logiką niż z matematyką. Klucz główny jest ważny do identyfikacji rekordów, ale to nie jest to samo co relacja. To się przypina z założeniem, że relacja to połączenie pól w jednej tabeli, co całkowicie nie zgadza się z tym jak działają relacyjne bazy danych. Takie błędne myślenie może namieszać w projektowaniu baz danych i potem ciężko będzie robić złożone zapytania. Dlatego dobrze jest mieć jasność co do relacji, bo to klucz do skutecznego zarządzania danymi.

Pytanie 7

Wskaż metodę biblioteki Math języka JavaScript, która dla parametru x = 2.8 zwróci wartość 2.

A. sqrt(x)
B. exp(x)
C. floor(x)
D. ceil(x)
Poprawna jest metoda Math.floor(x), ponieważ w JavaScript odpowiada ona za zaokrąglenie liczby w dół do najbliższej liczby całkowitej. Dla x = 2.8 wynik Math.floor(2.8) to 2, bo funkcja „odcina” część ułamkową i schodzi do najbliższej liczby całkowitej mniejszej lub równej podanej wartości. To zachowanie jest zdefiniowane w specyfikacji ECMAScript i jest spójne we wszystkich nowoczesnych przeglądarkach oraz środowiskach typu Node.js. W praktyce Math.floor bardzo często wykorzystuje się przy pracy z indeksami tablic, generowaniu losowych liczb całkowitych czy przy obliczeniach, gdzie fragment ułamkowy nie ma znaczenia, np. liczba stron, liczba pełnych paczek produktu, paginacja rekordów. Typowy wzorzec to na przykład Math.floor(Math.random() * 10), który daje liczby całkowite z zakresu 0–9. Warto też świadomie odróżniać Math.floor od innych metod zaokrąglania: Math.ceil(2.8) zwróci 3, bo zaokrągla „w górę”, a Math.round(2.8) również zwróci 3, bo zaokrągla do najbliższej liczby całkowitej. Z mojego doświadczenia w JS często używa się właśnie floor tam, gdzie ważna jest przewidywalność w dół, np. przy obliczaniu indeksów czy dzieleniu na równe segmenty, żeby nie wyjść poza zakres. Warto też pamiętać, że Math.floor działa poprawnie również dla liczb ujemnych, ale tam „w dół” oznacza w kierunku −∞, więc Math.floor(−2.8) da −3, co czasem potrafi zaskoczyć, jeśli ktoś myśli tylko o „obcięciu” części po przecinku.

Pytanie 8

W języku CSS wprowadzono poniższe formatowanie:

p > i { color: blue; }
Oznacza to, że tekst w kolorze niebieskim będzie zapisany:
A. cały tekst akapitu, bez względu na jego formatowanie
B. pochylony tekst akapitu
C. pogrubiony tekst akapitu
D. cały tekst nagłówków, bez względu na ich formatowanie
W języku CSS selektor > jest używany do stylizowania bezpośrednich potomków danego elementu. W podanym przykładzie p > i oznacza, że reguła CSS będzie zastosowana do elementu i będącego bezpośrednim dzieckiem elementu p. To oznacza, że tylko tekst zapisany w tagu i wewnątrz paragrafu p będzie miał kolor niebieski. Jest to powszechnie stosowane podejście do precyzyjnego stylizowania elementów na stronach internetowych, z zachowaniem struktury dokumentu HTML. Takie rozwiązanie pozwala na lepszą kontrolę nad wyglądem i prezentacją dokumentu, co jest istotne przy tworzeniu responsywnych i estetycznych stron. Praktyczne zastosowanie tego stylu można zobaczyć w przypadku, gdy chcemy wyróżnić pewne frazy w paragrafie, na przykład cytaty lub terminy. Warto pamiętać, że używanie selektorów potomstwa poprawia czytelność i efektywność kodu CSS, co jest dobrą praktyką w profesjonalnym kodowaniu frontendowym. Zachowanie spójności i przejrzystości stylów jest kluczowe w większych projektach, gdzie wiele osób pracuje nad kodem.

Pytanie 9

Przedstawiona funkcja napisana w kodzie JavaScript ma na celu:

function oblicz(a, n)
{
    wynik = 1;
    for(i = 0; i < n; i++)
        wynik *= a;
    return (wynik);
}
A. wpisać kolejne liczby od a do n
B. wpisać wyniki mnożenia a przez n
C. zwrócić iloczyn kolejnych liczb od 1 do a
D. zwrócić wynik potęgowania a^n
Funkcja w kodzie JavaScript przedstawionym w pytaniu ma na celu zwrócenie wyniku potęgowania liczby a do potęgi n. Widzimy to poprzez analizę kodu: rozpoczyna się od inicjalizacji zmiennej wynik z wartością 1, a następnie w pętli for realizowana jest operacja mnożenia wyniku przez a dokładnie n razy. W ten sposób wynik = wynik * a jest wykonywane iteracyjnie, co oznacza że a jest mnożone przez siebie n razy. Taka operacja jest definicją potęgowania: a do potęgi n oznacza a mnożone n-krotnie. Tego rodzaju funkcje są fundamentalne w programowaniu, szczególnie w kontekście matematycznych obliczeń czy symulacji wymagających wielokrotnych potęgowań, np. w zastosowaniach naukowych i inżynieryjnych. Dobrą praktyką jest również optymalizacja tego typu funkcji używając wbudowanych metod jak Math.pow w JavaScript, co zwiększa czytelność i efektywność kodu. Rozumienie potęgowania jest kluczowe w algorytmach opartych na teorii liczb, kryptografii czy w grafice komputerowej, gdzie operacje te mogą być wysoce złożone i wymagają szczególnej optymalizacji.

Pytanie 10

Które z formatowań nie jest wyrażone w języku CSS?

Ilustracja do pytania
A. Formatowanie 2
B. Formatowanie 4
C. Formatowanie 3
D. Formatowanie 1
Wybrałeś Formatowanie 3 i to jest zgodne z ideą pytania, bo właśnie tam zastosowano atrybut HTML `bgcolor`, który nie korzysta z mechanizmu CSS. W tym fragmencie mamy zapis `<body bgcolor="yellow">`. To jest tzw. prezentacyjne rozszerzenie HTML, które było popularne w bardzo starych wersjach specyfikacji (HTML 3.2, wczesne 4.0), ale obecnie jest traktowane jako przestarzałe i niezalecane (deprecated). Kolor tła jest tu definiowany bezpośrednio w znaczniku HTML, a nie w osobnym arkuszu stylów ani nawet w atrybucie `style`. Z punktu widzenia dzisiejszych standardów W3C i dobrych praktyk front‑endowych, formatowanie wyglądu powinno być przeniesione do CSS. W pozostałych formatach użyto już języka CSS, tylko w różnych miejscach. Formatowanie 1 wykorzystuje styl wbudowany w dokument w sekcji `<style>...</style>` w pliku HTML. Taki kod jest jak najbardziej CSS: selektor `body` i deklaracja `background-color: yellow;`. Formatowanie 2 przenosi ten sam zapis do zewnętrznego arkusza stylów, np. `formatowanie.css`. To jest obecnie uznawane za najbardziej eleganckie i skalowalne rozwiązanie, bo rozdziela strukturę (HTML) od prezentacji (CSS). Formatowanie 4 używa atrybutu `style` wewnątrz znacznika `<body>`: `style="background-color: yellow;"`. W środku atrybutu też znajduje się pełnoprawny kod CSS, tylko zapisany inline. Technicznie jest to CSS, choć z mojego doświadczenia warto go używać raczej oszczędnie, np. do szybkich testów lub jednostkowych wyjątków. W praktyce, przy tworzeniu nowoczesnych stron WWW, wszystkie ustawienia kolorów, marginesów, czcionek itd. trzymamy w arkuszach stylów. Atrybuty typu `bgcolor`, `align`, `font` i podobne są uznawane za złą praktykę, bo mieszają zawartość z prezentacją i utrudniają późniejszą modyfikację wyglądu. Dlatego poprawna odpowiedź pokazuje właśnie przykład starego, nie‑CSS‑owego formatowania.

Pytanie 11

Przedstawiono kod tabeli 3×2. Jaką modyfikację należy wprowadzić w drugim wierszu, aby tabela wyglądała jak na obrazie z niewidocznym wierszem?

<table>
  <tr>
    <td style="border: solid 1px;">Komórka 1</td>
    <td style="border: solid 1px;">Komórka 2</td>
  </tr>
  <tr>
    <td style="border: solid 1px;">Komórka 3</td>
    <td style="border: solid 1px;">Komórka 4</td>
  </tr>
  <tr>
    <td style="border: solid 1px;">Komórka 5</td>
    <td style="border: solid 1px;">Komórka 6</td>
  </tr>
</table>
Komórka 1Komórka 2
Komórka 3Komórka 4
Komórka 5Komórka 6
A. <tr style="visibility: hidden">
B. <tr style="display: table-cell">
C. <tr style="display: none">
D. <tr style="clear: none">
Wybrana odpowiedź jest niepoprawna, ale nie martw się, to jest okazja do nauki. Jeśli chcesz ukryć element na stronie, ale zachować jego miejsce w układzie, powinieneś użyć właściwości CSS 'visibility: hidden'. Takie podejście jest zgodne z dobrymi praktykami w tworzeniu stron internetowych. Inne opcje, takie jak 'display: none', 'display: table-cell' i 'clear: none' nie są odpowiednie w tym kontekście. 'display: none' całkowicie usuwa element z układu strony, co powoduje przesunięcie pozostałych elementów, aby zapełnić puste miejsce. 'display: table-cell' jest właściwością, która pozwala elementowi zachowywać się jak komórka tabeli, co nie ma tutaj zastosowania, gdyż chcemy ukryć cały wiersz, a nie pojedynczą komórkę. 'clear: none' jest właściwością używaną do kontroli przepływu elementów w stosunku do elementów z lewej lub prawej strony, ale nie ma wpływu na ukrywanie elementów. Dobra praktyka polega na zrozumieniu i właściwym stosowaniu różnych właściwości CSS, aby uzyskać zamierzony efekt na stronie.

Pytanie 12

Jaka linia w języku HTML wskazuje kodowanie znaków używane w dokumencie?

A. <meta encoding="UTF-8">
B. <charset="UTF-8">
C. <encoding="UTF-8">
D. <meta charset="UTF-8">
Zapis <meta charset="UTF-8"> jest poprawną deklaracją kodowania znaków w dokumencie HTML, ponieważ jest zgodny z aktualnymi standardami W3C. Element <meta> powinien znajdować się w sekcji <head> dokumentu HTML i pozwala przeglądarkom na właściwe interpretowanie znaków w treści strony. Kodowanie UTF-8 jest szeroko stosowane, ponieważ obsługuje wszystkie znaki w standardzie Unicode, co czyni go idealnym dla aplikacji wielojęzycznych. Użycie poprawnego kodowania jest kluczowe, aby uniknąć problemów z wyświetlaniem tekstu, takich jak błędne znaki lub krzaki, które pojawiają się, gdy przeglądarka nie wie, jak zinterpretować dane. Przykładowo, jeżeli mamy stronę internetową w kilku językach, użycie UTF-8 zapewnia, że znaki diakrytyczne w języku polskim, czeskim czy niemieckim będą poprawnie wyświetlane. Warto również pamiętać, aby zawsze umieszczać tę deklarację jako pierwszą w sekcji <head>, aby zapewnić, że przeglądarka prawidłowo zinterpretuje wszystkie inne elementy. W kontekście SEO oraz dostępności, poprawne kodowanie jest istotne, ponieważ wpływa na indeksowanie treści przez wyszukiwarki oraz ich prezentację dla użytkowników.

Pytanie 13

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

A. będzie pisał kod bez odpowiednich wcięć
B. nie umieści średnika po wyrażeniu w instrukcji if, jeśli po nim występuje sekcja else
C. będzie definiował zmienne w obrębie warunku
D. pobierze wartość z formularza, w którym pole input nie zostało wypełnione
Istnieje kilka mitów dotyczących składni PHP, które mogą prowadzić do błędnych wniosków. Wcięcia w kodzie PHP nie mają wpływu na wykonanie kodu, ponieważ PHP nie jest językiem, który wymaga stosowania wcięć w celu zdefiniowania bloków kodu. Wcięcia są stosowane dla czytelności kodu i organizacji, ale nie mają wpływu na jego działanie. Kolejnym powszechnym błędnym przekonaniem jest to, że brak średnika po instrukcji 'if' z sekcją 'else' jest jedynym problemem. Jednakże, PHP nie zgłasza błędu, jeśli programista deklaruje zmienne wewnątrz warunku; jest to dozwolone i często stosowane w praktyce. Przykład: 'if ($a > 10) { $b = $a; }' jest poprawny i będzie działał. Ostatni mit dotyczy błędów związanych z pobieraniem wartości z formularza. Jeśli pole input nie zostało wypełnione, PHP po prostu zwróci wartość null lub pusty ciąg, co jest zupełnie poprawne w kontekście działania skryptu. Nie prowadzi to do błędów wykonawczych, a programista powinien obsłużyć takie przypadki zgodnie z logiką aplikacji.

Pytanie 14

Na podstawie jakiego parametru oraz z ilu tabel będą zwrócone wiersze w wyniku podanego zapytania?

SELECT * FROM producent, hurtownia, sklep, serwis WHERE
producent.nr_id = hurtownia.nr_id AND
producent.wyrob_id = serwis.wyrob_id AND
hurtownia.nr_id = sklep.nr_id AND
sklep.nr_id = serwis.nr_id AND
producent.nr_id = 1;
A. Na podstawie parametru nr_id dla wszystkich tabel
B. Na podstawie parametru wyrob_id tylko dla trzech tabel
C. Na podstawie parametru wyrob_id tylko dla trzech tabel
D. Na podstawie parametru nr_id tylko dla trzech tabel
Analizując błędne odpowiedzi można zauważyć że kluczowym aspektem w tym pytaniu jest zrozumienie zastosowania parametrów w klauzuli WHERE Odpowiedzi sugerujące selekcję według parametru wyrob_id są nieprawidłowe ponieważ w klauzuli WHERE dominującą rolę odgrywa parametr nr_id choć występuje tam także warunek dotyczący wyrob_id to jednak główną funkcją jest połączenie tabel według nr_id Jest to typowy błąd wynikający z nieuwzględnienia hierarchii oraz sposobu połączenia tabel w relacyjnych bazach danych Ponadto niektóre odpowiedzi ograniczają się wyłącznie do trzech tabel co również jest błędne ponieważ zapytanie obejmuje wszystkie cztery wymienione tabele producent hurtownia sklep i serwis Koncentracja na jednej lub dwóch tabelach często bierze się z pominięcia kluczowych związków logicznych między tabelami jak w przypadku odpowiedzi które ograniczają scope do mniejszej liczby tabel niż rzeczywiście obejmuje zapytanie Kluczową umiejętnością jest zrozumienie jak różne parametry mogą wpływać na wybór danych zwłaszcza w kontekście tworzenia złożonych zapytań SQL gdzie przemyślane zastosowanie klauzul jest niezbędne do efektywnego zarządzania danymi i unikania niepoprawnych interpretacji wyników Właściwe zrozumienie jak parametry takie jak nr_id czy wyrob_id funkcjonują w zapytaniach pozwala na ich poprawne i skuteczne zastosowanie co jest kluczowe w profesjonalnym podejściu do pracy z bazami danych

Pytanie 15

Które dane zostaną wybrane w wyniku działania kwerendy na przedstawionych rekordach?

SELECT id FROM samochody WHERE rocznik LIKE "2%4";
idmarkamodelrocznik
1FiatPunto2016
2FiatPunto2002
3FiatPunto2007
4OpelCorsa2016
5OpelAstra2003
6ToyotaCorolla2016
7ToyotaCorolla2014
8ToyotaYaris2004
A. Identyfikatory równe 7 oraz 8.
B. Tylko identyfikator równy 8.
C. Wszystkie identyfikatory.
D. Brak danych.
Prawidłowa odpowiedź wskazuje, że w wyniku działania kwerendy zostaną wybrane rekordy z id równymi 7 oraz 8, ponieważ oba te roczniki zaczynają się cyfrą 2 i kończą na 4, co spełnia warunek LIKE '2%4'. W SQL operator LIKE umożliwia wyszukiwanie wzorców w danych tekstowych i jest bardzo użyteczny w sytuacjach, gdy nieznana jest pełna wartość, a tylko jej część. W praktycznych aplikacjach, takich jak systemy zarządzania bazami danych, często stosuje się ten operator do filtrowania wyników na podstawie niepełnych informacji. Na przykład, jeżeli chciałbyś zidentyfikować wszystkie pojazdy z określonym rocznikiem, użycie LIKE może szybko zawęzić wyniki. Używanie tego operatora w połączeniu z innymi funkcjami SQL, jak GROUP BY czy JOIN, pozwala na kompozycję bardziej złożonych zapytań, co jest standardem w analityce danych.

Pytanie 16

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

A. kwerendy
B. kopii
C. formularza
D. kolumny
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 17

Bitmapa stanowi obraz

A. rastrowym
B. interakcyjnym
C. wektorowym
D. analogowym
Bitmapa, znana również jako obraz rastrowy, jest zbiorem pikseli, gdzie każdy piksel ma przypisaną określoną wartość koloru. Tego rodzaju obrazy są powszechnie stosowane w grafice komputerowej i fotografii cyfrowej. Bitmapy wyróżniają się tym, że ich rozdzielczość jest stała, co oznacza, że powiększanie takiego obrazu skutkuje utratą jakości i pojawieniem się rozmycia. W przeciwieństwie do grafiki wektorowej, która opiera się na matematycznych równaniach i jest skalowalna bez utraty jakości, bitmapy są ograniczone do rozdzielczości, w jakiej zostały utworzone. Przykładem formatów obrazów rastrowych są JPEG, PNG, BMP oraz GIF. Praktyczne zastosowanie bitmap obejmuje edycję zdjęć przy użyciu oprogramowania, takiego jak Adobe Photoshop, gdzie możliwe jest manipulowanie każdym pikselem, co daje dużą swobodę w zakresie tworzenia obrazów. Standardy dotyczące obrazów rastrowych, takie jak sRGB czy Adobe RGB, definiują przestrzenie kolorów, co jest kluczowe dla zapewnienia spójności kolorystycznej w różnych urządzeniach wyświetlających.

Pytanie 18

Jakie będzie działanie po naciśnięciu przycisku oznaczonego jako "niebieski", który uruchamia podany kod JavaScript?

<p id="para1">Przykładowy tekst</p><p> i skrypt</p>
<button onClick="changeColor('blue');">niebieski</button>

<script type="text/javascript">
function changeColor(newColor)
{
var elem = document.getElementById("para1");
elem.style.color = newColor;
}
</script>
A. Zmiana koloru tekstu "Przykładowy tekst i skrypt" na niebieski
B. Zmiana barwy przycisku na niebieski
C. Zmiana koloru tekstu "i skrypt" na niebieski
D. Zmiana koloru tekstu "Przykładowy tekst" na niebieski
Kod JavaScript przedstawiony w pytaniu definiuje funkcję changeColor która przyjmuje jeden argument newColor. Po wywołaniu funkcji przez kliknięcie przycisku funkcja ta używa metody document.getElementById aby pobrać element o identyfikatorze para1. Identyfikator ten jest przypisany do pierwszego elementu paragrafu zawierającego tekst Przykładowy tekst. Następnie w ramach tego elementu zmieniany jest kolor tekstu poprzez przypisanie newColor do właściwości style.color. W omawianym przypadku newColor przyjmuje wartość blue co oznacza że tekst Przykładowy tekst zmieni kolor na niebieski. Warto podkreślić że manipulacja DOM przy użyciu JavaScript jest powszechnie stosowaną techniką w tworzeniu dynamicznych interfejsów użytkownika. Używanie metod takich jak getElementById jest standardem ze względu na ich prostotę oraz efektywność w selekcji elementów HTML. W praktycznych zastosowaniach warto również pamiętać o zgodności ze standardami W3C oraz o możliwościach rozszerzenia za pomocą bibliotek takich jak jQuery które oferują jeszcze bardziej zaawansowane opcje manipulacji DOM.

Pytanie 19

$z = mysqli_query($db, "SELECT ulica, miasto, kod_pocztowy FROM adresy");
$a = mysqli_fetch_row($z);
echo "$a[1], $a[2]";
W języku PHP zapisano fragment kodu działającego na bazie MySQL. Jego zadaniem jest wypisanie
A. ulicy i miasta ze wszystkich zwróconych rekordów
B. ulicy i miasta z pierwszego zwróconego rekordu
C. miasta i kodu pocztowego ze wszystkich zwróconych rekordów
D. miasta i kodu pocztowego z pierwszego zwróconego rekordu
Kod PHP używa funkcji mysqli_query do wykonania zapytania SELECT, które pobiera kolumny ulica miasto i kod_pocztowy z tabeli adresy. Następnie funkcja mysqli_fetch_row pobiera pierwszy rekord wyników jako tablicę. Elementy tej tablicy są indeksowane od 0 dlatego $a[1] odnosi się do drugiego elementu czyli kolumny miasto a $a[2] do trzeciego elementu czyli kolumny kod_pocztowy. Funkcja echo wypisuje te dwie wartości co oznacza że kod faktycznie wyświetla miasto i kod pocztowy z pierwszego zwróconego rekordu. W praktyce takie podejście jest używane do szybkiego dostępu do danych z bazy jednak warto pamiętać o zabezpieczeniach takich jak filtrowanie danych wejściowych czy użycie przygotowanych zapytań aby chronić się przed SQL Injection. Dobre praktyki obejmują także obsługę błędów połączenia z bazą oraz poprawne zarządzanie zasobami takimi jak zamykanie połączenia po zakończeniu operacji na bazie danych. Używanie indeksów liczbowych może być mniej czytelne dlatego w bardziej złożonych aplikacjach zaleca się stosowanie mysqli_fetch_assoc dla łatwiejszego dostępu przez nazwy kolumn.

Pytanie 20

W bazie danych MYSQL znajduje się tabela z programami komputerowymi, która ma pola: nazwa, producent, rokWydania. Jak należy sformułować kwerendę SELECT, aby uzyskać wszystkie nazwy producentów bez powtórzeń?

A. SELECT producent FROM programy WHERE producent NOT DUPLICATE;
B. SELECT DISTINCT producent FROM programy;
C. SELECT UNIQUE producent FROM programy;
D. SELECT producent FROM programy WHERE UNIQUE;
Odpowiedź 'SELECT DISTINCT producent FROM programy;' jest w porządku. To dlatego, że kluczowe słowo DISTINCT działa tak, że zwraca tylko unikalne wartości z kolumny 'producent' w tabeli 'programy'. Jak są duże zbiory danych, to użycie DISTINCT naprawdę się przydaje, bo pozwala pozbyć się duplikatów i to później ułatwia analizę danych. Na przykład, kiedy w tabeli jest mnóstwo rekordów dla tego samego producenta, to DISTINCT zwróci tylko jeden wpis dla każdego z nich. Wiesz, to taka dobra praktyka w SQL, bo im mniej danych musisz przetwarzać, tym lepsza wydajność. I, co ciekawe, użycie DISTINCT nie obniża wydajności zapytania tak bardzo, jak niektórzy mogą myśleć, szczególnie w dobrze zindeksowanych tabelach. Warto to mieć na uwadze.

Pytanie 21

Wskaż zapytanie, w którym dane są uporządkowane.

A. SELECT DISTINCT produkt, cena FROM artykuly;
B. SELECT nazwisko FROM firma WHERE pensja > 2000 LIMIT 10;
C. SELECT AVG(ocena) FROM uczniowie WHERE klasa = 2;
D. SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;
Odpowiedź wskazująca na zapytanie "SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;" jest prawidłowa, ponieważ zawiera klauzulę ORDER BY, która służy do sortowania rekordów w wynikach zapytania. W tym przypadku dane są sortowane według kolumny 'wiek', co pozwala na uzyskanie uporządkowanej listy mieszkańców, którzy mają więcej niż 18 lat. Sortowanie danych jest kluczowym aspektem w zarządzaniu bazami danych, umożliwiającym łatwiejsze wyszukiwanie oraz analizę informacji. Przykładem zastosowania może być generowanie raportów, gdzie istotne jest uporządkowanie danych, na przykład według wieku, aby zobaczyć, jak rozkłada się wiek mieszkańców w danej grupie. Dodatkowo, stosowanie sortowania zgodnie z przyjętymi standardami SQL zwiększa czytelność oraz efektywność zapytań, a także ułatwia rozwiązywanie problemów związanych z przetwarzaniem danych.

Pytanie 22

Aby stworzyć relację typu jeden do wielu, w tabeli reprezentującej stronę "wiele", konieczne jest zdefiniowanie

A. klucza sztucznego odnoszącego się do kluczy podstawowych obu tabel
B. klucza obcego wskazującego na klucz podstawowy tabeli reprezentującej stronę "jeden"
C. klucza podstawowego odnoszącego się do klucza podstawowego tabeli po stronie "jeden"
D. klucza obcego odnoszącego się do klucza obcego tabeli reprezentującej stronę "jeden"
Aby utworzyć relację jeden do wielu w bazach danych, kluczowym elementem jest właściwe zdefiniowanie klucza obcego. Klucz obcy w tabeli po stronie 'wiele' musi wskazywać na klucz podstawowy tabeli po stronie 'jeden'. Taki układ pozwala na powiązanie wielu rekordów z jednego tabeli z jednym rekordem w drugiej tabeli. Na przykład, w systemie zarządzania zamówieniami, tabela 'Klienci' może mieć klucz podstawowy 'ID_Klienta', podczas gdy tabela 'Zamówienia' może mieć klucz obcy 'ID_Klienta', który odnosi się do 'ID_Klienta' w tabeli 'Klienci'. Dzięki temu jedno ID klienta może być powiązane z wieloma zamówieniami. W praktyce, implementacja relacji jeden do wielu jest niezwykle przydatna w normalizacji bazy danych, co pomaga zminimalizować redundancję i poprawić integralność danych. Zgodnie z normami ACID, takie powiązania zapewniają, że operacje na danych są atomowe, spójne, izolowane i trwałe, co jest kluczowe dla niezawodności baz danych.

Pytanie 23

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

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

Pytanie 24

Jak nazywa się proces, w trakcie którego identyfikuje się oraz eliminuje błędy w kodzie źródłowym aplikacji?

A. Kompilacja
B. Normalizacja
C. Debugowanie
D. standaryzacja
Debugowanie to proces, który polega na identyfikacji, analizie i usuwaniu błędów w kodzie źródłowym programów. Jest to kluczowy etap w cyklu życia oprogramowania, który zapewnia, że aplikacje działają zgodnie z zamierzonymi specyfikacjami. W praktyce debugowanie może obejmować różnorodne techniki, takie jak używanie narzędzi do analizy statycznej, wykonanie testów jednostkowych oraz korzystanie z debuggerów, które pozwalają na śledzenie wykonania kodu w czasie rzeczywistym. Dobre praktyki debugowania obejmują dokumentowanie napotkanych błędów, co może ułatwić ich ponowne wystąpienie oraz szybsze ich usunięcie w przyszłości. Debugowanie nie tylko poprawia jakość kodu, ale również ułatwia rozwój i utrzymanie oprogramowania, co jest zgodne z zasadami Agile i DevOps, gdzie ciągła integracja i dostarczanie są kluczowymi elementami procesu. W ten sposób debugowanie stanowi integralną część programowania, która wpływa na wydajność i stabilność tworzonych aplikacji.

Pytanie 25

W języku JavaScript stworzono zmienną i, która będzie przechowywać wynik dzielenia równy 1, to

A. var i=3/2
B. var i=parseInt(3/2)
C. var i=Number(3/2)
D. var i=parseFloat(3/2)
Wybór 'var i=parseInt(3/2);' jest właściwy, ponieważ funkcja parseInt służy do konwersji wartości liczbowych na liczby całkowite. W tym przypadku, wyrażenie 3/2 zwraca wartość 1.5, a funkcja parseInt zamienia tę wartość na 1, co jest zgodne z oczekiwanym wynikiem. Warto zauważyć, że parseInt zawsze zwraca najbliższą liczbę całkowitą, zaokrąglając w dół, co czyni ją idealnym narzędziem do realizacji tego celu. W JavaScript istnieje wiele sposobów na konwersję wartości liczbowych, a parseInt jest jednym z najczęściej używanych, gdyż pozwala na przetwarzanie tekstów i liczb w zrozumiały sposób. Przykładowo, jeśli mamy stringa '10.5', użycie parseInt('10.5') da wynik 10. Odniesienie do standardów JavaScript w kontekście konwersji typów można znaleźć w dokumentacji ECMAScript, która definiuje zasady działania funkcji konwertujących. Dobrą praktyką jest również zwrócenie uwagi na radzenie sobie z typami danych w JavaScript, aby uniknąć nieporozumień w przyszłości.

Pytanie 26

Wskaż stwierdzenie, które nie jest prawdziwe dla następującej definicji funkcji w języku C++?

void zamien( float &x, float &y){
    float tmp;
    tmp = x;
    x = y;
    y = tmp;
}
A. Funkcja posiada dwa parametry.
B. Funkcja nie zwraca wartości.
C. Funkcja odwołuje się do parametrów przez referencję.
D. Funkcja zwraca wartość.
Dobrze zrobione! Wybrałeś właściwą odpowiedź, która pasuje do tego, co mamy w kodzie funkcji w C++. Mówimy tu o funkcji typu 'void', co oznacza, że nie zwraca żadnej wartości. W C++ 'void' oznacza, że nie ma zwracanego typu, ale to nie znaczy, że taka funkcja nic nie robi. Ona może wykonać różne operacje, ale na koniec nie zwraca żadnego wyniku. To jest dość istotne, bo w programowaniu często z takich funkcji korzystamy, kiedy chcemy coś zmienić, a nie potrzebujemy nowej wartości. Fajnie, że zauważyłeś, że ta funkcja ma dwa parametry typu float, które są przekazywane przez referencję. Dzięki temu możemy zmieniać wartości tych zmiennych w funkcji, co jest przydatne w wielu sytuacjach.

Pytanie 27

Grafika, która ma być pokazana na stronie, powinna mieć transparentne tło. Podaj format pliku graficznego, w którym należy go zapisać.

A. PNG
B. JPEG
C. CDR
D. BMP
Format PNG (Portable Network Graphics) jest idealnym rozwiązaniem dla obrazów z przezroczystym tłem, ponieważ obsługuje kanał alpha, który umożliwia definiowanie przezroczystości poszczególnych pikseli. Dzięki temu, gdy obraz PNG jest umieszczany na różnym tle, zachowuje naturalny wygląd i nie wymaga dodatkowego dostosowywania, co jest szczególnie ważne w projektach graficznych, które wymagają elastyczności w prezentacji. Przykładowe zastosowania PNG obejmują ikony, logo oraz wszelkie grafiki, które muszą być nałożone na inne elementy wizualne bez widocznych krawędzi czy tła. W branży grafiki komputerowej oraz web designu, PNG stał się standardem dla materiałów wymagających wysokiej jakości obrazu z zachowaniem przezroczystości. Dobrą praktyką jest również stosowanie PNG w przypadku grafik, które zawierają tekst, ponieważ format ten nie wprowadza strat jakości, co może mieć miejsce w przypadku innych formatów kompresji. Warto również zaznaczyć, że PNG nie traci jakości przy wielokrotnym zapisywaniu, co czyni go preferowanym wyborem tam, gdzie jakość jest kluczowa.

Pytanie 28

Tabela filmy zawiera klucz główny id oraz klucz obcy rezyserID, natomiast tabela rezyserzy ma klucz główny id. Obydwie tabele są połączone relacją jeden do wielu, gdzie strona rezyserzy odnosi się do strony filmy. Jak należy zapisać kwerendę SELECT, aby połączyć tabele filmy i rezyserzy?

A. ... filmy JOIN rezyserzy ON filmy.id = rezyserzy.filmyID ...
B. ... filmy JOIN rezyserzy ON filmy.rezyserID = rezyserzy.filmyID ...
C. ... filmy JOIN rezyserzy ON filmy.rezyserID = rezyserzy.id ...
D. ... filmy JOIN rezyserzy ON filmy.id = rezyserzy.id ...
Odpowiedź, która wskazuje na połączenie tabeli filmy z tabelą rezyserzy za pomocą klauzuli JOIN, z warunkiem ON filmy.rezyserID = rezyserzy.id, jest prawidłowa, ponieważ bezpośrednio odzwierciedla relację pomiędzy tymi dwiema tabelami. Klucz obcy rezyserID w tabeli filmy wskazuje na klucz główny id w tabeli rezyserzy. W związku z tym, aby prawidłowo połączyć te tabele w kwerendzie SELECT, musimy użyć tego klucza obcego w warunku połączenia. Przykładowo, w realnych zastosowaniach chcesz uzyskać informacje o filmach oraz ich reżyserach; więc pisząc zapytanie, możesz z łatwością uzyskać dane, takie jak tytuł filmu i imię reżysera, co jest kluczowe w systemach zarządzania bazą danych. Dobre praktyki wskazują, że zawsze należy używać poprawnych kluczy do łączenia tabel, aby uzyskać wiarygodne i dokładne wyniki, co jest fundamentalne w projektowaniu baz danych i tworzeniu zapytań SQL.

Pytanie 29

Klucz obcy w tabeli jest ustanawiany w celu

A. opracować formularz do wprowadzania danych do tabeli
B. określić relację 1..n powiązującą go z kluczem głównym innej tabeli
C. wiązać go z innymi kluczami obcymi w tabeli
D. zapewnić jednoznaczną identyfikację rekordu w tabeli
Klucz obcy (foreign key) w bazach danych jest fundamentalnym elementem w modelowaniu relacji pomiędzy tabelami. Jego podstawowym celem jest zdefiniowanie relacji 1..n pomiędzy tabelą, w której się znajduje, a kluczem głównym innej tabeli. Oznacza to, że jeden rekord w tabeli, która zawiera klucz główny, może być powiązany z wieloma rekordami w tabeli z kluczem obcym. Na przykład, w systemie zarządzania zamówieniami, tabela 'Klienci' może mieć klucz główny 'ID_klienta', a tabela 'Zamówienia' może zawierać klucz obcy 'ID_klienta', co pozwala na powiązanie wielu zamówień z jednym klientem. To nie tylko ułatwia strukturalne organizowanie danych, ale również wspiera integralność referencyjną; czyli zapewnia, że każdy wpis w tabeli 'Zamówienia' odnosi się do istniejącego klienta. W praktyce, dobre praktyki projektowania baz danych zalecają używanie kluczy obcych do zachowania spójności danych i ułatwienia ich analizy, co odzwierciedla większą efektywność w strumieniu pracy oraz w raportowaniu.

Pytanie 30

Jakie właściwości stylu CSS poprawnie definiują dla akapitu czcionkę: Arial; jej wielkość: 16 pt; oraz styl czcionki: kursywa?

A. p {font-style: Arial; font-size: 16pt; font-variant: normal;}
B. p {font-family: Arial; font-size: 16px; font-variant: normal;}
C. p {font-family: Arial; font-size: 16pt; font-style: italic;}
D. p {font-style: Arial; size: 16px; font-weight: normal;}
Odpowiedź p {font-family: Arial; font-size: 16pt; font-style: italic;} jest poprawna, ponieważ zawiera wszystkie istotne właściwości, które definiują krój, rozmiar oraz styl czcionki dla akapitu. Właściwość font-family definiuje krój czcionki, w tym przypadku Arial, co jest zgodne z wymaganiami. Właściwość font-size ustawia rozmiar czcionki na 16 punktów (pt), co jest standardowym sposobem definiowania wielkości czcionki w kontekście typografii. Ponadto właściwość font-style została poprawnie użyta do określenia stylu pochylenia czcionki, co w CSS jest reprezentowane przez wartość italic. Te właściwości są zgodne z dobrymi praktykami w CSS, które zalecają precyzyjne definiowanie czcionek, aby zapewnić spójność w prezentacji tekstu. Przykładowo, stosując ten styl w dokumencie HTML, uzyskasz wyraźnie wyodrębniony akapit, który będzie atrakcyjny wizualnie i czytelny. Zastosowanie odpowiednich jednostek, takich jak pt dla rozmiaru czcionki, jest również istotne dla zapewnienia odpowiedniej skalowalności na różnych urządzeniach.

Pytanie 31

Zasada działania algorytmów zachłannych polega na

A. wybieraniu rozwiązań, które na danym etapie wydają się najbardziej korzystne
B. przeszukiwaniu danych do momentu znalezienia rozwiązania
C. dzieleniu problemu na mniejsze podproblemy, aby uzyskać łatwiejsze do rozwiązania zadania
D. odwołaniu się do funkcji lub definicji we własnym zakresie
Metoda zachłanna jest strategią algorytmiczną, która polega na podejmowaniu decyzji, które w danym momencie wydają się najlepsze, bez rozważania długofalowych konsekwencji. Ta technika jest szczególnie przydatna w rozwiązywaniu problemów optymalizacyjnych, gdzie celem jest znalezienie jak najlepszego rozwiązania przy minimalnym nakładzie obliczeniowym. Przykładem zastosowania metody zachłannej jest algorytm Kruskala lub Prim'a do znajdowania minimalnego drzewa rozpinającego w grafie. W obu przypadkach kluczowym krokiem jest wybór krawędzi, które minimalizują wagę, co prowadzi do optymalnego rozwiązania. W praktyce, metoda ta jest szeroko stosowana w problemach takich jak plecak, zadania związane z przydzielaniem zasobów, czy algorytmy kompresji danych. Ważne jest, aby pamiętać, że metoda zachłanna nie zawsze prowadzi do globalnego optimum, ale w wielu kontekstach jest wydajna i prosta do zaimplementowania. W związku z tym, w branży programistycznej, wykorzystanie metod zachłannych jest zgodne z dobrymi praktykami inżynierii oprogramowania.

Pytanie 32

Jak należy prawidłowo udokumentować wzorcowanie pola nazwa we fragmencie kodu JavaScript?

function validateForm(Form)
{
reg=/^\[1-9\]*[A-ZŻŹĘĄĆŚÓŁŃ]{1}[a-zżźćńółęąś]{2,}$/;
wyn = Form.nazwa.value.match(reg);
if (wyn == null) {
    alert("Proszę podać poprawną nazwę");
    return false;
}
return true;
}
A. /* Pole nazwa powinno składać się w kolejności: z ciągu cyfr (z wyłączeniem 0), następnie dużej litery i ciągu małych liter. */
B. /* Pole nazwa może składać się z dowolnego ciągu cyfr (z wyłączeniem 0), małych i dużych liter. */
C. /* Pole nazwa musi składać się w kolejności: z ciągu cyfr (z wyłączeniem 0), następnie dużej litery i dwóch małych liter. */
D. /* Pole nazwa może zawierać dowolny ciąg cyfr (z wyłączeniem 0), następnie musi zawierać dużą literę i ciąg minimum dwóch małych liter. */
Odpowiedź druga jest poprawna, ponieważ dokładnie opisuje wzorzec walidacji użyty w kodzie JavaScript. Wyrażenie regularne określa, że pole nazwa może zaczynać się od dowolnej liczby cyfr od 1 do 9, co oznacza, że cyfra 0 jest wykluczona, co jest zgodne z opisem. Następnie musi wystąpić jedna duża litera, co jest również zgodne z wymogiem wzorca. Kolejnym wymogiem jest wystąpienie co najmniej dwóch małych liter, co także jest zgodne z przedstawionym wzorcem. Poprawna i precyzyjna dokumentacja kodu ma kluczowe znaczenie dla utrzymania oraz dalszego rozwoju oprogramowania. Dobrze udokumentowane wyrażenia regularne pozwalają na lepsze zrozumienie logiki walidacji i ułatwiają pracę zespołom deweloperskim. Warto również zauważyć, że stosowanie wyrażeń regularnych w walidacji danych wejściowych jest standardową praktyką w branży IT, szczególnie w aplikacjach webowych, gdzie dane użytkowników wymagają szczegółowego sprawdzania pod kątem poprawności i bezpieczeństwa. Dzięki temu można uniknąć potencjalnych błędów i ataków wynikających z niewłaściwie przetworzonych danych.

Pytanie 33

W HTML atrybut alt w tagu img służy do określenia

A. lokalizacji i nazwy pliku źródłowego obrazu
B. właściwości grafiki, takie jak rozmiar, ramka, wyrównanie
C. napisu, który będzie widoczny pod obrazem
D. tekstu, który pojawi się, gdy obrazek nie może być załadowany
Odpowiedź, która wskazuje, że atrybut alt znacznika img w języku HTML definiuje tekst, który będzie wyświetlony, jeśli grafika nie może być poprawnie załadowana, jest całkowicie poprawna. Atrybut alt jest kluczowym elementem dostępności w sieci, ponieważ dostarcza użytkownikom alternatywne informacje o zawartości obrazu, co jest szczególnie ważne dla osób korzystających z czytników ekranu. Na przykład, jeśli zdjęcie w artykule nie jest dostępne z powodu problemów z łączem internetowym, atrybut alt zapewnia kontekst, dzięki czemu użytkownik jest informowany o tym, co miało być przedstawione. Dobre praktyki zalecają, aby tekst w atrybucie alt był zwięzły, ale jednocześnie dostarczał wystarczających informacji o obrazie. Warto również zauważyć, że stosowanie atrybutu alt wspiera SEO (optymalizację pod kątem wyszukiwarek), ponieważ wyszukiwarki mogą używać tych informacji do indeksowania treści. Przykład: <img src='example.jpg' alt='Zdjęcie pięknego krajobrazu górskiego'>.

Pytanie 34

W znaczniku <meta ...> w sekcji <meta ...> na stronie internetowej nie zamieszcza się informacji o

A. typie dokumentu
B. kodowaniu
C. automatycznym odświeżaniu
D. autorze
W znaczniku <meta> na stronach WWW umieszczane są różnorodne informacje, które pomagają w optymalizacji strony dla wyszukiwarek oraz w poprawie jej użyteczności. Jednym z elementów, które można umieścić w tym znaczniku, jest opis autora strony, co jest użyteczne w kontekście SEO, gdyż umożliwia przypisanie treści do konkretnej osoby. Innym ważnym elementem jest kodowanie, które wskazuje przeglądarce, jak interpretować znaki na stronie, co jest istotne dla poprawnego wyświetlania treści. Warto również zwrócić uwagę na automatyczne odświeżanie, które można ustawić za pomocą znacznika <meta http-equiv='refresh'>, co jest przydatne w przypadku stron, które wymagają cyklicznej aktualizacji treści. Z drugiej strony, informacja dotycząca typu dokumentu, jak na przykład tekst, HTML, czy XML, nie jest umieszczana w znaczniku <meta>. Zamiast tego, typ dokumentu jest określony w nagłówku HTTP poprzez dyrektywę Content-Type, co jest zgodne z wymaganiami protokołu HTTP i spełnia standardy W3C, które zalecają oddzielać metadane od informacji o typie dokumentu. Dlatego też, umieszczanie informacji o typie dokumentu w znaczniku <meta> jest niepoprawne i niezgodne z przyjętymi normami.

Pytanie 35

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

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

Aby na stronie internetowej umieścić logo z przezroczystym tłem, jaki format powinien być zastosowany?

A. BMP
B. PNG
C. CDR
D. JPG
Format PNG (Portable Network Graphics) jest preferowany do przechowywania obrazów z przezroczystym tłem, co czyni go idealnym wyborem dla logo. Główne zalety PNG to obsługa przezroczystości oraz wysoka jakość grafiki bez utraty danych, dzięki kompresji bezstratnej. W praktyce, kiedy logo jest umieszczane na różnych tłach, przezroczystość pozwala na harmonijne wpasowanie się w otoczenie, co zwiększa estetykę strony. Ponadto, PNG obsługuje różne poziomy przezroczystości (alfa), co daje projektantom więcej możliwości w zakresie efektów wizualnych. Użycie PNG w projektach internetowych jest zgodne z dobrymi praktykami w zakresie tworzenia responsywnych i estetycznych interfejsów, a także zapewnia kompatybilność z większością przeglądarek internetowych. Warto zauważyć, że PNG jest również często stosowany w grafikach wektorowych i ikonach, które wymagają przejrzystości. Korzystając z PNG, projektanci mogą być pewni, że ich grafiki będą wyglądać profesjonalnie na każdej platformie.

Pytanie 37

Które z poniższych stwierdzeń odnosi się prawidłowo do grafiki rastrowej?

A. Obraz zapisywany jest w postaci figur geometrycznych zorganizowanych w układzie współrzędnych
B. Grafika rastrowa nie jest zapisana w formacie WMF (ang. Windows Metafile Format - format metaplików w Windows)
C. Jest to forma przedstawienia obrazu za pomocą siatki pikseli, które są odpowiednio kolorowane w układzie pionowo-poziomym na monitorze, drukarce lub innym urządzeniu wyjściowym
D. W trakcie procesu skalowania, jakość obrazu nie ulega zmianie
Grafika rastrowa to technika reprezentacji obrazów, w której obraz składa się z siatki pikseli. Każdy piksel ma przypisany kolor, co pozwala na precyzyjne odwzorowanie detali i kolorystyki. Taki sposób przedstawienia obrazu znajduje zastosowanie w grafice komputerowej, fotografii cyfrowej oraz w druku. W praktyce, obrazy rastrowe są powszechnie wykorzystywane w programach graficznych, takich jak Adobe Photoshop czy GIMP, gdzie edytuje się poszczególne piksele. Publikacje internetowe, jak także różnorodne formy marketingu wizualnego, opierają się na grafice rastrowej, ponieważ umożliwia ona tworzenie złożonych i bogatych w szczegóły obrazów. Ważnym aspektem grafiki rastrowej jest rozdzielczość, która określa ilość pikseli w obrazie; im wyższa rozdzielczość, tym większa jakość. Wydruki, które zyskują na jakości dzięki zastosowaniu technologii rastrowej, są zgodne z najlepszymi praktykami odnośnie do standardów drukarskich, co umożliwia osiągnięcie wysokiej jakości wydruków. Zrozumienie grafiki rastrowej jest kluczowe dla każdego, kto interesuje się tworzeniem i edytowaniem obrazów w kontekście cyfrowym.

Pytanie 38

Dostosowanie wyglądu witryny do indywidualnych preferencji użytkownika oraz jego identyfikacja w systemie są możliwe dzięki mechanizmowi

A. formularzy
B. cookie
C. obiektów DOM
D. łączenia z bazą
Odpowiedź dotycząca cookies jest dobra. To ważny element, bo dzięki nim można lepiej dopasować serwis do użytkowników. Cookies to takie małe pliki, które przeglądarka zapisuje na naszym urządzeniu. Pozwalają na zbieranie różnych informacji, jak na przykład co użytkownik lubi, co robi na stronie czy jego dane do logowania. Dzięki temu, gdy wracasz na stronę, serwis może sam dostosować, co widzisz, do tego, co robiłeś wcześniej. Przykłady to zapamiętywanie języka, zawartości koszyka w sklepach online czy automatyczne logowanie. Ważne jest, żeby serwisy informowały użytkowników o cookies i prosiły o zgodę, zwłaszcza w kontekście RODO. Znanie tych zasad jest istotne, jeśli myślisz o pracy w tworzeniu aplikacji webowych, bo to pomaga w lepszym zrozumieniu potrzeb użytkowników.

Pytanie 39

Do stworzenia stron internetowych w sposób graficzny należy zastosować

A. oprogramowanie MS Office Picture Manager
B. program do przeglądania stron
C. narzędzie do edycji CSS
D. aplikację typu WYSIWYG
Programy typu WYSIWYG (What You See Is What You Get) to narzędzia, które umożliwiają użytkownikom tworzenie stron internetowych w sposób wizualny, bez konieczności pisania kodu HTML czy CSS. Użytkownik może przeciągać i upuszczać elementy, takie jak tekst, obrazy czy formularze, a program automatycznie generuje odpowiedni kod. Przykładami popularnych programów WYSIWYG są Adobe Dreamweaver oraz Webflow, które posiadają zaawansowane funkcje, takie jak responsywność oraz integrację z systemami zarządzania treścią. W kontekście standardów webowych, programy WYSIWYG często oferują zgodność z aktualnymi wytycznymi, takimi jak HTML5 i CSS3, co pozwala na tworzenie nowoczesnych, atrakcyjnych wizualnie stron internetowych. Dla osób, które nie mają doświadczenia w programowaniu, takie narzędzia są szczególnie cenne, ponieważ umożliwiają łatwe tworzenie profesjonalnych witryn, które mogą być optymalizowane pod kątem SEO, co jest kluczowe w dzisiejszym świecie online. Dzięki programom WYSIWYG, także osoby z ograniczonymi umiejętnościami technicznymi mogą skutecznie tworzyć i edytować swoje strony, co znacznie przyspiesza proces projektowania.

Pytanie 40

Przykład zapytania SQL przedstawia instrukcję:

UPDATE katalog SET katalog.cena = [cena]*1.1;
A. usuwającej
B. dołączającej
C. aktualizującej
D. krzyżowej
Instrukcja SQL przedstawiona w pytaniu używa słowa kluczowego UPDATE co jest charakterystyczne dla kwerend aktualizujących. Komenda ta modyfikuje istniejące dane w tabeli poprawiając je zgodnie z podanymi kryteriami. W tym przykładzie wszystkie wartości w kolumnie cena tabeli katalog są zwiększane o 10 procent co jest typowym zastosowaniem instrukcji aktualizującej. W praktyce takie zmiany są niezbędne w przypadku modyfikacji cen produktów lub aktualizacji informacji biznesowych. Stosowanie kwerend aktualizujących wymaga zachowania szczególnej ostrożności aby nie naruszyć integralności danych. Dobre praktyki obejmują przygotowanie backupu danych przed wykonaniem operacji oraz przetestowanie kwerendy na mniejszym zbiorze danych w celu uniknięcia błędów. Aktualizacja danych to jedna z najczęstszych operacji w systemach bazodanowych dlatego zrozumienie mechanizmu działania kwerend SQL tego typu jest kluczowe dla efektywnego zarządzania danymi w każdej organizacji. SQL jako język deklaratywny umożliwia łatwe definiowanie co chcemy osiągnąć bez konieczności szczegółowego opisywania jak to zrobić co ułatwia pracę z dużymi i złożonymi zbiorami danych.