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: 6 marca 2025 16:16
  • Data zakończenia: 6 marca 2025 16:37

Egzamin zdany!

Wynik: 27/40 punktów (67,5%)

Wymagane minimum: 20 punktów (50%)

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

Którego formatu należy użyć do zapisu zdjęcia z kompresją stratną?

A. GIF
B. PNG
C. JPEG
D. PCX
Format JPEG (Joint Photographic Experts Group) jest powszechnie stosowany do zapisu obrazów z kompresją stratną, co oznacza, że ​​część danych jest usuwana, aby zmniejszyć rozmiar pliku. JPEG jest szczególnie efektywny w przypadku fotografii i obrazów z wieloma kolorami oraz gradientami, gdzie niewielka utrata jakości jest akceptowalna dla użytkowników. Ten format kompresji stratnej działa na zasadzie analizy obrazu i eliminacji informacji, które są mniej zauważalne dla ludzkiego oka, co pozwala na znaczne zmniejszenie rozmiaru pliku. Przykładem zastosowania JPEG jest publikacja zdjęć w sieci, gdzie prędkość ładowania strony ma duże znaczenie. W praktyce format JPEG jest szeroko stosowany w mediach społecznościowych, portalach internetowych i w fotografii cyfrowej, co czyni go jednym z najpopularniejszych formatów graficznych. Dodatkowo, JPEG wspiera różne profile kolorów, co pozwala na lepszą reprezentację kolorystyczną w różnych urządzeniach wyjściowych, takich jak monitory i drukarki, co jest zgodne z najlepszymi praktykami w dziedzinie obróbki obrazu.

Pytanie 2

Co wykonuje poniższy fragment kodu w JavaScript?

n = "Napis1";
s = n.length;

A. Przypisze zmiennej s wartość, która odpowiada długości tekstu ze zmiennej n
B. Przypisze zmienną n do zmiennej s
C. Przypisze zmiennej s fragment tekstu ze zmiennej n, o długości określonej przez zmienną length
D. Wyświetli długość tekstu ze zmiennej n
Analizując błędne odpowiedzi można zauważyć kilka typowych nieporozumień związanych z właściwością length w JavaScript. Pierwszym z nich jest mylne założenie że length służy do wycinania fragmentu napisu co sugeruje odpowiedź o przypisaniu zmiennej s fragmentu napisu. W rzeczywistości length to właściwość która zwraca liczbę elementów w stringu a nie jego część. Aby wyciąć fragment stringa należy użyć metod takich jak slice lub substring które są przeznaczone do tego celu. Kolejne nieporozumienie polega na traktowaniu length jako funkcji która wyświetla długość napisu. Właściwość length po prostu zwraca wartość dlatego jeśli chcemy ją wyświetlić musimy użyć dodatkowych konstrukcji takich jak console.log w środowisku programistycznym przeglądarki. Następne potencjalne nieporozumienie związane jest z przypisaniem zmiennej n do zmiennej s. Bezpośrednie przypisanie całego stringa do innej zmiennej wymagałoby użycia operatora przypisania (=) bez kontekstu length. Takie błędne rozumowanie często wynika z nieuwagi lub braku doświadczenia w pracy z właściwościami obiektów w JavaScript. Programując w tym języku warto pamiętać że każda właściwość i metoda ma swoje konkretne zastosowanie i przeznaczenie stąd znajomość ich specyfiki jest kluczowa dla efektywnego kodowania. Dzięki tej wiedzy programista może unikać typowych pułapek i optymalizować procesy przetwarzania danych co jest szczególnie istotne w kontekście aplikacji webowych rozwijanych w JavaScript.

Pytanie 3

Relacja wiele-do-wielu w bazach danych występuje pomiędzy tabelami, gdy

A. wielu wierszom z tabeli A przyporządkowane są liczne wiersze z tabeli B
B. jednemu wierszowi z tabeli A odpowiada wiele wierszy z tabeli B
C. jednemu wierszowi z tabeli A przysługuje wyłącznie jeden wiersz z tabeli B
D. wielu wierszom z tabeli A przypisany jest tylko jeden wiersz z tabeli B
Odpowiedź, że wielu wierszom z tabeli A przypada wiele wierszy z tabeli B, jest jak najbardziej na miejscu. Wiesz, relacja wiele-do-wielu w bazach danych pojawia się, gdy jednemu rekordowi w jednej tabeli przypisanych jest kilka rekordów w drugiej. Na przykład w bazie danych uczelni mamy studentów (tabela A), którzy mogą zapisać się na różne kursy (tabela B), a jeden kurs może być realizowany przez różnych studentów. W praktyce, żeby to wszystko działało, tworzymy tabelę pośredniczącą, która łączy oba zestawy danych za pomocą kluczy obcych. Taki sposób daje sporo swobody w zarządzaniu danymi, bo łatwo można dodawać lub usuwać powiązania. Ważne jest też, aby zwrócić uwagę na zasady normalizacji baz danych, które pomagają unikać powielania danych i zapewniają, że wszystko jest spójne. Dobrze przemyślane relacje w bazie danych to podstawa, bo to one wpływają na wydajność i prostotę w zarządzaniu danymi.

Pytanie 4

Po uruchomieniu poniższego kodu PHP na ekranie ukaże się bieżąca data w formacie: ```echo date("Y-m");```

A. tylko rok
B. dzień, miesiąc, rok
C. dzień oraz rok
D. rok oraz miesiąc
Odpowiedź "rok i miesiąc" jest prawidłowa, ponieważ funkcja date() w PHP, kiedy wykorzystujemy format "Y-m", zwraca datę w formacie roku, np. 2023, oraz miesiąca w postaci dwucyfrowej, np. 09 dla września. Warto zrozumieć, że format "Y" generuje czterocyfrowy rok, natomiast "m" generuje dwucyfrowy miesiąc. To podejście jest często wykorzystywane w aplikacjach webowych do prezentacji dat w sposób zrozumiały dla użytkowników, a także do grupowania danych według miesięcy w bazach danych. Przykładowo, w systemach raportowania finansowego, często wykorzystuje się ten format do agregacji danych sprzedażowych według miesięcy, co ułatwia analizę wyników. Użycie odpowiednich standardów w formacie daty wspomaga utrzymanie spójności i czytelności danych w różnych systemach informatycznych.

Pytanie 5

W jaki sposób funkcjonuje instrukcja do łączenia wyników zapytań INTERSECT w SQL?

A. Zwraca część wspólną wyników dwóch zapytań
B. Zwraca zbiór wyników z pierwszego zapytania oraz zbiór wyników z drugiego zapytania, automatycznie eliminując powtarzające się wiersze
C. Zwraca te wiersze, które wystąpiły w wyniku pierwszego zapytania, jednak nie były obecne w wyniku drugiego zapytania
D. Zwraca te wiersze, które wystąpiły w wyniku drugiego zapytania, natomiast nie było ich w wyniku pierwszego zapytania
Instrukcja INTERSECT w języku SQL jest używana do zwracania wspólnych wyników dwóch lub więcej zapytań SELECT. W praktyce INTERSECT identyfikuje i zwraca jedynie te wiersze, które występują zarówno w pierwszym, jak i w drugim zbiorze wyników. Warto zauważyć, że podczas używania tej instrukcji, domyślnie usuwane są duplikaty, co oznacza, że każde unikalne wystąpienie wspólnych wierszy zostanie zwrócone tylko raz. Na przykład, jeżeli mamy dwa zapytania: pierwsze zwracające klientów z miasta A, a drugie klientów z miasta B, zastosowanie INTERSECT pozwoli nam uzyskać listę klientów, którzy znajdują się w obu zbiorach, co może być istotne w kontekście analizy danych lub segmentacji rynku. W kontekście standardów SQL, INTERSECT jest jednym z operatorów zbiorowych, obok UNION i EXCEPT, co czyni go fundamentalnym narzędziem w pracy z relacyjnymi bazami danych. Użycie INTERSECT może być korzystne w sytuacjach, gdy chcemy uzyskać analizę porównawczą lub zidentyfikować wspólne elementy pomiędzy różnymi zestawami danych, co jest kluczowe w wielu zastosowaniach analitycznych i raportowych.

