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: 28 stycznia 2026 11:42
  • Data zakończenia: 28 stycznia 2026 12:02

Egzamin zdany!

Wynik: 37/40 punktów (92,5%)

Wymagane minimum: 20 punktów (50%)

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

W języku SQL używanym przez bazę danych MySQL atrybut UNIQUE w poleceniu CREATE TABLE

A. uniemożliwia wprowadzenie wartości NULL
B. wymusza niepowtarzalne nazwy kolumn tabeli
C. jest używany, jeżeli wartości w danej kolumnie nie mogą się powtarzać
D. jest stosowany jedynie w przypadku kolumn liczbowych
Atrybut UNIQUE w poleceniu CREATE TABLE w języku SQL dla bazy danych MySQL jest kluczowym elementem, który zapewnia, że wartości w danej kolumnie są unikalne dla każdego rekordu w tabeli. Oznacza to, że nie może istnieć więcej niż jeden rekord z taką samą wartością w kolumnie oznaczonej tym atrybutem. Dzięki temu, gdy projektujemy bazę danych, możemy zagwarantować integralność danych oraz ich spójność, co jest szczególnie istotne w przypadku kluczowych informacji, jak identyfikatory użytkowników czy numery seryjne produktów. Na przykład, jeżeli mamy tabelę użytkowników z kolumną 'email', możemy zastosować atrybut UNIQUE, aby upewnić się, że każdy użytkownik ma unikalny adres e-mail. W praktyce, jeżeli spróbujemy wprowadzić dwa rekordy z tym samym adresem e-mail, baza danych zgłosi błąd. Warto zauważyć, że atrybut UNIQUE pozwala na wprowadzenie wartości NULL, o ile nie ma innych wartości w danej kolumnie. Zgodnie z zasadami normalizacji danych, stosowanie atrybutu UNIQUE jest standardowym podejściem do zapewnienia jakości danych i ich unikalności w systemach zarządzania bazami danych.

Pytanie 2

Można przypisać wartości: static, relative, fixed, absolute oraz sticky do właściwości

A. display
B. position
C. list-style-type
D. text-transform
Właściwość CSS 'position' służy do określenia, w jaki sposób element jest pozycjonowany na stronie. Wartości takie jak static, relative, fixed, absolute oraz sticky definiują różne metody pozycjonowania elementów w kontekście innych obiektów oraz w kontekście samego okna przeglądarki. Na przykład, 'static' jest wartością domyślną, co oznacza, że elementy są umieszczane w naturalnym porządku w dokumencie HTML. 'Relative' pozwala na przesunięcie elementu względem jego normalnej pozycji, co daje większą elastyczność w projektowaniu layoutów. 'Absolute' pozycjonuje element względem najbliższego przodka, który również ma ustawioną właściwość 'position' różną od 'static', co umożliwia precyzyjne umiejscowienie elementów. 'Fixed' sprawia, że element pozostaje w tym samym miejscu w oknie przeglądarki, nawet podczas przewijania strony, co jest często wykorzystywane w przypadku nagłówków i stopki. 'Sticky' łączy cechy 'relative' i 'fixed', umożliwiając elementowi bycie na stałe w zasięgu widoku, ale tylko do momentu, gdy nie zostanie przewinięty poza jego kontener. Używanie tych wartości w praktyce pozwala na tworzenie responsywnych i dynamicznych interfejsów użytkownika, które są zgodne z dobrymi praktykami projektowania stron internetowych.

Pytanie 3

W JavaScript zdarzenie onKeydown zostanie wywołane, gdy klawisz

A. klawiatury został naciśnięty
B. myszki został naciśnięty
C. klawiatury został zwolniony
D. myszki został zwolniony
Zdarzenie onKeydown w JavaScript jest wywoływane, gdy użytkownik naciśnie klawisz na klawiaturze. To fundamentalne zdarzenie jest często wykorzystywane w aplikacjach webowych do obsługi interakcji użytkowników, takich jak wprowadzanie danych czy nawigacja po formularzach. W momencie naciśnięcia klawisza, przeglądarka emituje to zdarzenie, co pozwala programistom na reagowanie na konkretne akcje. Na przykład, jeśli chcemy stworzyć prostą grę opartą na ruchu postaci, możemy wykorzystać onKeydown do wykrywania klawiszy strzałek i poruszania postacią w odpowiednich kierunkach. Warto również zauważyć, że onKeydown różni się od onKeyup, które jest wywoływane, gdy klawisz jest zwolniony, co ma znaczenie w przypadku obsługi sekwencji klawiszy oraz klawiszy modyfikujących, takich jak Shift czy Ctrl. Zrozumienie tych różnic jest kluczowe dla tworzenia responsywnych i interaktywnych aplikacji webowych, zgodnych z najlepszymi praktykami programowania.

Pytanie 4

W języku PHP, dla zmiennych a = 5 oraz b = 3, jakie wyrażenie zwróci wartość zmiennoprzecinkową?

A. a * b
B. a + b
C. a / b
D. a && b
W języku PHP operacje na zmiennych numerycznych mogą prowadzić do różnych typów wyników w zależności od zastosowanego operatora. W przypadku zmiennych a = 5 i b = 3, jeśli wykonamy operację a / b, uzyskamy wynik 1.6666666666667, co jest wartością zmiennoprzecinkową. Operacja dzielenia w PHP zawsze zwraca wynik typu float, gdy jest wykonywana na liczbach całkowitych, o ile nie jest to dzielenie całkowite przez zero. Wartość ta można wykorzystać w różnych kontekstach, np. w obliczeniach finansowych, gdzie precyzyjne wartości dziesiętne są kluczowe. Warto również zauważyć, że PHP automatycznie konwertuje typy, co oznacza, że operacje na mieszanych typach (np. integer i float) również będą skutkować wynikiem o typie float. Przykładem może być sytuacja, w której wynik dzielenia jest dalej używany w operacjach matematycznych, co może znacząco wpłynąć na końcowy rezultat. Z punktu widzenia standardów PHP, operacje arytmetyczne są ściśle określone w dokumentacji i warto zaznajomić się z funkcjami związanymi z operacjami na liczbach, aby w pełni wykorzystać możliwości języka.

Pytanie 5

Jakie polecenie przywróci do działania uszkodzoną tabelę w SQL?

A. REGENERATE TABLE tbl_name
B. REPAIR TABLE tblname
C. OPTIMIZE TABLE tbl_name
D. ANALYZE TABLE tbl_name
REPAIR TABLE tblname jest komendą w SQL, która jest używana do naprawy uszkodzonych tabel w bazach danych, szczególnie w systemach zarządzania bazami danych, takich jak MySQL. Gdy tabela ulegnie uszkodzeniu z powodu awarii systemu, błędów oprogramowania lub innych problemów, użycie tej komendy pozwala na przywrócenie jej do stanu używalności. Przykładem może być sytuacja, gdy po awarii serwera tabela przestaje być dostępna. Wówczas wystarczy uruchomić polecenie REPAIR TABLE, aby zdiagnozować i naprawić problemy. Warto pamiętać, że ta komenda nie tylko przywraca integralność danych, ale także może poprawić wydajność tabeli, usuwając fragmentację. Praktyka wskazuje, że regularne sprawdzanie i naprawa tabel, zwłaszcza po dużych operacjach zapisu, jest dobrym nawykiem w zarządzaniu bazami danych. Dobrą praktyką jest również tworzenie kopii zapasowych tabel przed ich naprawą, co zabezpiecza dane przed potencjalną utratą w wyniku błędów przy naprawie.

Pytanie 6

Wskaż zapytanie, w którym dane zostały uporządkowane.

A. SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek;
B. SELECT nazwisko FROM firma WHERE pensja > 2000 LIMIT 10;
C. SELECT DISTINCT produkt, cena FROM artykuly;
D. SELECT AVG(ocena) FROM uczniowie WHERE klasa = 2;
Odpowiedź SELECT imie, nazwisko FROM mieszkancy WHERE wiek > 18 ORDER BY wiek jest poprawna, ponieważ zawiera klauzulę ORDER BY, która jest używana do sortowania wyników zapytania w SQL. W tym przypadku, dane są sortowane według wieku mieszkańców, co pozwala na łatwe zrozumienie rozkładu wiekowego w tej grupie. Klauzula ORDER BY jest standardowym elementem SQL, który może sortować wyniki w porządku rosnącym (ASC) lub malejącym (DESC). Przykładowe zastosowanie to raporty, w których użytkownik chce zobaczyć dane uporządkowane według konkretnego kryterium, np. wiek, cena, data. Dobre praktyki sugerują, aby zawsze jasno definiować, które kolumny mają być używane do sortowania, a także zrozumieć, że sortowanie wpływa na wydajność zapytań, zwłaszcza przy dużych zbiorach danych. W przypadku bardziej złożonych zapytań można także łączyć klauzulę ORDER BY z innymi klauzulami, takimi jak GROUP BY, co zwiększa elastyczność w analizie danych.

Pytanie 7

W efekcie wykonania przedstawionego w ramce kodu JavaScript, zmienna x jest równa

Ilustracja do pytania
A. 10 i zostanie wypisana w głównym oknie przeglądarki internetowej.
B. 11 i zostanie wypisana w konsoli przeglądarki internetowej.
C. 10 i zostanie wypisana w dokumencie HTML.
D. 11 i zostanie wypisana w oknie popup.
Kod w ramce to prosty przykład operacji na zmiennej i użycia konsoli w JavaScript: <script> var x = 10; x++; console.log(x); </script> Najpierw deklarowana jest zmienna `x` z użyciem słowa kluczowego `var` i przypisana jest do niej wartość 10. Następnie operator `x++` to tzw. inkrementacja postfiksowa – zwiększa wartość zmiennej `x` o 1. Po wykonaniu tej instrukcji `x` nie jest już równe 10, tylko 11. Ostatnia linia `console.log(x);` wypisuje aktualną wartość zmiennej do konsoli deweloperskiej przeglądarki, a nie do okna strony czy do popupu. Z mojego doświadczenia w pracy z JavaScript, `console.log()` to podstawowe narzędzie debugowania. W praktyce, gdy testujesz np. działanie pętli, obsługę formularzy, komunikację AJAX czy manipulację DOM, bardzo często wypisujesz dane właśnie do konsoli, żeby nie zaśmiecać interfejsu użytkownika. To jest zgodne z dobrymi praktykami front-endu: logi techniczne trafiają do konsoli, a nie do użytkownika końcowego. Warto też zauważyć różnicę między `x++` i `++x`. W tym konkretnym kodzie nie ma znaczenia, bo wartość jest tylko zwiększana i potem logowana, ale w wyrażeniach z przypisaniem kolejność ma już znaczenie. Operator `++` jest typowym elementem składni wielu języków (C, C++, Java, JavaScript), więc dobrze go rozumieć. W nowoczesnym kodzie częściej używa się `let` lub `const` zamiast `var`, ale mechanizm inkrementacji i logowania do konsoli pozostaje taki sam. Podsumowując: po inkrementacji `x` ma wartość 11 i ta wartość jest wyświetlana w konsoli przeglądarki przez `console.log()` – dokładnie tak, jak wskazuje poprawna odpowiedź.

Pytanie 8

W bazie danych znajduje się tabela pracownicy z kolumnami: id, imie, nazwisko, pensja. W nadchodzącym roku postanowiono zwiększyć wynagrodzenie wszystkim pracownikom o 100 zł. Zmiana ta w bazie danych będzie miała formę

A. UPDATE pensja SET +100;
B. UPDATE pracownicy SET pensja = 100;
C. UPDATE pracownicy SET pensja = pensja +100;
D. UPDATE pensja SET 100;
W celu podniesienia pensji wszystkim pracownikom o 100 zł, zastosowanie ma polecenie SQL UPDATE. Poprawna instrukcja 'UPDATE pracownicy SET pensja = pensja + 100;' działa na zasadzie modyfikacji istniejących wartości w kolumnie 'pensja' w tabeli 'pracownicy'. Ta konstrukcja przyjmuje bieżącą wartość pensji każdego pracownika i dodaje do niej 100 zł. Jest to standardowa praktyka w SQL, gdzie używamy operatora '+', aby zmodyfikować dane. Warto pamiętać, że takie operacje są powszechnie wykorzystywane w systemach baz danych do aktualizacji informacji, co pozwala na efektywne zarządzanie danymi. Dla porównania, instrukcje SELECT, które służą do pobierania danych, nie są odpowiednie w tym kontekście. W rezultacie każdy pracownik w tabeli otrzyma nową, zwiększoną pensję, co odzwierciedli aktualizację w bazie danych.

Pytanie 9

Określ, w jaki sposób należy odnosić się do pliku default.css, jeżeli index.html znajduje się bezpośrednio w folderze Strona?

Ilustracja do pytania
A. <link rel="stylesheet" type="text/css" href="c:/style/default.css" />
B. <link rel="stylesheet" type="text/css" href="...\style\default.css" />
C. <link rel="stylesheet" type="text/css" href="c:\style/default.css" />
D. <link rel="stylesheet" type="text/css" href="./style/default.css" />
Poprawna odpowiedź wskazuje na relatywną ścieżkę do pliku CSS. W HTML, stosowanie ścieżek relatywnych jest standardem i dobrą praktyką. Relatywna ścieżka ./style/default.css oznacza, że plik default.css znajduje się w folderze style, który jest bezpośrednio wewnątrz katalogu, w którym znajduje się plik index.html. Stosowanie relatywnych ścieżek zapewnia większą elastyczność i przenośność projektu, ponieważ nie są one zależne od struktury folderów na danym komputerze. Jest to szczególnie ważne w kontekście aplikacji webowych, które mogą być przenoszone między różnymi środowiskami serwerowymi. Zaleca się, aby projektanci stron zawsze używali ścieżek relatywnych, aby uniknąć problemów z odwoływaniem się do zasobów po zmianie lokalizacji projektu. Użycie poprawnej składni w tagu link, jak rel=stylesheet oraz type=text/css, zgodnie z dobrymi praktykami zapewnia poprawne załadowanie stylów CSS, co wpływa na poprawne wyświetlanie się strony w przeglądarkach.

Pytanie 10

Jakie zapytanie pozwoli Administratorowi cofnąć uprawnienia do przeglądania oraz modyfikacji danych w bazie gazeta dla użytkownika redaktor?

A. REVOKE SELECT, ALTER ON gazeta.* FROM 'redaktor'@'localhost';
B. GRANT SELECT, ALTER ON gazeta.* TO 'redaktor'@'localhost';
C. GRANT SELECT, UPDATE ON gazeta.* TO 'redaktor'@'localhost';
D. REVOKE SELECT, UPDATE ON gazeta.* FROM 'redaktor'@'localhost';
Wybrana odpowiedź jest poprawna, ponieważ polecenie REVOKE służy do odbierania wcześniej przyznanych uprawnień użytkownikowi w systemie zarządzania bazą danych. W tym przypadku, REVOKE SELECT, UPDATE ON gazeta.* FROM 'redaktor'@'localhost'; skutecznie odbiera prawo do przeglądania (SELECT) oraz aktualizacji (UPDATE) danych w bazie danych 'gazeta' dla użytkownika 'redaktor'. Przykładowe zastosowanie tego zapytania może mieć miejsce w sytuacji, gdy redaktor przestaje pełnić swoją funkcję i nie powinien już mieć dostępu do tych informacji. Standardową praktyką w zarządzaniu dostępem do baz danych jest stosowanie zasady najmniejszych uprawnień, co oznacza, że użytkownik powinien mieć tylko te uprawnienia, które są mu niezbędne do wykonywania swoich obowiązków. W przypadku, gdy konieczne jest zmodyfikowanie uprawnień, zamiast usuwania użytkownika, łatwiej jest po prostu odebrać mu konkretne prawa, co jest dokładnie tym, co robi to polecenie.

Pytanie 11