Pytanie 6

Jakie zadania programistyczne należy wykonać na serwerze?

A. Weryfikacja danych wprowadzonych do pola tekstowego na bieżąco
B. Ukrywanie i wyświetlanie elementów strony w zależności od aktualnej pozycji kursora
C. Zmiana stylu HTML na stronie spowodowana ruchem kursora
D. Zapisanie danych pozyskanych z aplikacji internetowej w bazie danych
Zapisanie danych pobranych z aplikacji internetowej w bazie danych to zadanie, które powinno być wykonywane po stronie serwera ze względów bezpieczeństwa, integralności danych oraz zarządzania zasobami. Serwer jest odpowiedzialny za przechowywanie informacji, które mogą być wykorzystywane przez wielu użytkowników, co wymaga centralizacji ich przetwarzania. W przypadku aplikacji internetowych, dane są często przesyłane z klienta (przeglądarki) do serwera, gdzie są walidowane oraz zapisywane w bazach danych. Na przykład, gdy użytkownik rejestruje się w aplikacji, jego dane osobowe są wysyłane do serwera, który sprawdza poprawność tych informacji i zapisuje je w bazie danych. Właściwe implementacje powinny stosować bezpieczne połączenia (np. HTTPS), a także techniki, takie jak sanitizacja danych, aby unikać ataków typu SQL Injection. Dobrą praktyką jest także stosowanie ORM (Object-Relational Mapping), co umożliwia łatwiejsze zarządzanie danymi i ich relacjami. Przechowywanie danych po stronie serwera pozwala na efektywne zarządzanie zasobami i umożliwia późniejsze przetwarzanie informacji w sposób zorganizowany i bezpieczny.

Pytanie 7

Która z definicji tablicy asocjacyjnej w PHP jest składniowo poprawna?

A. $wiek = array({"Anna", "35"}, {"Ewa", "37"}, {"Oliwia", "43"});
B. $wiek = array("Anna"=>"35", "Ewa"=>"37", "Oliwia"=>"43");
C. $wiek = array("Anna"=35, "Ewa"=37, "Oliwia"=43);
D. $wiek = array([Anna, 35], [Ewa, 37], [Oliwia, 43]);
Definicja tablicy asocjacyjnej w języku PHP, przedstawiona jako $wiek = array("Anna"=>"35", "Ewa"=>"37", "Oliwia"=>"43");, jest poprawna składniowo. Tablice asocjacyjne to struktury danych, które pozwalają na przechowywanie wartości w parach klucz-wartość. Kluczami mogą być stringi lub liczby, a wartości mogą być różnego typu. Użycie operatora => jest kluczowe, ponieważ wskazuje, że dla danego klucza (np. "Anna") przypisana jest konkretna wartość (np. "35"). W praktyce tablice asocjacyjne są niezwykle użyteczne w wielu sytuacjach, takich jak przetwarzanie danych z formularzy, gdzie klucze odpowiadają nazwom pól, a wartości to wprowadzone przez użytkownika dane. Dzięki tablicom asocjacyjnym można z łatwością uzyskiwać dostęp do wartości, analizować je i manipulować, co czyni je standardowym narzędziem w programowaniu w PHP i praktycznym podejściem w tworzeniu aplikacji webowych.

Pytanie 8

Dana jest tablica n-elementowa o nazwie t[n] Zadaniem algorytmu zapisanego w postaci kroków jest wypisanie sumy

K1: i = 0; wynik = 0;
K2: Dopóki i < n wykonuj K3 .. K4
    K3: wynik ← wynik + t[i]
    K4: i ← i + 2
K5: wypisz wynik

A. sumy tych elementów tablicy, których wartości są nieparzyste.
B. co drugiego elementu tablicy.
C. sumy wszystkich elementów tablicy.
D. n-elementów tablicy.
Niestety, Twoje odpowiedzi nie są do końca poprawne i widać, że coś Ci umknęło w tej kwestii. Algorytm nie sumuje wszystkich elementów tablicy, ani nie odnosi się do ich parzystości. Właściwie to sumuje co drugi element, a nie wszystkie naraz. Kiedy myślisz o sumowaniu n-elementów, warto wiedzieć, że 'n' oznacza wielkość tablicy, a nie mówi, które elementy są sumowane. Przypomnij sobie, że algorytm używa pętli i zmiennej, która idzie o 2 w każdej turze, więc nic nie stoi na przeszkodzie, żeby lepiej zrozumieć, jak to działa. To kluczowe, bo dobra znajomość algorytmów i tablic to podstawa w programowaniu.

Pytanie 9

W CSS zapis selektora

p > i { color: red;} 
wskazuje, że kolorem czerwonym będzie wyróżniony

A. każdy tekst w znaczniku

z wyjątkiem tych w znaczniku

B. jedynie tekst w znaczniku , który znajduje się bezpośrednio wewnątrz znacznika

C. wszystkie teksty w znaczniku

lub każdy tekst w znaczniku

D. tylko ten tekst znacznika

, który ma przypisaną klasę o nazwie i

Odpowiedzi, które nie uznają znaczenia operatora > oraz kontekstu, w jakim elementy są umieszczone, mogą prowadzić do błędnych wniosków. Przykładowo, stwierdzenie, że każdy tekst w znaczniku

za wyjątkiem tych w znaczniku zostanie sformatowany, jest niezgodne z zasadami działania CSS, ponieważ selektor ten nie wyklucza jedynie , lecz odnosi się do hierarchii struktury DOM. W praktyce, jeśli nie jest bezpośrednim dzieckiem

, to nie będzie objęte regułą. Z kolei pomylenie selektorów może skutkować tym, że nie osiągniemy zamierzonych efektów stylizacji, co jest częstym problemem w projektach webowych. Ponadto, odpowiedzi sugerujące, że selektor dotyczy wszystkich elementów

lub że dotyczy on klasy , wynikają z niepełnego zrozumienia podstaw CSS. Należy pamiętać, że klasy są definiowane w osnowie HTML, a nie w kontekście selektorów bezpośrednich. Właściwe zrozumienie selektorów jest kluczowe dla efektywnego stylizowania i organizacji kodu, a także dla osiągnięcia zamierzonych efektów wizualnych na stronach internetowych.


Pytanie 10

To pytanie jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się lub utwórz konto aby zobaczyć pełną treść pytania.

Odpowiedzi dostępne po zalogowaniu.

Wyjaśnienie dostępne po zalogowaniu.


Pytanie 11

Narzędziem do zarządzania bazą danych wbudowanym w pakiet XAMPP jest

A. phpMyAdmin
B. pgAdmin
C. MySQL Workbench
D. SQLite
phpMyAdmin to popularne narzędzie webowe, które jest częścią pakietu XAMPP, służące do zarządzania bazami danych MySQL. Umożliwia użytkownikom interakcję z bazą danych poprzez intuicyjny interfejs graficzny, co znacznie upraszcza wykonanie operacji takich jak tworzenie, edytowanie i usuwanie baz danych oraz tabel. Dzięki phpMyAdmin można z łatwością zarządzać uprawnieniami użytkowników, importować i eksportować dane, a także wykonywać zapytania SQL bez konieczności korzystania z linii poleceń. To narzędzie jest szczególnie przydatne dla osób, które nie mają doświadczenia w pracy z bazami danych, a jego dostępność w XAMPP czyni go idealnym rozwiązaniem dla programistów webowych i administratorów systemów. W praktyce, phpMyAdmin wspiera wiele standardów, takich jak UTF-8, co zapewnia poprawne przetwarzanie danych w różnych językach. Warto zaznaczyć, że korzystanie z phpMyAdmin jest zgodne z najlepszymi praktykami w zakresie zarządzania bazami danych, ponieważ umożliwia skuteczne monitorowanie i optymalizację wydajności bazy danych.

Pytanie 12

Na ilustracji przedstawiono strukturę bloków na stronie internetowej. Który z poniższych fragmentów CSS odpowiada takim ustawieniom? (Dla uproszczenia pominięto właściwości dotyczące koloru tła, wysokości oraz czcionki)

Ilustracja do pytania
A. #pierwszy{float:left; width:30%;} #drugi {clear:both; width:70%;} #trzeci {clear:both; width:70%;} #czwarty {float:left; width:100%;}
B. #pierwszy {float:left; width:30%;} #drugi {float:left; width:70%;} #trzeci {float:left; width:70%;} #czwarty {clear:both; }
C. #pierwszy { width: 30%; } #drugi { width: 70%; } #trzeci { width: 70%; } #czwarty { width: 100%; }
D. #pierwszy {float:left; width:30%; } #drugi {clear:both; width:70%; } #trzeci {float:left; width:70%; } #czwarty {clear:both; }
Odpowiedź pierwsza jest prawidłowa, gdyż prawidłowo wykorzystuje właściwość float w stylach CSS, aby uzyskać pożądany układ bloków na stronie internetowej. Float pozwala elementom przemieszczać się na lewą lub prawą stronę kontenera, co jest kluczowe w tworzeniu layoutów. W tym przypadku #pierwszy, #drugi i #trzeci mają ustawione float:left, co umożliwia ich równoległe ustawienie w poziomie aż do momentu, gdy szerokości kontenera są zapełnione. Następnie blok #czwarty wymaga clear:both, aby przemieszczać się poniżej wszystkich poprzednich elementów z ustawionym float. To powszechna technika stosowana w projektowaniu responsywnych układów stron, gdzie równoległe pozycjonowanie elementów pozwala na efektywne wykorzystanie przestrzeni. Float w połączeniu z odpowiednimi szerokościami procentowymi pomaga tworzyć elastyczne projekty, które dobrze skalują się na różnych urządzeniach, co jest zgodne z nowoczesnymi standardami web developmentu. Ponadto zrozumienie działania float i clear jest fundamentem przy tworzeniu klasycznych layoutów typu grid przed wprowadzeniem nowoczesnych rozwiązań takich jak Flexbox czy CSS Grid, co pokazuje zrozumienie podstawowych zasad CSS.

Pytanie 13

Jakie są wyniki wykonania zapytania SQL?

SELECT count(*) FROM Uczniowie WHERE srednia=5;

A. suma ocen uczniów z średnią 5
B. ilość uczniów, których średnia ocen wynosi 5
C. łączna liczba uczniów
D. średnia wszystkich ocen uczniów
Zapytanie SQL używa funkcji COUNT aby policzyć liczbę rekordów w tabeli Uczniowie spełniających warunek srednia=5 Klauzula WHERE ogranicza zestaw zliczanych rekordów do tych gdzie średnia ocen ucznia wynosi dokładnie 5 W efekcie wynik zapytania odpowiada liczbie uczniów mających średnią ocen równą 5 Takie podejście jest powszechnie stosowane w analizie danych gdzie wymagane jest określenie liczby jednostek spełniających konkretne kryteria Zastosowanie COUNT w połączeniu z WHERE umożliwia precyzyjną kontrolę nad analizowanym zbiorem danych co jest standardem w wielu systemach bazodanowych Praktyczne zastosowanie tej techniki można spotkać w raportowaniu wyników nauczania generowaniu statystyk czy w analizach biznesowych gdzie kluczowe jest zrozumienie struktury i charakterystyki danych Zapytanie to ilustruje dobrą praktykę pracy z bazami danych polegającą na efektywnym i precyzyjnym formułowaniu zapytań w celu uzyskania wartościowych i precyzyjnych informacji

Pytanie 14

Który typ relacji wymaga stworzenia tabeli pośredniczącej łączącej klucze główne obu tabel?

A. 1..1
B. n..n
C. 1..n
D. n..1
Odpowiedź n..n jest prawidłowa, ponieważ ten typ relacji wskazuje, że wiele rekordów z jednej tabeli może być związanych z wieloma rekordami z drugiej tabeli. Aby prawidłowo zaimplementować tę relację w bazie danych, konieczne jest utworzenie tabeli pośredniej, która będzie zawierać klucze główne z obu tabel jako klucze obce. Na przykład, w systemie zarządzania uczelnią, tabela 'Studenci' może być powiązana z tabelą 'Kursy', gdzie jeden student może zapisać się na wiele kursów, a jeden kurs może mieć wielu studentów. Tabela pośrednia 'Studenci_Kursy' będzie zawierać kolumny 'StudentID' i 'KursID', które tworzą unikalne pary, umożliwiając efektywne zarządzanie danymi. Standardy projektowania baz danych, takie jak modelowanie ER (Entity-Relationship), zalecają stosowanie tabel pośrednich w takich przypadkach, aby zminimalizować redundancję danych oraz zwiększyć integralność referencyjną systemu.

Pytanie 15

Jakie wartości powinny mieć zmienne w funkcji z biblioteki mysqli, by ustanowić połączenie z serwerem i bazą danych?

mysqli_connect($a, $b, $c, $d) or die('Brak połączenia z serwerem MySQL.');

A. adres serwera - $c, nazwa bazy danych - $d, login - $b, hasło - $a
B. adres serwera - $a, nazwa bazy danych - $b, login - $c, hasło - $d
C. adres serwera - $c, nazwa bazy danych - $d, login - $a, hasło - $b
D. adres serwera - $a, nazwa bazy danych - $d, login - $b, hasło - $c
Funkcja mysqli_connect w PHP to coś, co trzeba znać, gdy pracuje się z bazami danych MySQL. Wiesz, że musisz podać parametry w odpowiedniej kolejności: najpierw adres serwera, potem nazwę użytkownika, hasło i na końcu nazwę bazy danych. W twoim zadaniu odpowiednie zmienne to: adres serwera jako $a, nazwa bazy jako $d, login jako $b, a hasło jako $c, co pasuje do czwartej opcji. Dobrze to rozumiesz, bo tę funkcję trzeba wywołać w dokładnie takiej kolejności, żeby połączenie z bazą działało. Przykład: gdy korzystasz z lokalnego serwera, to używasz localhost jako $a, użytkownik to root, a hasło powiedzmy, że password, a baza to test_db. W takim razie wyglądałoby to tak: mysqli_connect('localhost', 'root', 'password', 'test_db'). Dobrze przyporządkowane zmienne są kluczowe, bo jak coś pomylisz, połączenie się nie uda i mogą się pojawić błędy. Warto zrozumieć, jak to działa, żeby dobrze programować w PHP z MySQL.

Pytanie 16

Która z poniższych funkcji w języku PHP zmieni słowo „kota” na „mysz” w zdaniu „ala ma kota”?