Dana jest tabela firmy zawierająca następujące kolumny: nazwa, adres, NIP, obrot (obrót w ostatnim miesiącu), rozliczenie, status. Wykonanie kwerendy SQL SELECT sprawi, że zostaną wyświetlone

SELECT nazwa, NIP FROM firmy WHERE obrot < 4000;
A. wszystkie dane firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
B. wszystkie dane firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
C. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót co najmniej 4000 zł.
D. jedynie nazwa oraz numer NIP firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł.
Twoja odpowiedź jest poprawna. Przy wykonywaniu zapytań SQL często wybieramy nie wszystkie, a jedynie niektóre kolumny z tabeli. W tym przypadku, pytanie dotyczyło wybrania tylko nazwy i NIPu firm, które w ostatnim miesiącu miały obrót mniejszy niż 4000 zł. Do realizacji tego zadania użyliśmy kwerendy SELECT z określeniem kolumn oraz warunku w klauzuli WHERE. Jest to częsty scenariusz w praktyce, gdy potrzebujemy wyfiltrować dane według określonych kryteriów. Ważne jest zrozumienie, że instrukcja SELECT jest używana do wybrania jednej lub wielu kolumn, które chcemy zobaczyć w wynikach, a klauzula WHERE służy do definiowania warunków, które muszą spełniać dane wyświetlane w wynikach.

Pytanie 12

Systemy CMS charakteryzują się

A. możliwością programowania w zaawansowanych frameworkach dla aplikacji Web.
B. wbudowanym edytorem grafiki wektorowej.
C. wbudowanym serwerem poczty elektronicznej.
D. możliwością edycji treści bez konieczności znajomości HTML.
Poprawnie wskazana cecha CMS to możliwość edycji treści bez konieczności znajomości HTML. Właśnie po to powstały systemy zarządzania treścią: żeby osoba nietechniczna, np. pracownik działu marketingu czy sekretariat, mogła samodzielnie aktualizować stronę WWW. W typowym CMS (WordPress, Joomla, Drupal) mamy edytor WYSIWYG przypominający Worda: pogrubienie, nagłówki, listy, wstawianie obrazków, linków. Cały kod HTML generuje się w tle automatycznie. Użytkownik widzi tekst i przyciski, a nie znaczniki typu <div>, <p> czy <a>. Z mojego doświadczenia to ogromne ułatwienie w firmach, gdzie programista nie ma czasu na każdą drobną zmianę w treści. Dobra praktyka jest taka, żeby w CMS rozdzielać warstwę treści (content) od warstwy prezentacji (szablony, CSS). Administrator, redaktor czy copywriter pracuje na treści, a programista i frontendowiec dbają o wygląd i logikę. Dzięki temu aktualizacja np. cennika, aktualności czy opisów produktów nie wymaga dotykania kodu strony. Co więcej, nowoczesne CMS-y stosują mechanizmy wersjonowania treści, workflow publikacji, uprawnienia użytkowników. Wszystko nadal bez konieczności pisania HTML, choć oczywiście możliwość podejrzenia i ręcznej edycji kodu często jest dostępna dla bardziej zaawansowanych użytkowników. W praktyce: jeśli ktoś umie obsłużyć edytor tekstu, to po krótkim przeszkoleniu zwykle bez problemu poradzi sobie z podstawową obsługą CMS i edycją treści na stronie WWW.

Pytanie 13

Czym jest DBMS?

A. Kaskadowy arkusz stylów do opisu wyglądu witryny www
B. Obiektowy język programowania służący do tworzenia stron www
C. System zarządzania bazą danych
D. Strukturalny język zapytań do bazy danych
DBMS, czyli System Zarządzania Bazą Danych, to oprogramowanie, które umożliwia tworzenie, zarządzanie i manipulowanie danymi w bazach danych. Pozwala na efektywne przechowywanie, organizowanie i odzyskiwanie informacji, co jest kluczowe w każdej aplikacji wymagającej przetwarzania danych. Przykłady popularnych systemów DBMS to MySQL, PostgreSQL oraz Oracle Database. DBMS zapewnia nie tylko bezpieczeństwo danych, lecz także umożliwia współdzielenie informacji między użytkownikami. Stosuje mechanizmy kontroli dostępu, co chroni dane przed nieautoryzowanym dostępem. Dobre praktyki w zarządzaniu bazą danych obejmują normalizację danych, co zapobiega redundancji i poprawia integralność danych. W przypadku rosnących zbiorów danych, DBMS wspiera także skalowalność, co jest niezbędne w aplikacjach internetowych, gdzie liczba użytkowników może przeszło wzrosnąć. Ponadto, DBMS wykorzystuje język SQL (Structured Query Language) do wykonywania zapytań, co jest standardem branżowym dla interakcji z bazami danych.

Pytanie 14

W diagramie ER powiązanie między dwoma zbiorami encji nazywamy

A. dziedziną.
B. związkiem.
C. atrybutem.
D. krotką.
Poprawna odpowiedź to „związek”, bo w diagramie ER (Entity-Relationship) właśnie tak nazywamy powiązanie między dwoma zbiorami encji. Mamy encje, czyli zbiory obiektów z rzeczywistości, na przykład „Klient” i „Zamówienie”, a pomiędzy nimi rysujemy relację: „Klient składa Zamówienie”. Ta linia, często z nazwą i krotnością (1:1, 1:N, N:M), to właśnie związek. W notacji Chen’a czy notacji Crow’s Foot zawsze chodzi o to samo: formalne opisanie, jak dane z jednego zbioru encji są powiązane z danymi z innego zbioru. W praktyce projektowania baz danych związek w diagramie ER prawie zawsze przekłada się na relację w modelu relacyjnym: albo na klucz obcy (np. tabela zamówienia ma kolumnę klient_id), albo na dodatkową tabelę asocjacyjną przy relacjach wiele‑do‑wielu (np. tabela produkt_zamówienie). Moim zdaniem ważne jest, żeby od początku myśleć o związku nie tylko jako o kresce na diagramie, ale jako o czymś, co później będzie miało konkretne odwzorowanie w SQL, w kluczach obcych, indeksach i ograniczeniach integralności. Z punktu widzenia dobrych praktyk branżowych, poprawne modelowanie związków to podstawa: pozwala zadbać o integralność referencyjną, unikać duplikacji danych i poprawnie odzwierciedlić reguły biznesowe. Na przykład relacja 1:N między Klientem a Zamówieniem jasno mówi, że jedno zamówienie należy do dokładnie jednego klienta, ale klient może mieć wiele zamówień. Dzięki temu, gdy później piszesz kwerendy SQL, dokładnie wiesz, jak łączyć tabele za pomocą JOIN i które klucze obce są obowiązkowe. W praktyce w firmach, które poważnie podchodzą do projektowania baz, diagram ER z dobrze opisanymi związkami jest normalnym elementem dokumentacji technicznej i ułatwia współpracę między programistami, analitykami i administratorami baz danych.

Pytanie 15

Naciśnięcie przycisku o nazwie "niebieski" spowoduje uruchomienie podanego kodu JavaScript. Jaki będzie rezultat jego działania?

Ilustracja do pytania
A. Zmiana koloru tekstu "Przykładowy tekst" na niebieski
B. Zmiana koloru tekstu "Przykładowy tekst i skrypt" na niebieski
C. Zmiana koloru przycisku na niebieski
D. Zmiana koloru tekstu "i skrypt" na niebieski
Kod JavaScript przedstawiony w pytaniu korzysta z funkcji changeColor, która zmienia kolor tekstu elementu HTML. Funkcja ta przyjmuje parametr newColor, który w tym przypadku wynosi 'blue'. W momencie kliknięcia przycisku z atrybutem onClick, funkcja changeColor jest wywoływana z argumentem 'blue'. Kod wewnątrz funkcji używa metody document.getElementById aby uzyskać dostęp do elementu HTML o identyfikatorze 'para1'. Następnie zmienia kolor tekstu tego elementu, korzystając z właściwości style.color, na wartość przekazaną jako parametr, czyli 'blue'. Takie podejście jest zgodne z dobrymi praktykami w JavaScript, gdzie oddziela się logikę skryptu od treści HTML. W efekcie, po kliknięciu przycisku, zmieniony zostanie kolor tekstu zawartego w elemencie o id 'para1', co w tym przypadku odnosi się do tekstu 'Przykładowy tekst'. Takie rozwiązania są powszechnie stosowane w dynamicznych aplikacjach webowych, umożliwiając dynamiczną interakcję użytkownika z zawartością strony.