A. replace("ala ma kota", "kota", "mysz");
B. str_replace("ala ma kota", "kota", "mysz");
C. str_replace( "kota", "mysz", "ala ma kota");
D. replace("kota", "mysz", "ala ma kota");
Funkcja str_replace w języku PHP jest odpowiedzialna za zamianę określonych ciągów znaków w danym tekście. W poprawnej odpowiedzi użyto jej w sposób zgodny z jej syntaksą, co jest kluczowe dla prawidłowego działania w tym kontekście. W przypadku str_replace, pierwszy argument to ciąg znaków, który chcemy zamienić, drugi argument to nowy ciąg, który ma zastąpić stary, a trzeci argument to tekst, w którym dokonujemy zamiany. W przedstawionym przykładzie, zamieniamy słowo 'kota' na 'mysz' w napisie 'ala ma kota', co skutkuje wynikiem 'ala ma mysz'. Tego rodzaju operacje są powszechnie stosowane w programowaniu webowym, szczególnie przy dynamicznym generowaniu treści, gdzie konieczne jest modyfikowanie tekstu na podstawie danych użytkownika lub baz danych. Warto również zwrócić uwagę na to, że stosowanie str_replace zgodnie z dokumentacją PHP jest standardem, który pozwala na uniknięcie wielu błędów związanych z manipulacją tekstem.

Pytanie 17

Jakie polecenie należy zastosować, aby wysłać dane przy pomocy funkcji mysqli_query() w skrypcie PHP, który dodaje informacje z formularza umieszczonego na stronie internetowej do bazy danych?

A. INSERT INTO
B. SELECT
C. UPDATE
D. ALTER
Odpowiedź 'INSERT INTO' jest poprawna, ponieważ jest to standardowa kwerenda SQL używana do wstawiania nowych rekordów do tabel w bazie danych. W kontekście PHP i funkcji mysqli_query(), wstawianie danych z formularza zazwyczaj obejmuje przygotowanie kwerendy, która zawiera instrukcję INSERT INTO wraz z nazwą tabeli oraz danymi, które mają zostać dodane. Na przykład, jeśli mamy formularz z polami 'imie' i 'nazwisko', kwerenda mogłaby wyglądać następująco: 'INSERT INTO uzytkownicy (imie, nazwisko) VALUES (?, ?)'. Użycie znaków zapytania (?) jest zgodne z najlepszymi praktykami, ponieważ pozwala na bezpieczne wprowadzenie danych, chroniąc aplikację przed atakami SQL Injection. Dobrą praktyką jest również używanie PDO lub MySQLi z przygotowanymi zapytaniami, co zwiększa bezpieczeństwo oraz efektywność kodu. W ten sposób można skutecznie wstawiać dane do bazy danych, zachowując przy tym standardy programistyczne.

Pytanie 18

Jaką klauzulę należy użyć w instrukcji CREATE TABLE w SQL, żeby pole rekordu nie mogło być puste?

A. DEFAULT
B. CHECK
C. NULL
D. NOT NULL
Wybór odpowiedzi NULL wskazuje na nieprawidłowe zrozumienie roli tej klauzuli w kontekście tworzenia tabel w SQL. Klauzula NULL jest domyślnym ustawieniem dla kolumn, które nie zostały oznaczone jako NOT NULL. Oznacza to, że kolumna może zawierać wartości puste (NULL), co w wielu przypadkach może prowadzić do problemów z integralnością danych. Z drugiej strony, klauzula CHECK jest używana do określenia warunków, które muszą być spełnione przez dane w kolumnie, ale nie gwarantuje, że pole nie będzie puste. Może być użyta do walidacji wartości, ale nie służy do blokowania pustych wpisów. Klauzula DEFAULT pozwala na ustawienie wartości domyślnej dla kolumny, jeżeli nie zostanie podana żadna inna wartość, lecz nie chroni przed wprowadzeniem danych pustych. Typowe błędy myślowe, które prowadzą do takich niepoprawnych wniosków, to mylenie celów różnych klauzul oraz nieodróżnianie między zasadą integralności a ustawieniami domyślnymi dla kolumn. W kontekście projektowania baz danych, kluczowe jest zrozumienie, że NOT NULL ma na celu zapewnienie, że ważne dane są zawsze obecne, co jest niezbędne dla właściwego funkcjonowania aplikacji oraz analizy danych.

Pytanie 19

W tabeli podzespoly należy zaktualizować wartość pola URL na 'toshiba.pl' dla wszystkich rekordów, gdzie pole producent to TOSHIBA. W języku SQL ta zmiana będzie wyglądała następująco

A. UPDATE podzespoly SET URL='toshiba.pl' WHERE producent='TOSHIBA';
B. UPDATE podzespoly SET URL='toshiba.pl';
C. UPDATE producent='TOSHIBA' SET URL='toshiba.pl';
D. UPDATE podzespoly.producent='TOSHIBA' SET URL='toshiba.pl';
Odpowiedź ta jest prawidłowa, ponieważ poprawnie wykorzystuje składnię języka SQL do aktualizacji danych w tabeli. W instrukcji UPDATE podzespoly SET URL='toshiba.pl' WHERE producent='TOSHIBA'; najpierw wskazujemy tabelę, w której chcemy dokonać zmian, czyli 'podzespoly'. Następnie używamy klauzuli SET, aby zdefiniować nową wartość pola URL, a klauzula WHERE precyzuje, które rekordy mają zostać zaktualizowane, w tym przypadku te, gdzie producent to 'TOSHIBA'. To podejście jest zgodne z dobrymi praktykami, ponieważ stosowanie klauzuli WHERE zapobiega masowym aktualizacjom, które mogą prowadzić do niezamierzonych zmian w danych. Przykładowo, jeśli chcielibyśmy zaktualizować tylko określoną grupę produktów, klauzula WHERE pozwala na precyzyjne określenie zakresu zmian. Wprowadzenie takiej modyfikacji w bazie danych, z uwzględnieniem warunków, minimalizuje ryzyko błędów i poprawia integralność danych.

Pytanie 20

W języku C++ metoda, która zwraca wynik potęgowania i przyjmuje dwa argumenty: liczbę x oraz wykładnik w, powinna mieć deklarację

A. void potega(int x, int w, int wynik);
B. int potega(int x, int w);
C. void potega(int x, int w);
D. int potega(int x);
Wybrana odpowiedź 'int potega(int x, int w);' jest poprawna, ponieważ jej deklaracja jasno wskazuje, że funkcja ma zwracać wartość typu całkowitego (int) i przyjmować dwa argumenty: podstawę potęgowania (x) oraz wykładnik (w). Taki sposób definiowania funkcji pozwala na elastyczne obliczanie potęgi liczby, co jest istotne w różnych zastosowaniach programistycznych, od prostych kalkulatorów po bardziej złożone algorytmy. W praktyce, implementacja tej funkcji mogłaby wyglądać tak: 'int potega(int x, int w) { return pow(x, w); }', gdzie wykorzystuje się standardową funkcję 'pow' z biblioteki. Zwracanie wartości jest zgodne z dobrymi praktykami programistycznymi, ponieważ pozwala na dalsze operacje na wyniku potęgowania, a także ułatwia testowanie i debugowanie kodu. Warto również zwrócić uwagę, że w przypadku potęgowania z wykładnikiem ujemnym, warto zabezpieczyć funkcję przed błędnymi danymi, co może być osiągnięte poprzez odpowiednie sprawdzenie wartości argumentów.

Pytanie 21

Dostępna jest tabela ksiazki z kolumnami: tytul (typ tekstowy) oraz cena (typ liczbowy). W celu uzyskania z kwerendy SELECT jedynie tytułów, dla których cena jest mniejsza od 50 zł, należy użyć następującego zapisu:

A. SELECT ksiazki FROM tytul WHERE cena<'50 zł';
B. SELECT tytul FROM ksiazki WHERE cena<50;
C. SELECT tytul FROM ksiazki WHERE cena>'50 zł';
D. SELECT * FROM ksiazki WHERE cena<50;
Wybrana odpowiedź jest poprawna, ponieważ zapytanie SQL "SELECT tytul FROM ksiazki WHERE cena<50;" prawidłowo zwraca tylko kolumnę z tytułami książek, gdzie cena jest mniejsza od 50 zł. W kontekście pracy z bazami danych, kluczowe jest umiejętne formułowanie zapytań, które ograniczają zwracane dane do tych istotnych dla użytkownika. Użycie operatora porównania '<' w klauzuli WHERE jest zgodne z typowymi praktykami w SQL, a przy tym umożliwia precyzyjne filtrowanie danych. Warto również zwrócić uwagę, że w SQL nie potrzebujemy podawać jednostki walutowej, dlatego zapis '50 zł' jest błędny. Właściwa analityka zapytań pozwala na efektywne pozyskiwanie informacji, co ma kluczowe znaczenie w aplikacjach bazodanowych. W praktyce, umiejętność selekcji danych za pomocą zapytań jest podstawą pracy analityka danych oraz programisty.

Pytanie 22

```SELECT model FROM samochody WHERE rocznik > 2017 AND marka = "opel";``` Tabela samochody zawiera poniższe rekordy. Po wykonaniu podanego zapytania SQL, jakie dane zostaną zwrócone?

A. zafira
B. zafira; insignia
C. opel zafira; opel insignia
D. opel zafira
Twoja odpowiedź jest nieprawidłowa, co sugeruje, że możesz nie do końca rozumieć, jak działa zapytanie SQL. Wszystkie odpowiedzi, które zawierały więcej niż jeden model samochodu, są niepoprawne, ponieważ zapytanie SQL jest skonstruowane tak, aby zwrócić tylko te modele, które spełniają oba warunki - markę 'opel' i rocznik większy niż 2017. W przypadku odpowiedzi zawierających tylko model 'zafira', ale bez wskazania marki, jest to błąd, ponieważ zapytanie SQL również wymaga, aby marka była równa 'opel'. W praktyce, błędy w konstrukcji zapytań SQL mogą prowadzić do błędnych wyników i potencjalnie do poważnych błędów w analizie danych lub oprogramowaniu. Dlatego, ważne jest, aby zrozumieć, jak prawidłowo konstruować zapytania SQL i jakie wyniki one zwracają.

Pytanie 23

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

A. rekurencji
B. hermetyzacji
C. przeładowania
D. polimorfizmu
Kwalifikatory dostępu, takie jak private, protected i public, są naprawdę ważne w programowaniu obiektowym. Hermetyzacja, czyli ukrywanie szczegółów implementacji, pozwala na lepszą ochronę danych. Dzięki kwalifikatorom dostępu, programista może decydować, co jest dostępne dla innych klas. Na przykład, w klasie `Samochod`, możemy ustawić pole `prędkość` jako `private`. To znaczy, że inne klasy nie mogą go zmieniać bezpośrednio. Zamiast tego, tworzysz metody publiczne, jak `dodajPrędkość()` i `pobierzPrędkość()`, które pozwalają na kontrolowanie dostępu. To jest dobre, bo można dodać jakieś sprawdzenie, zanim zmienisz `prędkość`. Hermetyzacja jest kluczowa, gdy budujesz większe systemy, bo pozwala utrzymać porządek w kodzie i ułatwia pracę zespołową, gdzie różni programiści mogą pracować nad swoimi zadaniami bez obaw o to, że zepsują coś w kodzie innych.

Pytanie 24

Skrypt PHP wyświetla aktualny czas w formacie godzina:minuta:sekunda, na przykład 15:38:20. Czas w tym formacie zostanie uzyskany dzięki funkcji

A. date("G:m:s");
B. time("G:m:s");
C. date("H:i:s");
D. time("H:i:s");
Wybór time("H:i:s") jako metody zwracającej aktualny czas w pożądanym formacie jest błędny, ponieważ funkcja time() nie formatuje daty ani czasu. Zamiast tego, time() zwraca czas w postaci znacznika czasu (timestamp) – liczby sekund, które upłynęły od 1 stycznia 1970 roku, co jest znane jako Unix Epoch. Dlatego wywołanie time("H:i:s") nie zadziała, ponieważ ta funkcja nie akceptuje parametrów formatujących. Kolejną nieprawidłową odpowiedzią jest date("G:m:s"). Chociaż funkcja date() jest stosowana do formatowania czasu, pole 'G' zwraca godziny w 24-godzinnym formacie, ale bez wiodących zer (tak jak 'H'), co może prowadzić do niepoprawnego wyświetlania godzin mniejszych niż 10. Dodatkowo, 'm' odnosi się do miesięcy, a nie minut, co czyni to podejście błędnym we wszystkich aspektach. Wreszcie, w odpowiedzi time("G:m:s") ponownie pojawia się problem ze zrozumieniem funkcji time(), która nie jest używana do formatowania czasu, a zamiast tego służy tylko do uzyskania znacznika czasu. Typowe błędy myślowe związane z tymi odpowiedziami obejmują mylenie funkcji do pozyskiwania danych z funkcjami do ich formatowania oraz niepełne zrozumienie składni i możliwości dostępnych funkcji PHP. Rekomenduje się zawsze dokładne zapoznanie się z dokumentacją PHP oraz praktyczne testowanie funkcji w różnych scenariuszach, aby lepiej zrozumieć ich zastosowanie i ograniczenia.

Pytanie 25

Jakie są przykłady standardowych poleceń w języku zapytań SQL, odnoszących się do operacji na danych SQL DML, takich jak wstawianie, usuwanie oraz modyfikacja danych?

A. ALTER, CREATE, DROP
B. SELECT, SELECT INTO
C. DENY, GRANT, REVOKE
D. DELETE, INSERT, UPDATE
Poprawna odpowiedź to DELETE, INSERT, UPDATE, które są podstawowymi poleceniami w języku SQL dla operacji manipulacji danymi (DML, Data Manipulation Language). Polecenie INSERT służy do dodawania nowych rekordów do tabeli, na przykład: 'INSERT INTO pracownicy (imie, nazwisko) VALUES ('Jan', 'Kowalski');'. DELETE umożliwia usunięcie istniejących danych, co można zrealizować poprzez 'DELETE FROM pracownicy WHERE nazwisko = 'Kowalski';', co kasuje rekordy spełniające określony warunek. Natomiast UPDATE pozwala na modyfikację danych w tabeli, na przykład: 'UPDATE pracownicy SET imie = 'Anna' WHERE nazwisko = 'Kowalski';'. Te instrukcje są zgodne z międzynarodowymi standardami SQL i są kluczowe w codziennym zarządzaniu bazami danych, umożliwiając efektywne manipulowanie danymi w różnych systemach zarządzania bazami danych, takich jak MySQL, PostgreSQL czy Microsoft SQL Server.

Pytanie 26

Jak częstość próbkowania wpływa na

A. poziom głośności nagranego utworu
B. standard jakości cyfrowego dźwięku
C. intensywność fali dźwiękowej utworu
D. standard jakości analogowego dźwięku
Zrozumienie wpływu częstotliwości próbkowania na dźwięk cyfrowy jest kluczowe, a niektórzy mogą mylnie zakładać, że ma ona bezpośredni wpływ na inne aspekty dźwięku. Przykładowo, wiele osób może myśleć, że częstotliwość próbkowania wpływa na skalę głośności zapisanego utworu, co jest nieprawidłowe, ponieważ głośność jest określana przez amplitudę sygnału audio, a nie przez jego próbkowanie. Ponadto, jakość analogowego dźwięku nie podlega wpływowi częstotliwości próbkowania, ponieważ analogowe sygnały są ciągłe i nie wymagają próbkowania, aby być reprodukowane. Co więcej, amplituda fali dźwiękowej odnosi się do poziomu energii fali, a nie do jej częstotliwości próbkowania. Zrozumienie tej różnicy jest kluczowe dla prawidłowego pojmowania technologii dźwiękowej. Częstotliwość próbkowania ma znaczenie tylko w kontekście cyfrowego przetwarzania dźwięku, gdzie wpływa na jakość reprodukcji, ale nie ma zastosowania w analogowej sferze dźwięku. Typowe błędy myślowe w tej kwestii mogą wynikać z nieporozumienia dotyczącego różnicy między dźwiękiem analogowym a cyfrowym oraz sposobów, w jakie są one przetwarzane.