Pytanie 16

Które spośród poniższych zdań dotyczących definicji funkcji umieszczonej w ramce jest prawidłowe?

function czytajImie(){
var imie=null;
do{
imie=prompt("podaj imie: ");
if(imie.length<3) alert("wprowadzony tekst jest niepoprawny");
}while(imie.length<3);
}
A. Wczytywanie tekstu zakończy się, gdy tekst będzie się składał przynajmniej z 3 znaków
B. Funkcja zawiera pętlę, która powtarza się 3 razy
C. Pętla wykona się tylko jeden raz
D. Tekst będzie odczytywany do chwili, gdy podana zostanie liczba większa niż 3
Prawidłowa odpowiedź odnosi się do warunku zakończenia pętli do while w języku JavaScript. Pętla ta wykonuje się co najmniej raz, ponieważ najpierw wykonuje blok kodu, a dopiero potem sprawdza warunek. W tym przypadku, użytkownik jest proszony o wprowadzenie tekstu reprezentującego imię. Instrukcja if sprawdza, czy wprowadzone imię ma mniej niż 3 znaki. Jeśli tak, pojawia się komunikat, że tekst jest nieprawidłowy, a pętla ponownie prosi o podanie imienia. Proces ten powtarza się, dopóki użytkownik nie wprowadzi imienia o długości co najmniej 3 znaków. Jest to typowa technika walidacji danych wejściowych, zapewniająca, że użytkownik wprowadzi wartości spełniające określone kryteria. Taki sposób walidacji jest stosowany w aplikacjach wymagających dokładności danych wejściowych, zwłaszcza w formularzach internetowych, gdzie poprawność danych jest kluczowa. Praktyka ta pomaga w zapewnieniu, że dane są kompletne i zgodne z wymaganiami biznesowymi, co jest istotne w programowaniu front-end.

Pytanie 17

Aby uruchomić skrypt JavaScript, potrzebne jest oprogramowanie

A. przeglądarki internetowej
B. debuggera JavaScript
C. serwera WWW
D. serwera MySQL
Aby uruchomić skrypt JavaScript, niezbędne jest posiadanie przeglądarki internetowej, która obsługuje JavaScript. Przeglądarki takie jak Chrome, Firefox, Safari czy Edge zawierają silniki JavaScript, które interpretują i wykonują skrypty na stronach internetowych. Przykładowo, gdy użytkownik wchodzi na stronę internetową, która wykorzystuje JavaScript do dynamicznego ładowania treści lub interakcji z użytkownikiem, przeglądarka przetwarza skrypty w czasie rzeczywistym, co wpływa na doświadczenie użytkownika. Przeglądarki regularnie aktualizują swoje silniki, co przyczynia się do poprawy wydajności i bezpieczeństwa. Dodatkowo, korzystanie z narzędzi deweloperskich w przeglądarkach, takich jak konsola JavaScript, umożliwia programistom testowanie i debugowanie skryptów w łatwy sposób. W kontekście standardów webowych, JavaScript jest kluczowym elementem technologii front-end, współpracując z HTML i CSS, aby zapewnić interaktywność i responsywność stron internetowych. Warto również zauważyć, że niektóre frameworki, takie jak React czy Angular, również opierają się na JavaScript, co podkreśla jego znaczenie w nowoczesnym web developmencie.

Pytanie 18

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

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

Pytanie 19

Obraz o rozdzielczości 72 PPI oznacza, że ma 72 piksele na

A. megabajt.
B. centymetr.
C. milimetr.
D. cal.
PPI (Pixels Per Inch) dosłownie oznacza „piksele na cal” i jest standardową jednostką opisującą gęstość pikseli w obrazie rastrowym. Czyli obraz o rozdzielczości 72 PPI ma 72 piksele ułożone w jednym calu długości, zarówno w pionie, jak i w poziomie. Cal to jednostka długości używana głównie w krajach anglosaskich i właśnie ona jest przyjętym standardem w grafice komputerowej, drukarkach, monitorach i specyfikacjach urządzeń. W praktyce, gdy projektujesz grafikę do internetu, bardzo często widzi się właśnie wartość 72 lub 96 PPI, ale trzeba mieć świadomość, że dla wyświetlania na ekranie ważniejsza jest liczba pikseli (np. 1920×1080), a nie sama liczba PPI. PPI ma większe znaczenie, gdy przygotowujesz projekt do druku. Typowa dobra praktyka poligraficzna to 300 PPI dla druku wysokiej jakości (np. ulotki, plakaty, katalogi). Wtedy oznacza to 300 pikseli na jeden cal, czyli znacznie większą szczegółowość niż przy 72 PPI. Moim zdaniem warto od razu kojarzyć: PPI = piksele na cal (ekran, grafika rastrowa), a DPI (dots per inch) = kropki na cal (drukarka, fizyczne krople tuszu lub punkty tonera). W codziennej pracy te pojęcia są często mylone, ale w profesjonalnym środowisku graficznym dobrze jest je rozróżniać. Podsumowując: poprawna odpowiedź „cal” wynika z samej definicji skrótu PPI i z przyjętych w branży standardów opisu rozdzielczości obrazu.

Pytanie 20

Aby poprawić wydajność strony z grafiką o wymiarach 2000 px na 760 px, konieczne jest zmniejszenie jej rozmiarów

A. za pomocą właściwości CSS, podając rozmiar w pikselach
B. za pomocą atrybutów HTML
C. w programie graficznym
D. za pomocą właściwości CSS, podając rozmiar w procentach
Odpowiedź "w programie graficznym" jest prawidłowa, ponieważ zmniejszenie rozmiaru grafiki w sposób, który rzeczywiście wpływa na jej wielkość pliku oraz jakość wizualną, powinno być przeprowadzane w programie graficznym. Programy takie jak Adobe Photoshop, GIMP czy Canva umożliwiają precyzyjne dostosowanie wymiarów oraz kompresję grafiki, co pozwala na optymalizację jej do użytku w internecie. Przykładowo, zmieniając rozmiar grafiki do wymiarów 1000 px na 380 px i zapisując ją w odpowiednim formacie (np. JPEG lub PNG z odpowiednią jakością), można znacznie zmniejszyć wielkość pliku, co przyczyni się do szybszego ładowania strony. Ponadto, odpowiednia kompresja umożliwia zachowanie dobrego balansu między jakością a rozmiarem pliku, co jest istotne dla doświadczeń użytkowników. W branży internetowej stosuje się różne techniki optymalizacji grafiki, takie jak lazy loading czy formaty WebP, które wspierają szybkie ładowanie stron. Warto również zwrócić uwagę na znaczenie odpowiedniej rozdzielczości grafiki, aby uniknąć zniekształceń i zapewnić optymalną jakość wizualną.

Pytanie 21

Zamieszczony kod HTML formularza zostanie wyświetlony przez przeglądarkę w sposób:

<form>
stanowisko: <input type="text"><br>
obowiązki: <br>
<input type="checkbox" name="obowiazek1" value="1" disabled checked>sporządzanie dokumentacji<br>
<input type="checkbox" name="obowiazek2" value="2" checked>pisanie kodu<br>
<input type="checkbox" name="obowiazek3" value="3">testy oprogramowania<br>
</form>

A.

stanowisko: obowiązki: sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

B.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

C.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania

D.