Pytanie 27

Graficzny interfejs użytkownika, który umożliwia wprowadzanie danych do bazy, to

A. encja
B. formularz
C. raport
D. kwerenda
Raport, kwerenda i encja to pojęcia, które na pierwszy rzut oka mogą wydawać się związane z wprowadzaniem danych, jednak nie pełnią one roli graficznego interfejsu użytkownika umożliwiającego taką interakcję. Raport to narzędzie do prezentacji danych, najczęściej w formie zestawień i wykresów, które czerpie informacje z bazy danych, ale nie pozwala na ich edycję czy wprowadzanie nowych danych. To narzędzie, które skupia się na analizie i wizualizacji informacji, a nie na ich zbieraniu. Kwerenda to zapytanie do bazy danych, które umożliwia wydobycie określonych informacji, ale nie jest formą interakcji z użytkownikiem w sensie wprowadzania danych. Użytkownik, korzystając z kwerendy, nie wprowadza danych bezpośrednio, lecz prosi system o zwrócenie konkretnej porcji informacji zgodnie z ustalonymi kryteriami. Encja natomiast odnosi się do obiektów w modelu danych, które przechowują informacje w bazie danych, ale nie jest to obiekt interfejsu użytkownika. Encje są bardziej abstrakcyjnym pojęciem, związanym z przechowywaniem danych w bazach danych, a nie z ich wprowadzaniem. Powodzenie w korzystaniu z baz danych wymaga zrozumienia tych różnic oraz znajomości odpowiednich narzędzi, które rzeczywiście umożliwiają wprowadzanie danych, a formularze są kluczowym elementem takich interakcji.

Pytanie 28

Kod w języku JavaScript, który został zapisany, daje w wyniku działania

A. pokazanie okna z pustym polem do edycji
B. wyświetlenie okna z polem do edycji, w którym domyślnie znajduje się tekst "Adam"
C. bezpośrednie przypisanie do zmiennej osoba wartości "Adam"
D. uzyskanie z formularza wyświetlonego na stronie HTML imienia "Adam"
W kodzie JavaScript zapisano wywołanie funkcji prompt, która jest standardową metodą do interakcji z użytkownikiem poprzez wyświetlenie okna dialogowego. Funkcja ta przyjmuje dwa argumenty: pierwszy to tekst, który będzie wyświetlony jako prośba o dane, a drugi to opcjonalna wartość domyślna, która pojawi się w polu edycyjnym okna dialogowego. W przykładzie użytkownik proszony jest o podanie imienia, a domyślną wartością, która jest predefiniowana w tym przypadku, jest 'Adam'. Działanie tego kodu spowoduje otwarcie okna z polem edycyjnym, w którym już znajduje się 'Adam', co ułatwia użytkownikowi wprowadzenie danych. Ponadto, gdy użytkownik kliknie 'OK' lub 'Anuluj', wynik (czyli wartość wpisana przez użytkownika lub null, jeśli anulował) zostanie przypisany do zmiennej 'osoba'. Warto zaznaczyć, że funkcja prompt jest powszechnie używana w aplikacjach webowych do szybkiego zbierania informacji od użytkowników. Dzięki temu kodowi programiści mogą efektywnie interactować z użytkownikami, co jest zgodne z duchem nowoczesnych aplikacji internetowych opartych na JavaScript.

Pytanie 29

W tabeli pracownicy zdefiniowano klucz główny jako INTEGER z atrybutami NOT NULL oraz AUTO_INCREMENT. Dodatkowo zdefiniowano kolumny imie oraz nazwisko. W przypadku wykonania poniższej kwerendy SQL wprowadzającej dane, w której pominięto pole klucza, w bazie danych MySQL wystąpi

INSERT INTO pracownicy (imie, nazwisko) VALUES ('Anna', 'Nowak');

A. dodanie rekordu do tabeli, dla klucza głównego zostanie przypisana wartość NULL
B. błąd związany z nieprawidłową liczbą kolumn
C. ignorowanie polecenia, tabela nie ulegnie zmianie
D. dodanie rekordu do tabeli, dla klucza głównego zostanie przypisana kolejna wartość naturalna
Jak używasz polecenia INSERT w MySQL i masz klucz główny ustawiony jako AUTO_INCREMENT, to system sam zajmie się przydzieleniem nowej, unikalnej wartości dla tego klucza dla każdego nowego rekordu. Kiedy wprowadzasz dane o pracowniku, takie jak imię i nazwisko, to nie musisz martwić się o podawanie wartości klucza głównego. MySQL świetnie to rozumie i dodaje kolejny wolny numer. To jest zgodne z dobrymi praktykami w bazach danych, gdzie klucz główny musi być unikalny dla każdego rekordu, ale niekoniecznie musisz go podawać ręcznie, szczególnie gdy korzystasz z mechanizmu AUTO_INCREMENT. Weźmy na przykład tabelę zamówień – tam każdy nowy wpis automatycznie dostaje unikalny numer zamówienia, co eliminuje ryzyko błędów i ułatwia późniejsze śledzenie danych. Dzięki AUTO_INCREMENT wprowadzanie danych staje się dużo prostsze, a szansa na pomyłki przy manualnym wpisywaniu wartości klucza głównego znacznie maleje.

Pytanie 30

Dokument HTML określa akapit oraz obrazek. Aby obrazek był wyświetlany przez przeglądarkę w tej samej linii co akapit po jego lewej stronie, należy w stylu CSS obrazka uwzględnić właściwość

A. align: left;
B. float: left;
C. style: left;
D. alt: left;
Odpowiedź "float: left;" jest naprawdę trafna. Ta właściwość w CSS sprawia, że elementy układają się obok siebie, co w tym przypadku oznacza, że rysunek wyląduje po lewej stronie akapitu. Jak użyjemy float, to rysunek 'przesuwa się' na lewo, a tekst z akapitu otacza go z prawej strony. To taki popularny sposób w webdesignie, który pozwala na ładniejsze połączenie obrazków z tekstem. Warto pamiętać, że czasem trzeba zastosować clearfix, zwłaszcza gdy mamy pływające elementy w większym układzie, żeby uniknąć problemów z rozmieszczeniem. Stosowanie float w CSS to dobra praktyka, bo pomaga zachować czytelność i estetykę tekstu. Na przykład, jeśli mamy sekcję artykułu z obrazem, który ilustruje omawiany temat, to zastosowanie float: left; sprawi, że treść będzie ładnie się układać i poprawi wrażenia użytkownika.

Pytanie 31

Które tabele będą analizowane w wyniku tego polecenia?

CHECK TABLE pracownicy CHANGED;