stanowisko:
obowiązki:
sporządzanie dokumentacji
pisanie kodu
testy oprogramowania
A. C.
B. B.
C. D.
D. A.
Dokładnie tak powinien wyglądać ten formularz! Zwróć uwagę, jak HTML interpretuje znaczniki <br> – one wymuszają przejście do nowej linii, więc w kodzie wyjściowym każda sekcja obowiązków pojawi się osobno, pod sobą. To, że jeden z checkboxów ma atrybuty disabled oraz checked, powoduje, że jest domyślnie zaznaczony, ale nie można go odznaczyć ani zaznaczyć ponownie – to ważny niuans, bo czasem zapomina się, że disabled nie oznacza tylko „wyszarzony”, ale też „nie bierz udziału w wysyłaniu formularza”. Takie wykorzystanie checkboxów jest powszechne, szczególnie jeśli chcesz pokazać użytkownikowi pewne stałe informacje (np. obowiązek, którego nie można uniknąć). Z mojego doświadczenia, bardzo często w praktycznych projektach „disabled” stosuje się np. przy wymaganych oświadczeniach, gdzie użytkownik ma tylko do wglądu informację, że coś już jest włączone i nie może tego zmienić. No i jeszcze – checked przy pisaniu kodu powoduje, że checkbox jest domyślnie zaznaczony, co jest zgodne z kodem źródłowym. Same nazwy pól (czyli atrybuty name i value) zostaną wysłane do serwera tylko dla tych pól, które nie są disabled i użytkownik je zaznaczył. To też jest bardzo praktyczna rzecz, bo pozwala precyzyjnie sterować tym, co trafia do backendu. Moim zdaniem taka forma zapisu formularza to dobry punkt wyjścia do dalszej rozbudowy – łatwo dodać tutaj walidację, obsługę JavaScript czy zastosować style CSS. Trzymanie się tej składni ułatwia też potem pracę zespołową, bo jest czytelna i zgodna z oczekiwaniami innych programistów. Podsumowując, wybrałeś opcję najbliższą temu, co wyświetli przeglądarka na bazie danego kodu HTML – i to jest podejście zgodne ze standardami, doceniane w branży.

Pytanie 22

Aby określić styl czcionki w CSS, należy zastosować właściwość

A. text-style
B. text-family
C. font-style
D. font-family
Właściwość CSS 'font-family' jest kluczowym elementem definiowania kroju czcionki w stylach CSS. Umożliwia ona określenie, jaki krój czcionki ma być użyty dla danego elementu na stronie. Możemy podać pojedynczy krój czcionki, na przykład 'Arial', lub listę alternatywnych krojów, jak 'Helvetica, sans-serif', co zapewnia większą elastyczność w przypadku, gdy wybrany krój nie jest dostępny na urządzeniu użytkownika. Zaleca się również stosowanie nazw krojów czcionek w postaci cudzysłowów, zwłaszcza jeśli nazwa zawiera spacje, jak 'Times New Roman'. Zgodnie z najlepszymi praktykami, dobór odpowiedniego kroju czcionki jest kluczowy dla czytelności i estetyki strony, dlatego warto przeprowadzić testy A/B, aby sprawdzić, które krój czcionki lepiej wpływa na doświadczenia użytkowników. Oprócz 'font-family', warto również zwrócić uwagę na inne właściwości, takie jak 'font-size', 'font-weight' czy 'line-height', które wspólnie kształtują wygląd tekstu na stronie.

Pytanie 23

Polecenie serwera MySQL postaci

REVOKE DELETE, UPDATE ON pracownicy FROM 'tKowal'@'localhost'
sprawi, że użytkownikowi tKowal zostaną
A. przydzielone uprawnienia do wszelkiej zmiany struktury tabeli pracownicy
B. odebrane uprawnienia usuwania i modyfikowania danych w tabeli pracownicy
C. odebrane uprawnienia usuwania i dodawania rekordów w tabeli pracownicy
D. przydzielone uprawnienia do usuwania i aktualizowania danych w tabeli pracownicy
Polecenie REVOKE w systemie zarządzania bazą danych MySQL jest używane do odebrania przydzielonych wcześniej uprawnień użytkownikowi lub grupie użytkowników. W przypadku instrukcji REVOKE DELETE, UPDATE ON pracownicy FROM 'tKowal'@'localhost', użytkownik 'tKowal' traci prawa do usuwania (DELETE) oraz aktualizowania (UPDATE) danych w tabeli 'pracownicy'. Przykładowo, jeśli wcześniej użytkownik 'tKowal' miał możliwość usuwania rekordów pracowników i modyfikacji ich danych, po wykonaniu tej instrukcji te uprawnienia zostaną odebrane. Ważne jest, aby zrozumieć, że REVOKE nie wpływa na inne uprawnienia, które użytkownik mógł posiadać, a jego działanie jest ograniczone do wymienionych operacji w kontekście konkretnej tabeli. W MySQL istnieje także możliwość przydzielania uprawnień za pomocą komendy GRANT, co stanowi odwrotność do REVOKE. Dokumentacja MySQL szczegółowo opisuje te mechanizmy, a ich właściwe użycie jest istotne dla bezpieczeństwa i administracji bazami danych. Aby lepiej zrozumieć praktyczne zastosowanie tych komend, można zapoznać się z przykładami na oficjalnej stronie MySQL, które ilustrują, jak zarządzać uprawnieniami użytkowników w różnych scenariuszach.

Pytanie 24

Etap, w którym identyfikuje się oraz eliminuje błędy w kodzie źródłowym programów, to

A. kompilowanie
B. standaryzacja
C. normalizacja
D. debugowanie
Debugowanie to proces identyfikacji, analizy i eliminacji błędów w kodzie źródłowym programów komputerowych. Jest to kluczowy etap w cyklu życia oprogramowania, który zapewnia, że aplikacje działają zgodnie z założeniami projektowymi. W praktyce debugowanie może obejmować różne techniki, takie jak stosowanie punktów przerwania, śledzenie wartości zmiennych czy analiza stosu wywołań. Przykładowo, programista może użyć narzędzi debugujących, takich jak GDB dla programów w C/C++ lub wbudowane debugery w IDE, takie jak Visual Studio czy Eclipse. Debugowanie jest również związane z dobrymi praktykami, jak testowanie jednostkowe i integracyjne, które pozwalają na wczesne wykrycie błędów. Zrozumienie i umiejętność efektywnego debugowania jest niezbędna dla każdego programisty, aby tworzyć wysokiej jakości, niezawodne i wydajne oprogramowanie. Warto również podkreślić znaczenie dokumentacji oraz korzystania z systemów kontroli wersji, takich jak Git, które pozwalają śledzić zmiany w kodzie i ułatwiają proces debugowania.

Pytanie 25

Którą funkcję z menu Kolory programu GIMP użyto, w celu uzyskania efektu przedstawionego w filmie?

A. Progowanie.
B. Barwienie.
C. Inwersja.
D. Krzywe.
Prawidłowo wskazana funkcja to „Progowanie”, bo dokładnie ona zamienia obraz kolorowy lub w odcieniach szarości na obraz dwuwartościowy: piksel jest albo czarny, albo biały, w zależności od tego, czy jego jasność przekracza ustawiony próg. W GIMP-ie znajdziesz ją w menu Kolory → Progowanie. Suwakami ustalasz zakres poziomów jasności, które mają zostać potraktowane jako „białe”, a wszystko poza tym zakresem staje się „czarne”. Efekt, który się wtedy uzyskuje, jest bardzo charakterystyczny: mocno kontrastowy, bez półtonów, coś w stylu skanu czarno-białego lub grafiki do druku na ploterze tnącym. Z mojego doświadczenia progowanie świetnie nadaje się do przygotowania logotypów, szkiców technicznych, schematów, a także do wyciągania konturów z lekko rozmytych zdjęć. Często używa się go też przed wektoryzacją, żeby program śledzący krawędzie miał wyraźne granice między czernią a bielą. W pracy z grafiką na potrzeby stron WWW próg bywa stosowany np. przy tworzeniu prostych ikon, piktogramów albo masek (maski przezroczystości można przygotować właśnie na bazie obrazu progowanego). Dobrą praktyką jest najpierw sprowadzenie obrazu do odcieni szarości i dopiero potem użycie progowania, bo wtedy masz większą kontrolę nad tym, jak rozkłada się jasność i gdzie wypadnie granica progu. Warto też pamiętać, że progowanie jest operacją destrukcyjną – traci się informacje o półtonach – więc najlepiej pracować na kopii warstwy, żeby w razie czego móc wrócić do oryginału i poprawić ustawienia progu.