A. Jedynie tabele odwołujące się do innych
B. Wyłącznie tabele, które nie zostały poprawnie zamknięte
C. Tabele, które zostały zmodyfikowane w bieżącej sesji
D. Tabele, które zmieniły się od poprzedniej weryfikacji lub nie zostały poprawnie zamknięte
W kontekście podanych odpowiedzi, jedynie opcja pierwsza jest prawidłowa. Niepoprawne jest stwierdzenie, że polecenie CHECK TABLE będzie sprawdzać tylko tabele, które nie zostały poprawnie zamknięte, jak sugeruje druga odpowiedź. Taki scenariusz odnosi się do bardziej ograniczonej funkcji, podczas gdy w realnych zastosowaniach administracyjnych konieczne jest uwzględnienie wszelkich potencjalnych zmian w tabelach, które mogą wpływać na ich integralność. Trzecia odpowiedź wskazuje na tabele referujące do innych, co jest błędnym założeniem, ponieważ polecenie nie ogranicza się do takich relacji, lecz skupia się na detekcji zmian w danych. Ostatecznie, czwarta odpowiedź sugeruje sprawdzanie tabel zmienionych jedynie w bieżącej sesji, co jest nieprawidłowe, ponieważ polecenie z opcją CHANGED poszukuje zmian od ostatniego sprawdzenia bez ograniczenia czasowego do jednej sesji. Typowe błędy myślowe wynikają z niezrozumienia zakresu działania tej funkcji, która ma za zadanie identyfikację zmian wpływających na dane niezależnie od kontekstu czasowego, co jest fundamentalne dla zachowania integralności i poprawności operacji w ramach zarządzania bazą danych, zgodnie z dobrymi praktykami branżowymi w zarządzaniu systemami bazodanowymi.

Pytanie 32

Które z pól edycyjnych zostało stylizowane według podanego wzoru, zakładając, że pozostałe atrybuty pola mają wartości domyślne, a użytkownik wpisał imię Krzysztof w przeglądarce?

Ilustracja do pytania
A. Pole 1
B. Pole 4
C. Pole 2
D. Pole 3
Pole 1 mimo że prezentuje tekst w większym prostokątnym formacie nie ma charakterystycznego zaokrąglenia krawędzi które jest kluczowe dla podanego stylu CSS Zaokrąglenie krawędzi border-radius 7px to istotna część stylu która wpływa na wizualne odczucie przyjazności i nowoczesności interfejsu użytkownika dodatkowo kolor tekstu w Polu 1 wydaje się niezgodny z podanym stylem ponieważ biel tekstu jest priorytetyzowana dla kontrastu na ciemnym tle Pole 3 z kolei choć posiada pewien stopień zaokrąglenia nie spełnia wymagań pełnego zaokrąglenia 7px a także jego kolorystyka może różnić się od poprawnie zastosowanego tła Teal i białego tekstu co może prowadzić do problemów z czytelnością Pole 4 mimo że może wydawać się odpowiednie pod względem kształtu ma bardziej wyraziste obramowanie które jest sprzeczne z właściwością border none celem którego jest usunięcie widocznych linii obramowania Kluczowym elementem przy stylizacji jest spójna implementacja wszystkich właściwości CSS co oznacza że brak jednego z nich jak zaokrąglenie czy kolor tekstu może znacząco wpłynąć na końcowy odbiór i funkcjonalność elementu wizualnego Właściwe zrozumienie i stosowanie stylów CSS jest podstawą tworzenia atrakcyjnych i funkcjonalnych interfejsów które są jednocześnie estetyczne i ergonomiczne w użytkowaniu

Pytanie 33

Wskaż polecenie do iteracji.

A. else
B. switch
C. throw
D. for
Instrukcja iteracyjna 'for' jest jednym z najczęściej używanych mechanizmów w programowaniu, umożliwiającym powtarzanie bloków kodu. Jej główną zaletą jest możliwość precyzyjnego określenia liczby powtórzeń, co czyni ją idealnym narzędziem do pracy z tablicami i kolekcjami danych. W skład składni instrukcji 'for' wchodzi inicjalizacja zmiennej, warunek kontynuacji oraz aktualizacja zmiennej, co pozwala na eleganckie i zrozumiałe pętle. Na przykład, w języku Python, zapis 'for i in range(5):' spowoduje wykonanie bloku kodu pięć razy, co jest przydatne przy iteracji przez indeksy tablicy. Standardy programowania, takie jak PEP 8 dla Pythona, podkreślają znaczenie czytelności kodu, a dobrze zorganizowane pętle 'for' przyczyniają się do utrzymania przejrzystości. Ponadto, instrukcje 'for' są również obecne w wielu innych językach, takich jak Java, C++ czy JavaScript, co czyni je uniwersalnym narzędziem w arsenale programisty.

Pytanie 34

Kaskadowe arkusze stylów są tworzone w celu

A. zwiększenia szybkości ładowania grafiki na stronie internetowej
B. dodania na stronie internetowej treści tekstowych
C. określenia metod formatowania elementów na stronie internetowej
D. ulepszenia nawigacji dla użytkownika
Kaskadowe arkusze stylów (CSS) są kluczowym elementem w projektowaniu stron internetowych, ponieważ umożliwiają one definiowanie sposobu formatowania i prezentacji elementów na stronie. CSS pozwala na oddzielenie treści od formy, co oznacza, że programiści mogą skupić się na tworzeniu struktury dokumentu HTML, podczas gdy stylistyka i układ są kontrolowane przez arkusze stylów. Przykładem zastosowania CSS jest stylizacja nagłówków, paragrafów czy list, gdzie można dostosować czcionki, kolory, marginesy oraz inne właściwości wizualne. Dzięki użyciu selektorów i reguł CSS, twórcy stron mają pełną kontrolę nad tym, jak każdy element będzie wyglądał, co pozwala na tworzenie responsywnych i estetycznych interfejsów. Ponadto, CSS obsługuje kaskadowość, co oznacza, że reguły mogą być dziedziczone i nadpisywane, co zwiększa elastyczność i wydajność procesu stylizacji. Warto również zwrócić uwagę na standardy W3C, które definiują najlepsze praktyki i zalecenia dotyczące użycia CSS, co przyczynia się do poprawy dostępności i zgodności stron internetowych.

Pytanie 35

Wskaż blok, który jest sformatowany zgodnie z podanym stylem CSS. ```background: linear-gradient(to right, LightBlue, DarkBlue);```

Ilustracja do pytania
A. Blok 3
B. Blok 4
C. Blok 1
D. Blok 2
Blok 2 jest poprawną odpowiedzią ponieważ wykorzystuje styl CSS background linear-gradient(to right LightBlue DarkBlue) co oznacza że gradient kolorów rozciąga się od lewej do prawej strony elementu CSS linear-gradient pozwala na tworzenie gładkich przejść między kolorami co jest popularną techniką w projektowaniu stron internetowych Styl ten dodaje wizualnej atrakcyjności i może być użyty w różnych częściach witryny takich jak przyciski nagłówki czy tła sekcji Właściwość gradientu pozwala na zastosowanie wielu kolorów i kontrolowanie ich punktów początkowych i końcowych co zwiększa elastyczność projektowania Ponadto gradienty są wspierane przez wszystkie nowoczesne przeglądarki co czyni je doskonałym wyborem dla responsywnych stron internetowych Wykorzystanie gradientów zamiast obrazów tła pomaga także w optymalizacji strony zmniejszając czas ładowania co jest zgodne z najlepszymi praktykami branżowymi i wpływa pozytywnie na doświadczenie użytkownika CSS oferuje również inne typy gradientów takie jak radial-gradient i conic-gradient które mogą być używane w zależności od potrzeb projektowych

Pytanie 36

Jaka funkcja w PHP pozwala na wyświetlenie ciągu n znaków @?

function znaki($znak,$i++){
for($i=0;$i<$n;$i++)
print($znak);
}
znaki(@,$n);
A
function znaki($i){
for($i=0;$i<$n;$i++)
print("@");
}
znaki($i);
B
function znaki($znak,$i++){
for($i=0;$i<$n;$i++)
print($znak);
}
znaki($n);
C
function znaki($znak,$n){
for($i=0;$i<$n;$i++)
print($znak);
}
znaki("@",$n);
D

A. C
B. D
C. B
D. A
Błędne odpowiedzi w tym przypadku wynikają z niepoprawnego przekazania parametrów do funkcji lub niewłaściwego sposobu ich wykorzystania co skutkuje nieosiągnięciem zamierzonego celu czyli wyświetlenia ciągu znaków @. W jednym przypadku funkcja nie przyjmuje wystarczającej liczby parametrów co uniemożliwia dynamiczne określenie liczby powtórzeń znaku. Zamiast tego powinno się zapewnić że funkcja przyjmuje zarówno znak jak i liczbę powtórzeń jako parametry. Innym częstym błędem jest brak przekazania właściwego argumentu do funkcji co skutkuje jej niepoprawnym działaniem i potencjalnym błędem wykonania. Ponadto korzystanie z niepoprawnie nazwanych zmiennych lub zmiennych które nie są jasno zdefiniowane w kontekście wywołania funkcji prowadzi do błędów logicznych. Kluczowym jest zrozumienie w jaki sposób funkcje w PHP przyjmują i przetwarzają argumenty oraz jak pętle takie jak for pozwalają na iteracyjne przetwarzanie danych. Poprawne zrozumienie i zastosowanie tych mechanizmów jest fundamentem efektywnego programowania w PHP co przekłada się na tworzenie kodu który jest nie tylko poprawny ale także łatwy do utrzymania i skalowalny. Zrozumienie tych podstawowych zasad pozwala na uniknięcie typowych błędów w programowaniu i prowadzi do tworzenia bardziej niezawodnych aplikacji. Prawidłowe podejście do tworzenia funkcji i ich wywoływania jest jednym z kluczowych elementów w rozwijaniu umiejętności programistycznych w PHP i innych językach programowania. Dlatego też ważne jest aby zawsze dokładnie analizować wymagania funkcji i poprawnie konstruować ich implementację oraz wywołanie aby zapewnić ich poprawne i efektywne działanie w kontekście całego systemu.

Pytanie 37

Wartość kolumny w tabeli, która działa jako klucz podstawowy

A. musi być unikalna
B. jest wykorzystywana do szyfrowania treści tabeli
C. może mieć wartość pustą (NULL)
D. jest zawsze w formacie numerycznym
Istnieje wiele nieporozumień związanych z koncepcją klucza podstawowego w bazach danych. Po pierwsze, stwierdzenie, że klucz podstawowy zawsze musi być numeryczny, jest błędne. Klucze podstawowe mogą być zdefiniowane na podstawie różnych typów danych, takich jak tekst, daty czy inne formaty, pod warunkiem, że wartości te są unikalne. W rzeczywistości, wiele systemów zarządzania bazami danych (DBMS) wspiera klucze podstawowe oparte na typach tekstowych, na przykład numery identyfikacyjne użytkowników mogą być reprezentowane jako ciągi znaków. Kolejnym błędnym założeniem jest, że klucz podstawowy może przyjmować wartość pustą (NULL). W kontekście relacyjnych baz danych, klucz podstawowy nie może mieć wartości NULL, ponieważ jego podstawową funkcją jest jednoznaczna identyfikacja rekordów, a wartość pusta uniemożliwia taką identyfikację. Szyfrowanie zawartości tabeli przez klucz podstawowy również jest mylącym podejściem; klucz podstawowy nie służy do zabezpieczania danych, lecz do ich identyfikacji. W praktyce, aby zapewnić bezpieczeństwo danych, stosuje się inne metody, takie jak szyfrowanie danych w polach tabeli, a nie na poziomie klucza podstawowego. Takie nieporozumienia mogą prowadzić do poważnych błędów w projektowaniu baz danych oraz w ich późniejszym użytkowaniu, dlatego kluczowe jest zrozumienie podstawowych zasad funkcjonowania kluczy w kontekście relacyjnych baz danych.

Pytanie 38

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

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

Pytanie 39

W bazie danych znajduje się tabela ksiazki, która zawiera pola: tytul, id_autora, data_wypoz oraz id_czytelnika. Co dzień generowany jest raport dotyczący książek wypożyczonych w danym dniu, który prezentuje tylko tytuły książek. Która z poniższych kwerend SQL będzie odpowiednia do utworzenia tego raportu?

A. SELECT tytul, data_wypoz FROM ksiazki WHERE data_wypoz = CURRDATE_NT_E()
B. SELECT tytul FROM ksiazki
C. SELECT tytul FROM ksiazki WHERE data_wypoz = CURRENT_DATE()
D. SELECT * FROM ksiazki
Wybór innych kwerend nie spełnia wymagania, by uzyskać tylko tytuły wypożyczonych książek z konkretnego dnia. Kwerenda 'SELECT tytul FROM ksiazki;' zwraca wszystkie tytuły książek z tabeli, nie uwzględniając daty wypożyczenia. Takie podejście mogłoby prowadzić do nieefektywnego przetwarzania danych oraz przeciążenia systemu, ze względu na duże ilości danych. W kontekście baz danych, selekcja zbyt ogólnych danych jest niezalecana, ponieważ nie dostarcza istotnych informacji i nie spełnia wymagań użytkowników, prowadząc do frustracji. Kwerenda 'SELECT tytul, data_wypoz FROM ksiazki WHERE data_wypoz = CURRDATE_NT_E();' zawiera błąd w nazwie funkcji, jako że 'CURRDATE_NT_E()' nie jest standardową funkcją SQL, co skutkuje błędem wykonania zapytania. Dodatkowo, nawet gdyby była poprawna, ta kwerenda zwracałaby więcej danych niż potrzebne, co znowu nie jest praktyką zgodną z efektywnym zarządzaniem danymi. Ostatnia propozycja, 'SELECT * FROM ksiazki;', również nie jest odpowiednia, ponieważ zwraca wszystkie kolumny z tabeli, a nie tylko tytuły książek, co skutkuje nieoptymalnym przetwarzaniem i brakiem precyzyjnych informacji. Kluczową lekcją jest to, że kwerendy w SQL powinny być precyzyjnie dopasowane do potrzeb użytkowników, aby minimalizować obciążenie bazy danych oraz maksymalizować użyteczność raportów.

Pytanie 40

Który z przedstawionych kodów HTML sformatuje tekst według wzoru? (uwaga: słowo "stacji" jest zapisane większą czcionką niż reszta słów w tej linii)

Lokomotywa

Stoi nastacjilokomotywa ...

A.
<h1>Lokomotywa</h1>
<p>Stoi na <big>stacji lokomotywa ...</p>

B.
<h1>Lokomotywa</h1>
<p>Stoi na <big>stacji</big> lokomotywa ...</p>

C.
<h1>Lokomotywa</p>
<p>Stoi na <big>stacji</big> lokomotywa ...</p>

D.
<p><small>Lokomotywa</small></p>
<p>Stoi na <big>stacji<big> lokomotywa ...</p>

A. A.
B. D.
C. C.
D. B.
Brawo! Wybrałeś prawidłową odpowiedź, która jest kodem HTML formatującym słowo 'stacji' większą czcionką niż reszta tekstu. Wykorzystuje ona znacznik, który jest wyjątkowo przydatny w sytuacjach, gdy chcemy podkreślić pewną część tekstu i sprawić, że będzie ona wyglądać na większą niż reszta. Jest to praktyka często stosowana na stronach internetowych, by przyciągnąć uwagę użytkownika do konkretnych informacji. Pamiętaj jednak, że znacznikjest przestarzały i nie jest zalecany do stosowania w nowoczesnym kodowaniu HTML. Zamiast tego, w dzisiejszych czasach lepiej jest używać CSS do zmiany rozmiaru czcionki. Niemniej jednak, znajomość różnych znaczników HTML, w tym, jest nadal ważna, zwłaszcza do zrozumienia i utrzymania starszych stron internetowych.