Pytanie 26

Element

<meta charset="utf-8">
służy do definiowania metadanych witryny internetowej związanych z
A. językiem witryny
B. opisem witryny
C. słowami kluczowymi
D. kodowaniem znaków
Element <meta charset="utf-8"> jest kluczowym fragmentem kodu HTML, który definiuje kodowanie znaków używane na stronie internetowej. Ustawienie kodowania na UTF-8 jest obecnie standardem branżowym, który pozwala na prawidłowe wyświetlanie tekstów w różnych językach, a także obsługę różnorodnych znaków specjalnych. Dzięki temu strona będzie renderować się poprawnie niezależnie od używanego języka, co jest szczególnie istotne w kontekście globalizacji i dostępności treści dla szerokiego grona użytkowników. W praktyce, poprawne kodowanie znaków eliminuje problemy z wyświetlaniem polskich znaków diakrytycznych, takich jak ą, ć, ę, ł czy ź. Warto także zauważyć, że błędne ustawienie kodowania może prowadzić do tzw. "krzaków" w treści, co znacząco obniża jakość prezentacji strony oraz jej użyteczność. Dlatego zaleca się zawsze stosować <meta charset="utf-8"> w nagłówku dokumentu HTML, aby zapewnić pełną kompatybilność i poprawność wyświetlania treści w różnych przeglądarkach i systemach operacyjnych.

Pytanie 27

W języku CSS, aby zdefiniować marginesy zewnętrzne o wartościach: margines górny i dolny 20 px, lewy i prawy 40 px należy użyć kodu

A. margin: 20px 20px 40px 40px;
B. margin: 20px 40px 40px 20px;
C. margin: 40px 20px;
D. margin: 20px 40px;
Problem z tym pytaniem wynika głównie z mylenia kolejności wartości w skróconej notacji margin oraz z intuicyjnego założenia, że pierwsza liczba odnosi się do lewej strony, a druga do prawej. W CSS skrócone zapisy mają bardzo konkretną i stałą semantykę, którą warto sobie poukładać raz, a porządnie. Dwie wartości w margin nie oznaczają lewo/prawo i góra/dół, tylko zawsze: pierwsza – góra i dół, druga – lewo i prawo. Jeśli ktoś wybiera margin: 40px 20px;, to w praktyce ustawia 40px na górze i na dole oraz 20px po lewej i po prawej. To jest dokładne przeciwieństwo tego, co było wymagane w treści pytania. Taki błąd często wynika z myślenia „poziomo”: najpierw lewo-prawo, potem góra-dół, a CSS idzie inną logiką. Kolejne nieporozumienie dotyczy zapisów z czterema wartościami. Wiele osób ma problem z zapamiętaniem kolejności. Standard CSS definiuje to jasno: gdy podajemy cztery liczby, interpretacja idzie zgodnie z ruchem wskazówek zegara, zaczynając od góry: top, right, bottom, left. Czyli margin: 20px 20px 40px 40px; oznacza: góra 20px, prawo 20px, dół 40px, lewo 40px. W pytaniu chcemy: góra 20px, dół 20px, lewo 40px, prawo 40px, więc ten zapis nie spełnia warunku, bo wartości dla prawej strony są inne niż dla lewej, a górna różni się od dolnej. Podobnie margin: 20px 40px 40px 20px; rozwija się do: 20px na górze, 40px po prawej, 40px na dole, 20px po lewej. Tutaj symetria jest odwrotna: góra i lewo mają 20px, a dół i prawo 40px. Z mojego doświadczenia typowy błąd polega na tym, że ktoś próbuje „na czuja” dopasować liczby, zamiast trzymać się sztywnej reguły: 2 wartości – góra/dół oraz lewo/prawo, 4 wartości – góra, prawo, dół, lewo. W efekcie kod może nawet wyglądać sensownie na pierwszy rzut oka, ale przeglądarka zinterpretuje go zupełnie inaczej, niż autor zakładał. Dlatego warto myśleć o margin w kontekście box modelu i specyfikacji, a nie tylko wizualnie. Dobra praktyka jest taka, żeby przy bardziej skomplikowanych odstępach na początku rozpisywać margin-top, margin-right, margin-bottom, margin-left osobno, a dopiero potem, gdy mamy pewność, zamieniać to na skróconą notację. To ogranicza liczbę takich subtelnych, ale uciążliwych pomyłek w layoutach.

Pytanie 28

W dostępnej tabeli o nazwie przedmioty znajdują się pola: ocena oraz uczenID. Jakie zapytanie należy wykonać, aby obliczyć średnią ocenę ucznia z ID równym 7?

A. SELECT COUNT(ocena) FROM przedmioty WHERE uczenID = 7;
B. COUNT SELECT ocena FROM przedmioty WHERE uczenID = 7;
C. SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7;
D. AVG SELECT ocena FROM przedmioty WHERE uczenID = 7;
Odpowiedź "SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7;" jest poprawna, ponieważ zastosowanie funkcji agregującej AVG pozwala na obliczenie średniej wartości ocen dla ucznia o konkretnym identyfikatorze. W SQL, funkcje agregujące, takie jak AVG, COUNT, SUM, MIN i MAX, są kluczowymi narzędziami do analizy i przetwarzania danych. W tym przypadku, AVG oblicza średnią wartość pól 'ocena' w tabeli 'przedmioty', gdzie spełniony jest warunek 'uczenID = 7'. To podejście jest zgodne z najlepszymi praktykami w SQL, które zalecają ograniczenie zbioru danych przed zastosowaniem funkcji agregujących, aby wyniki były precyzyjne i użyteczne. Przykładowo, jeśli w przyszłości chcielibyśmy obliczyć średnią ocen dla innych uczniów, moglibyśmy zmieniać wartość 'uczenID', co czyni to zapytanie bardzo elastycznym. Ponadto, umiejętność korzystania z funkcji agregujących jest niezbędna w kontekście analizy danych w systemach baz danych, co czyni tę wiedzę fundamentalną w pracy z SQL.

Pytanie 29

Zademonstrowano fragment kodu JavaScript. Po jego uruchomieniu zmienna str2 otrzyma wartość. ```var str1 = "JavaScript"; var str2 = str1.substring(2, 6);```

A. vaScri
B. avaS
C. avaScr
D. vaSc
Pierwsza z niepoprawnych odpowiedzi 'avaS' sugeruje, że odczytujemy znaki zaczynając od drugiego indeksu, jednak końcowy indeks 6 zmienia sposób odczytu. Możliwe, że ktoś mógł pomylić kolejność lub sposób, w jaki substring działa, co jest częstym błędem w zrozumieniu tej metody. Druga odpowiedź 'vaScri' wydaje się sugerować, że ktoś zrozumiał, jak działa substring, ale błędnie wyznaczył końcowy indeks, co prowadzi do wyodrębnienia znacznie większej ilości znaków. W rzeczywistości, aby uzyskać 'vaScri', należałoby użyć indeksów 2 i 8, co również jest nieprawidłowe. Ostatnia niepoprawna odpowiedź 'avaScr' wskazuje na błędne wyznaczenie pierwszego znaku. Użytkownik mógł pomylić interpretację indeksu zaczynając od 0, co w JavaScript jest istotne. W kontekście całego łańcucha, odpowiedzi te pokazują, jak ważne jest zrozumienie indeksowania i prawidłowego użycia metod do manipulacji tekstem, aby unikać błędów w kodzie. Rozwój umiejętności w pracy z łańcuchami tekstowymi jest kluczowy dla efektywnego programowania w JavaScript.

Pytanie 30

W formularzu wartość z pola input o typie number została przypisana do zmiennej a, a następnie przetworzona w skrypcie JavaScript w sposób poniższy

var x = parseInt(a);

Jakiego typu jest zmienna x?

A. liczbowe, całkowite.
B. NaN
C. napisowego.
D. zmiennoprzecinkowego.
Odpowiedź "liczbowego, całkowitego" jest poprawna, ponieważ funkcja <span>parseInt()</span> w JavaScript konwertuje argument na liczbę całkowitą. Kiedy zmienna <span>a</span> zawiera wartość z pola <span>input</span> o typie <span>number</span>, to ta wartość jest już reprezentacją liczby, co oznacza, że <span>parseInt()</span> przyjmuje ją jako argument i zwraca wartość liczbową całkowitą. Przykładowo, jeżeli użytkownik wprowadzi 42, to <span>parseInt(42)</span> zwróci 42 jako liczbę całkowitą. Dobrą praktyką jest używanie <span>parseInt()</span> z drugim argumentem, który określa system liczbowy (np. <span>parseInt(a, 10)</span>), co zapobiega niejednoznaczności w interpretacji liczby. Warto również pamiętać, że w przypadku, gdy wartość wprowadzona do <span>a</span> nie jest liczbą całkowitą, <span>parseInt()</span> nadal zwróci liczbę całkowitą, obcinając część dziesiętną (np. <span>parseInt(4.9)</span> zwróci 4). Dlatego w kontekście powyższego pytania, zmienna <span>x</span> przyjmuje typ liczbowy, całkowity.

Pytanie 31

Aby przekształcić obraz w formacie PNG tak, by jego tło stało się przezroczyste, wymagane jest

A. dodanie kanału alfa.
B. ulepszenie nasycenia kolorów.
C. odpowiednie przycięcie.
D. zapisanie go w formacie BMP.
Dodanie kanału alfa do obrazu w formacie PNG jest kluczowe dla uzyskania przezroczystego tła. Kanał alfa to dodatkowa warstwa informacji w obrazie, która definiuje przezroczystość każdego piksela. Dzięki niemu, obrazy PNG mogą przechowywać informacje o tym, które części obrazu są całkowicie przezroczyste, częściowo przezroczyste lub całkowicie nieprzezroczyste. To oznacza, że stosując kanał alfa, możemy tworzyć złożone efekty wizualne, takie jak cienie czy gradienty, które są nieosiągalne w formatach nieobsługujących przezroczystości, jak JPEG. W praktyce, dodanie kanału alfa można zrealizować w programach graficznych, takich jak Adobe Photoshop czy GIMP, za pomocą opcji 'Dodaj kanał alfa' w menu warstw. Umożliwia to edytowanie tła obrazu, eliminację niepożądanych elementów oraz integrację z różnymi tłem w dokumentach i stronach internetowych, co jest szczególnie istotne w projektowaniu graficznym i web designie. Zatem, znajomość obsługi kanału alfa oraz umiejętność pracy z formatem PNG są niezbędne dla profesjonalnych grafików w nowoczesnym środowisku projektowym.

Pytanie 32

Jakie zadania programistyczne należy realizować po stronie serwera?

A. Walidacja danych wpisanych w pole tekstowe w czasie rzeczywistym
B. Ukrywanie oraz odkrywanie elementów strony w zależności od bieżącej pozycji kursora
C. Zapisanie danych pobranych z aplikacji internetowej do bazy danych
D. Zmiana stylu HTML na stronie spowodowana ruchem kursora
Zapis danych z aplikacji internetowej w bazie to super ważna sprawa. Ogólnie mówiąc, to serwer się tym zajmuje. To on trzyma i zarządza informacjami, które wysyłamy, jak się rejestrujemy czy wypełniamy jakieś formularze. Kiedy użytkownik coś wpisuje, te dane muszą lecieć do serwera, gdzie są przetwarzane i lądować w bazie danych. Przykładowo, w relacyjnych bazach danych, jak MySQL czy PostgreSQL, używa się zapytań SQL do zarządzania tymi danymi, co ułatwia ich późniejsze szukanie. Warto też pamiętać o bezpieczeństwie – serwer musi robić walidację danych, żeby nie dać się nabrać na ataki typu SQL Injection. No i architektura MVC świetnie pokazuje, jak ważne jest miejsce serwera dla danych. Zapis danych to po prostu kluczowy element w działaniu aplikacji webowych.

Pytanie 33

Zestaw atrybutów relacji, który w minimalny sposób identyfikuje każdy rekord tej relacji, posiadając wartości unikalne oraz niepuste, określamy mianem klucza

A. złożonego
B. kandydującego
C. głównego
D. obcego
Klucz główny to zestaw atrybutów w relacyjnej bazie danych, który jednoznacznie identyfikuje każdy rekord w danej tabeli. Klucz ten nie tylko musi być unikalny, co oznacza, że jego wartości nie mogą się powtarzać, ale również nie może zawierać wartości pustych. Dzięki tym właściwościom klucz główny jest kluczowym elementem umożliwiającym efektywne zarządzanie danymi oraz zapewniającym integralność bazy danych. Na przykład, w tabeli użytkowników klucz główny może być reprezentowany przez unikalny identyfikator użytkownika (np. ID), co pozwala na łatwe odnalezienie, aktualizację lub usunięcie konkretnego rekordu. W praktyce organizacje stosują klucze główne zgodnie z zasadami normalizacji danych, co pomaga w redukcji redundancji i podnosi jakość danych. Dobrą praktyką jest również stosowanie automatycznego przydzielania wartości klucza za pomocą mechanizmów bazodanowych, takich jak sekcje w SQL, co dodatkowo minimalizuje ryzyko błędów ludzkich. Klucz główny odgrywa także ważną rolę w relacjach między tabelami, ponieważ inne tabele mogą używać tego klucza jako odniesienia w swoich kluczach obcych, co pozwala na tworzenie spójnych i logicznych powiązań między danymi.

Pytanie 34

W SQL przy użyciu kwerendy ALTER można

A. zlikwidować tabelę
B. stworzyć tabelę
C. dodać dane do tabeli
D. zmienić strukturę tabeli
Kwerenda SQL <i>ALTER</i> jest kluczowym narzędziem do modyfikacji istniejących struktur tabel w bazach danych. Umożliwia programistom dostosowanie tabel do zmieniających się wymagań aplikacji lub organizacji. Przykładowo, za pomocą polecenia <i>ALTER TABLE</i> możemy dodać nową kolumnę, usunąć istniejącą, zmienić typ danych kolumny czy również ustawić nowe ograniczenia, takie jak klucze obce. W praktyce, gdy firma rozwija swoje usługi, często zachodzi potrzeba dostosowania struktury bazy danych, co może być realizowane przez odpowiednie kwerendy <i>ALTER</i>. Dobrą praktyką jest również regularne przeglądanie i aktualizowanie struktury bazy danych, aby zapewnić optymalizację wydajności oraz zgodność z wymaganiami biznesowymi. Standard SQL, który definiuje te operacje, jest szeroko używany i uznawany za fundamentalny w pracy z relacyjnymi bazami danych. Znajomość kwerendy <i>ALTER</i> jest zatem niezbędna dla wszystkich, którzy zajmują się administracją baz danych i programowaniem aplikacji opartych na danych.

Pytanie 35

Do podzbioru DML (ang. Data Manipulation Language) języka SQL należą polecenia:

A. CREATE, DROP, ALTER
B. GRANT, REVOKE, DENY
C. BEGIN, COMMIT, ROLLBACK
D. INSERT, UPDATE, DELETE
Prawidłowo – INSERT, UPDATE i DELETE to klasyczne polecenia z podzbioru DML (Data Manipulation Language) w SQL. DML służy do manipulowania danymi już zapisanymi w tabelach, a nie do tworzenia struktury bazy. Można sobie to skojarzyć z pracą na rekordach: dodajemy nowe wiersze, zmieniamy istniejące, usuwamy niepotrzebne. INSERT wstawia nowe rekordy do tabeli, np. gdy zapisujesz nowego użytkownika w systemie logowania: INSERT INTO users(login, haslo) VALUES ('jan', 'tajne');. UPDATE modyfikuje dane, np. zmianę hasła albo adresu e‑mail: UPDATE users SET email='[email protected]' WHERE id=5;. DELETE usuwa rekordy, np. nieaktywne konta: DELETE FROM users WHERE active=0;. W praktyce webowej te trzy polecenia działają zwykle razem z transakcjami i warunkami WHERE, żeby nie „przestrzelić” i nie ruszyć zbyt wielu wierszy. Standard SQL (ANSI/ISO) właśnie te komendy zalicza typowo do DML, obok instrukcji SELECT, która też jest często traktowana jako część DML, ale w wielu materiałach omawia się ją osobno, jako zapytania wybierające dane. Dobra praktyka jest taka, żeby przy UPDATE i DELETE zawsze podawać sensowny warunek WHERE i często używać LIMIT/TRANSACTION, szczególnie w aplikacjach produkcyjnych. Moim zdaniem warto od początku myśleć o DML w kontekście logiki biznesowej aplikacji: formularz rejestracji to INSERT, edycja profilu to UPDATE, usunięcie konta to DELETE – i nagle wszystko układa się w bardzo logiczną całość.

Pytanie 36

Jakim formatem plików dźwiękowych charakteryzuje się kompresja bezstratna?

A. MPEG
B. MP3
C. FLAC
D. WAW
FLAC, czyli Free Lossless Audio Codec, to format dźwiękowy, który kompresuje pliki, ale nie traci przy tym żadnych danych. Dzięki temu jakość dźwięku pozostaje taka sama jak w oryginale, co jest super ważne dla audiofilów i profesjonalnych producentów. Wiesz, FLAC jest popularny wśród miłośników muzyki, bo pozwala na przechowywanie wysokiej jakości utworów w mniejszych plikach niż WAV, który potrafi zająć naprawdę dużo miejsca. Poza tym wiele odtwarzaczy audio i programów do edycji dźwięku obsługuje ten format, więc jest naprawdę uniwersalny. Można też dodawać metadane, czyli informacje o wykonawcy czy albumie, co jest bardzo przydatne. No i nie zapominajmy, że FLAC jest otwartym standardem, co oznacza, że każdy może z niego korzystać bez opłat – to na pewno przyczynia się do jego popularności, zarówno wśród amatorów, jak i profesjonalistów.

Pytanie 37

W relacyjnych bazach danych dane zapisywane są w

A. listach.
B. tabelach.
C. wektorach.
D. kolejkach.
W relacyjnych bazach danych dane są przechowywane w tabelach, bo cały model relacyjny opiera się właśnie na pojęciu tabeli (relacji). Tabela to po prostu uporządkowany zbiór wierszy i kolumn: kolumny opisują strukturę danych (np. id, imię, nazwisko, email), a wiersze przechowują konkretne rekordy, czyli pojedyncze wpisy. Każda kolumna ma określony typ danych, np. INTEGER, VARCHAR, DATE, co pozwala silnikowi bazy danych kontrolować poprawność zapisów i optymalizować zapytania. Tak to działa w typowych systemach jak MySQL, PostgreSQL, SQL Server czy Oracle – wszędzie podstawową jednostką przechowywania danych użytkownika jest tabela. W praktyce, kiedy projektujesz bazę dla sklepu internetowego, tworzysz tabele takie jak users, products, orders, order_items. Potem za pomocą języka SQL wykonujesz na tych tabelach operacje SELECT, INSERT, UPDATE, DELETE. Klucze główne i obce też odnoszą się do tabel – klucz główny jednoznacznie identyfikuje wiersz w tabeli, a klucz obcy wskazuje na wiersz w innej tabeli, tworząc relację między nimi. To właśnie dzięki tabelom i relacjom możesz łączyć dane z wielu miejsc, np. pobrać zamówienia wraz z danymi klienta jednym zapytaniem. Moim zdaniem warto od początku myśleć o tabeli jak o odpowiedniku arkusza w Excelu, tylko z dużo bardziej rygorystycznymi zasadami i możliwością zaawansowanych zapytań. Standard SQL zakłada, że operujemy na relacjach, a w implementacjach relacja = tabela. Dlatego odpowiedź „tabelach” jest zgodna zarówno z teorią modelu relacyjnego, jak i z praktyką codziennej pracy z bazami danych.

Pytanie 38

Do jakiego celu służy certyfikat SSL?

A. deszyfracji danych przesyłanych w sieci
B. zidentyfikowania posiadacza witryny
C. zapisywania informacji o sesjach generowanych w witrynie
D. blokowania złośliwego oprogramowania na stronie
Odpowiedzi związane z blokowaniem szkodliwego oprogramowania, zapisywaniem danych o sesjach oraz deszyfracją transmitowanych danych są niepoprawne w kontekście funkcji certyfikatu SSL. Certyfikat SSL nie ma funkcji blokowania złośliwego oprogramowania, ponieważ jego zadaniem jest zapewnienie bezpieczeństwa komunikacji poprzez szyfrowanie danych. Złośliwe oprogramowanie jest zazwyczaj eliminowane przez oprogramowanie zabezpieczające, a nie przez SSL. W odniesieniu do zapisania danych o sesjach, certyfikat SSL nie przechowuje informacji o sesjach ani o użytkownikach. Sesje są zarządzane przez aplikacje serwerowe, a SSL jedynie zabezpiecza przesyłane dane podczas sesji. Co więcej, SSL nie zajmuje się deszyfracją transmitowanych danych, ponieważ szyfrowanie i deszyfrowanie danych odbywa się w momencie komunikacji, a nie jako osobny proces czy funkcja certyfikatu. SSL działa na zasadzie wymiany kluczy szyfrujących pomiędzy serwerem a klientem, gdzie dane są szyfrowane w momencie przesyłania, a następnie deszyfrowane przez odbiorcę, co również nie jest funkcją certyfikatu, ale całego protokołu zabezpieczeń.

Pytanie 39

W języku JavaScript zapisano kod, którego wynikiem działania jest?
var osoba=prompt("Podaj imię", "Adam");

A. bezpośrednie przypisanie do zmiennej osoba wartości "Adam"
B. uzyskanie z formularza wyświetlonego na stronie HTML imienia "Adam"
C. wyświetlenie okna z polem do edycji, w którym domyślnie znajduje się tekst "Adam"
D. pokazanie okna z pustym polem do edycji
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 40

W zaprezentowanym fragmencie zapytania SQL, instrukcja SELECT ma za zadanie zwrócić

SELECT COUNT(wartosc) FROM ...
A. średniej wartości tabeli
B. suma w kolumnie wartosc
C. liczby rekordów
D. średniej w kolumnie wartosc
Komenda SELECT COUNT w języku SQL jest używana do zwracania liczby wierszy w rezultacie zapytania. Użycie funkcji COUNT z nazwą kolumny, jak w przykładzie SELECT COUNT(wartosc), pozwala policzyć wszystkie niepuste wartości w danej kolumnie wartosc w tabeli. Jest to przydatne w przypadkach, gdy chcemy zrozumieć, ile danych spełnia określone kryteria, lub gdy interesuje nas liczba wierszy zawierających wartości w konkretnej kolumnie. Funkcja COUNT jest jedną z podstawowych funkcji agregujących w SQL, co oznacza, że podsumowuje dane w określony sposób. Stosowanie tej funkcji jest zgodne z najlepszymi praktykami w projektowaniu baz danych, gdzie często potrzebujemy analizować dane w sposób ilościowy. Przykładowo, jeśli prowadzimy bazę danych klientów, możemy użyć SELECT COUNT(id) FROM klienci, aby dowiedzieć się, ilu mamy zarejestrowanych klientów. Ta funkcja jest także kluczowym elementem w optymalizacji zapytań, ponieważ pozwala na szybkie uzyskanie informacji o liczbie rekordów bez konieczności przetwarzania wszystkich danych z tabeli. Zrozumienie działania COUNT i jego zastosowań jest kluczowe dla efektywnego przetwarzania danych i tworzenia wydajnych zapytań w języku SQL.