Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 22 kwietnia 2026 09:06
  • Data zakończenia: 22 kwietnia 2026 09:35

Egzamin zdany!

Wynik: 24/40 punktów (60,0%)

Wymagane minimum: 20 punktów (50%)

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

Jak nazywa się metoda udostępniania bazy danych w programie Microsoft Access, która dotyczy wszystkich obiektów bazy umieszczonych na dysku sieciowym i wykorzystywanych jednocześnie przez kilku użytkowników?

A. serwera bazy danych
B. folderu sieciowego
C. dzielonej bazy danych
D. witryny programu SharePoint
Odpowiedzi, które wskazują na "serwera bazy danych", "dzielonej bazy danych" lub "witryny programu SharePoint", nie są adekwatne w kontekście udostępniania bazy danych w Microsoft Access. Serwer bazy danych to złożony system, który zarządza dużymi zbiorami danych oraz zapewnia ich integralność i bezpieczeństwo, jednak w przypadku Microsoft Access, który jest narzędziem bazodanowym bardziej skomplikowanym niż prostsze rozwiązania, udostępnianie odbywa się głównie za pośrednictwem folderów sieciowych. Dzielona baza danych oznacza, że baza danych jest podzielona na dwie części: jedną na serwerze (backend) i drugą lokalnie na komputerach użytkowników (frontend). Pomimo że ta konstrukcja może być stosowana do zwiększenia wydajności, nie odnosi się bezpośrednio do koncepcji folderu sieciowego jako metody udostępniania. Witryna programu SharePoint jest platformą do współpracy, która pozwala na zarządzanie dokumentami i danymi w chmurze, ale nie jest bezpośrednio związana z mechanizmem udostępniania bazy danych w Microsoft Access. Zrozumienie różnic między tymi podejściami jest kluczowe, ponieważ często prowadzi to do mylnych wniosków dotyczących rozwiązań technologicznych oraz ich zastosowania w praktyce. W kontekście Access, praktyka umieszczania bazy danych w folderze sieciowym jest standardem branżowym, który zwiększa dostępność i ułatwia współpracę w zespole.

Pytanie 2

W hurtowni danych stworzono tabelę sprzedaz, która zawiera pola: id, kontrahent, grupa_cenowa, obrot. Jakie polecenie trzeba zastosować, aby znaleźć tylko kontrahentów z grupy cenowej numer dwa, których obrót przekracza 4000 zł?

A. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 OR obrot > 4000;
B. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 AND obrot > 4000;
C. SELECT sprzedaz FROM kontrahent WHERE obrot > 4000;
D. SELECT sprzedaz FROM kontrahent WHERE grupa_cenowa = 2 AND obrot > 4000;
Twoja odpowiedź jest na właściwej drodze. Wykorzystałeś klauzulę SELECT w zapytaniu SQL, żeby wydobyć konkretne dane z tabeli sprzedaz. Świetnie, że zastosowałeś WHERE z warunkami 'grupa_cenowa = 2' oraz 'obrot > 4000', bo to dokładnie filtruje wyniki do tych kontrahentów, którzy są w drugiej grupie cenowej i mają obrót większy niż 4000 zł. Takie operacje są bardzo ważne w analizie danych, szczególnie w hurtowniach danych, gdzie musisz dobrze filtrować i agregować informacje, żeby wyciągnąć sensowne wnioski. W praktyce takie zapytania mogą być przydatne przy tworzeniu raportów sprzedażowych czy ocenie rentowności klientów. Warto też pamiętać, żeby tabele i kolumny były jasno nazwane, bo to zdecydowanie ułatwia tworzenie zapytań SQL.

Pytanie 3

W celu przyznania użytkownikowi w systemie MySQL możliwości nadawania i modyfikowania uprawnień innym użytkownikom, konieczne jest użycie klauzuli

A. TRGGER
B. ALL PRIVILEGES
C. FLUSH PRIVILEGES
D. GRANT OPTION
Wybór nieprawidłowych opcji, takich jak TRIGGER, ALL PRIVILEGES i FLUSH PRIVILEGES, wynika z braku zrozumienia ich zastosowania w kontekście zarządzania uprawnieniami w MySQL. TRIGGER odnosi się do mechanizmu automatycznego wykonywania operacji w odpowiedzi na określone zdarzenia w bazie danych, takie jak dodanie, aktualizacja lub usunięcie rekordu. Nie jest związany z nadawaniem uprawnień innym użytkownikom, ale z logiką aplikacji i automatyzacją zadań. Można go wykorzystać do implementacji reguł biznesowych, jednak nie wpływa na hierarchię uprawnień. ALL PRIVILEGES to klauzula, która pozwala przyznać wszystkie możliwe uprawnienia do bazy danych, ale nie daje możliwości ich dalszego przekazywania innym użytkownikom. Użytkownik z ALL PRIVILEGES mógłby mieć pełną kontrolę nad bazą danych, lecz nie mógłby dzielić się tymi uprawnieniami. Ostatnia z opcji, FLUSH PRIVILEGES, jest poleceniem używanym do przetwarzania zmian w uprawnieniach użytkowników i ich odświeżania w systemie, ale nie przyznaje żadnych uprawnień. Jest to istotne w kontekście wprowadzania zmian do systemu uprawnień, ale nie ma wpływu na możliwość ich dalszego nadawania innym użytkownikom. W związku z tym, wybrane odpowiedzi nie są adekwatne i nie spełniają potrzeby zarządzania uprawnieniami w MySQL.

Pytanie 4

Do jakiego celu służy polecenie mysqldump?

A. stworzenia kopii zapasowej bazy
B. naprawy niespójnej bazy
C. optymalizacji bazy
D. sprawdzenia integralności bazy
Niektóre odpowiedzi mogą wydawać się na pierwszy rzut oka sensowne, jednak ich analiza pokazuje, że nie oddają one rzeczywistej funkcji mysqldump. Naprawa niespójnej bazy danych jest zadaniem, które wymaga zastosowania innych narzędzi, takich jak `myisamchk` dla silnika MyISAM lub `innodb_force_recovery` dla silnika InnoDB. Mysqldump nie zawiera mechanizmów naprawczych, więc jego użycie w tym kontekście jest błędne. Ponadto proces optymalizacji bazy danych, taki jak reorganizacja indeksów czy usuwanie nieużywanych danych, również nie jest domeną mysqldump, lecz narzędzi takich jak `OPTIMIZE TABLE` czy `ANALYZE TABLE`. Kolejnym błędnym podejściem jest sugestia, że mysqldump służy do sprawdzania integralności bazy danych. Integralność danych w bazach MySQL zapewniają różne mechanizmy, w tym transakcje, a także kontrola spójności danych na poziomie aplikacji. Mysqldump nie jest narzędziem do przeprowadzania walidacji danych ani analizy ich integralności, a skupić się powinien przede wszystkim na tworzeniu kopii zapasowych. W związku z tym, aby poprawnie zrozumieć zastosowanie mysqldump, warto wystrzegać się mylnych przekonań dotyczących jego funkcji, bazując na rzeczywistych możliwości tego narzędzia. Właściwe zrozumienie ról różnych narzędzi w ekosystemie baz danych jest kluczowe dla efektywnego zarządzania i ochrony danych.

Pytanie 5

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. td, th { background-color: Pink; }
B. tr:hover { background-color: Pink; }
C. tr:active { background-color: Pink; }
D. tr { background-color: Pink; }
Poprawny selektor to tr:hover { background-color: Pink; }, bo dokładnie opisuje sytuację pokazaną na filmie: efekt pojawia się dopiero po najechaniu kursorem na cały wiersz tabeli. Pseudo-klasa :hover w CSS służy właśnie do definiowania stylów w momencie, gdy użytkownik „najeżdża” myszką na dany element. Jeśli więc chcemy, żeby podświetlał się cały rząd tabeli, logiczne i zgodne z dobrymi praktykami jest przypięcie efektu do znacznika tr, a nie do pojedynczych komórek. W praktyce taki zapis stosuje się bardzo często w interfejsach webowych: w panelach administracyjnych, listach zamówień, tabelach z uczniami, produktami, logami systemowymi itd. Dzięki temu użytkownik łatwiej śledzi, który wiersz właśnie ogląda. To niby detal, ale z punktu widzenia UX robi sporą różnicę. Z mojego doświadczenia to jeden z tych prostych trików CSS, które od razu poprawiają „odczuwalną” jakość strony. Ważne jest też to, że :hover jest częścią standardu CSS (opisane m.in. w specyfikacji CSS Selectors Level 3/4) i działa w praktycznie wszystkich współczesnych przeglądarkach. Nie trzeba do tego żadnego JavaScriptu, żadnych skomplikowanych skryptów – czysty CSS. Dobrą praktyką jest również używanie bardziej stonowanych kolorów niż Pink w prawdziwych projektach, np. #f5f5f5 albo lekki odcień niebieskiego, tak żeby kontrast był czytelny i nie męczył wzroku. Warto też pamiętać, że podobny mechanizm możesz zastosować na innych elementach: np. a:hover dla linków, button:hover dla przycisków czy nawet div:hover dla całych kafelków w layoutach. Kluczowe jest to, żeby pseudo-klasa :hover była przypięta dokładnie do tego elementu, który ma reagować na interakcję użytkownika.

Pytanie 6

Do którego akapitu przypisano podaną właściwość stylu CSS?
border-radius: 20%;

Ilustracja do pytania
A. Rys. C
B. Rys. B
C. Rys. A
D. Rys. D
Właściwość CSS border-radius służy do zaokrąglania rogów elementu na stronie internetowej. W przypadku wartości procentowej jak 20% zaokrąglenie jest obliczane w stosunku do wymiarów elementu co pozwala na uzyskanie proporcjonalnego wyglądu niezależnie od rozmiaru ramki. Wybranie odpowiedzi Rys. B jest poprawne ponieważ widoczny jest tam efekt zaokrąglonych rogów co jednoznacznie wskazuje na zastosowanie border-radius. Takie stylizacje są powszechnie używane w projektowaniu nowoczesnych interfejsów użytkownika aby nadać im bardziej miękki i przyjazny wygląd. Dobre praktyki projektowe zalecają umiarkowane stosowanie zaokrągleń aby nie przesadzić z efektami wizualnymi co mogłoby pogorszyć czytelność i funkcjonalność. Warto również pamiętać o aspekcie responsywności – używanie wartości procentowych pozwala na lepsze dostosowanie się do różnych rozdzielczości ekranów co jest kluczowe w nowoczesnym web designie. Dzięki border-radius można także tworzyć zaawansowane efekty graficzne łącząc go z innymi właściwościami CSS jak cienie czy gradienty co pozwala na osiągnięcie atrakcyjnych wizualnie elementów bez potrzeby użycia obrazów.

Pytanie 7

Aby uzyskać płynne przejścia obrazów w filmie, liczba klatek (niewchodzących w interakcję ze sobą) na sekundę powinna znajdować się w co najmniej takim zakresie

A. 24 - 30 fps
B. 31 - 36 fps
C. 20 - 23 fps
D. 16 - 19 fps
Wybór wartości spośród opcji takich jak 16 - 19 fps lub 20 - 23 fps nie zapewnia wystarczającej płynności obrazu w filmie. Kiedy liczba klatek na sekundę spada poniżej 24 fps, widzowie mogą doświadczyć efektów skoków w ruchu, co negatywnie wpływa na postrzeganie całości obrazu. Wartości te są przypisane do starszych technologii filmowych oraz do zastosowań, w których nie zależało na pełnej płynności. Na przykład, 18 fps był używany w niektórych wczesnych filmach niemych, ale ze względu na niewystarczającą ilość klatek na sekundę może prowadzić do niedoskonałości wizualnych. Podobnie, wybór 20 - 23 fps, chociaż teoretycznie bliższy standardowi 24 fps, w praktyce nie zapewnia odpowiedniej płynności dla współczesnych produkcji filmowych. W przypadku transmisji telewizyjnych, 30 fps jest bardziej akceptowalnym standardem, jednak nadal nie jest to idealne dla kinematografii, gdzie 24 fps preferuje się ze względu na estetykę i bardziej naturalne odwzorowanie ruchu. Wybierając niższe liczby klatek, można także napotkać problemy z synchronizacją dźwięku i obrazu, co skutkuje nieprzyjemnymi doświadczeniami wizualnymi. Dlatego warto pamiętać, że standardowe praktyki w branży filmowej są oparte na wieloletnich badaniach i doświadczeniach, które podkreślają znaczenie płynności w odbiorze wizualnym.

Pytanie 8

Jakie informacje z ośmiu wpisanych rekordów w tabeli zwierzęta zostaną przedstawione w wyniku wykonania wskazanej instrukcji SQL?

Ilustracja do pytania
A. Anna Kowalska, Jan Nowak
B. Fafik, Brutus, Dika, Fuks
C. Dika, Fuks
D. Figaro, Dika, Fuks
Zapytanie SQL SELECT imie FROM zwierzeta WHERE rodzaj = 2 AND szczepienie = 2016; filtruje wyniki według dwóch kryteriów: rodzaj musi być równy 2 i rok szczepienia musi być 2016. W danych mamy kilka zwierząt, ale tylko Dika i Fuks spełniają oba te warunki. Dika i Fuks mają rodzaj równy 2 oraz rok szczepienia 2016, co czyni je jedynymi zwierzętami w tabeli spełniającymi te kryteria. Zrozumienie tego typu zapytań wymaga znajomości składni SQL oraz logiki warunkowej. W praktyce stosowanie filtrów WHERE to jedna z podstawowych technik selekcji danych umożliwiająca precyzyjne wyciąganie rekordów z dużych zbiorów danych. Warto również zaznaczyć, że poprawne używanie takich zapytań w pracy zawodowej jest niezbędne dla zapewnienia jakości i wydajności procesów związanych z bazami danych. Wiedza ta jest kluczowa w wielu branżach, w których przetwarzanie dużych ilości danych jest codziennością.

Pytanie 9

Funkcją przedstawionego kodu PHP będzie wypełnienie tablicy

$tab = array();
for ($i = 0; $i < 10; $i++) {
    $tab[$i] = rand(-100, 100);
}

foreach ($tab as $x) {
    if ($x < 0) echo "$x ";
}
A. 100 losowymi wartościami, a następnie wypisanie wartości dodatnich
B. Kolejnymi liczbami od -100 do 100 i wypisanie wartości ujemnych
C. 10 losowymi wartościami, a następnie wypisanie wartości ujemnych
D. Kolejnymi liczbami od 0 do 9 i wypisanie ich
Kod w języku PHP użyty w pytaniu generuje tablicę o rozmiarze 10, wypełniając ją losowymi wartościami w zakresie od -100 do 100. Służy do tego funkcja rand(), która generuje liczby pseudolosowe. Następnie kod przechodzi przez każdą wartość tablicy przy użyciu pętli foreach i sprawdza czy wartość jest mniejsza od zera. Jeśli tak, wyświetla ją na ekranie za pomocą funkcji echo. To podejście pozwala na łatwe filtrowanie i wyświetlanie tylko tych wartości, które spełniają określone kryteria, co jest częstą praktyką w analizie danych. Przykładowe zastosowania tego rodzaju kodu można spotkać w systemach, które wymagają analizy danych statystycznych, takich jak badanie trendów w danych finansowych czy analizie wyników testów. Standardy programistyczne sugerują, aby kod był czytelny i dobrze udokumentowany, co zwiększa jego zrozumiałość i ułatwia późniejszą konserwację. Podczas pracy z funkcją rand() pamiętaj, że generowane liczby są pseudolosowe, co oznacza, że przy każdym uruchomieniu tego samego skryptu wyniki mogą się różnić. Prawidłowe użycie pętli i instrukcji warunkowych jest kluczowe w efektywnym przetwarzaniu danych w języku PHP.

Pytanie 10

W sklepie internetowym wykorzystuje się tabelę faktura. W trakcie generowania faktury pole dataPlatnosci nie zawsze jest uzupełnione. Aby to skorygować, pod koniec dnia należy wprowadzić bieżącą datę do wierszy, gdzie to pole jest puste. W tym celu można wykorzystać kwerendę

A. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataplatnosci = '0000-00-00'
B. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL
C. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE id = 3
D. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE dataPlatnosci IS NOT NULL
Poprawna odpowiedź to 'UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL;'. Ta kwerenda jest odpowiednia, ponieważ aktualizuje pole 'dataPlatnosci' w tabeli 'faktury' tylko w tych wierszach, gdzie to pole jest puste (NULL). Użycie funkcji CURDATE() pozwala na wprowadzenie aktualnej daty, co jest praktycznym rozwiązaniem dla problemu niewypełnionych dat płatności. Warto pamiętać, że korzystanie z NULL jest standardem w bazach danych, który oznacza brak wartości. Z perspektywy dobrych praktyk w zarządzaniu danymi, ważne jest, aby dbać o pełność danych, co wpływa na późniejsze analizy i generowanie raportów. Tego rodzaju kwerendy powinny być stosowane regularnie, aby zapewnić integralność i aktualność danych w systemie, co jest kluczowe w kontekście e-commerce, gdzie terminowość transakcji ma istotne znaczenie. Na przykład, w sytuacji, gdy system generuje raporty dotyczące płatności, brak daty płatności może prowadzić do nieprawidłowych wniosków.

Pytanie 11

W pokazanym fragmencie zapytania w języku SQL, polecenie SELECT ma na celu uzyskanie wyników z komendy SELECT COUNT(wartosc) FROM....?

A. średnią wartości w kolumnie wartosc
B. sumę wartości w kolumnie wartosc
C. liczbę rekordów
D. średnią wartości w tabeli
W kontekście zapytania SQL, komenda SELECT COUNT(wartosc) ma na celu zwrócenie liczby wierszy w danej tabeli, które spełniają określone kryteria. Funkcja COUNT jest jedną z agregujących funkcji zapytań SQL, która zlicza liczbę niepustych wartości w kolumnie. Jeżeli argumentem funkcji jest konkretna kolumna, to zostaną zliczone tylko te wiersze, w których ta kolumna zawiera wartości, natomiast jeżeli użyjemy COUNT(*) bez podawania kolumny, zliczymy wszystkie wiersze tabeli, niezależnie od tego, czy kolumny zawierają wartości. Przykład praktyczny: jeśli mamy tabelę 'Zamówienia' i chcemy zliczyć liczbę dokonanych zamówień, można użyć zapytania SELECT COUNT(*) FROM Zamówienia; co zwróci całkowitą liczbę zamówień w tabeli. Istotne jest, aby zrozumieć, że COUNT zwraca liczbę wierszy, a nie sumę, średnią lub inne statystyki. W standardzie SQL nie ma specyfikacji, która by zmieniała tę funkcjonalność, co czyni ją uniwersalną w różnych bazach danych, takich jak MySQL, PostgreSQL, czy SQL Server.

Pytanie 12

W bazie danych znajduje się tabela uczniowie, która ma kolumny: imie, nazwisko i klasa. Jakie polecenie SQL należy użyć, aby uzyskać imiona oraz nazwiska uczniów, których nazwiska zaczynają się na literę M?

A. SELECT nazwisko, imie FROM uczniowie WHERE nazwisko IN 'M%';
B. SELECT nazwisko, imie FROM uczniowie ORDER BY nazwisko IN 'M%';
C. SELECT nazwisko, imie FROM uczniowie WHERE nazwisko LIKE 'M%';
D. SELECT nazwisko, imie FROM uczniowie ORDER BY nazwisko='M%';
Poprawne polecenie SQL to 'SELECT nazwisko, imie FROM uczniowie WHERE nazwisko LIKE 'M%';'. Operator LIKE jest kluczowym elementem języka SQL, który pozwala na wyszukiwanie danych zgodnych z określonym wzorem, gdzie '%' oznacza dowolny ciąg znaków. Użycie tego operatora jest zgodne z najlepszymi praktykami w zakresie wyszukiwania danych w relacyjnych bazach danych, umożliwiając elastyczne filtrowanie wyników. W kontekście tego zapytania, operator LIKE skutecznie identyfikuje wszystkie nazwiska, które zaczynają się na literę 'M', co jest szczególnie przydatne w sytuacjach wymagających poszukiwania danych spełniających określone kryteria. Przykładem zastosowania tego zapytania może być generowanie raportów dla nauczycieli, którzy chcą zobaczyć listę uczniów w określonej klasie. Dodatkowo, warto pamiętać, że w przypadku wielu baz danych, operator LIKE jest również wrażliwy na wielkość liter, dlatego warto dostosować zapytanie w zależności od kontekstu, w jakim pracujemy.

Pytanie 13

W celu zmiany struktury tabeli w systemie MySQL trzeba wykonać polecenie

A. ALTER TABLE
B. GRANT
C. UPDATE
D. INSERT INTO
Patrząc na Twoje odpowiedzi, inne opcje nie nadają się do modyfikacji struktury tabel w MySQL. Na przykład, 'INSERT INTO' służy do dodawania nowych wierszy do tabeli. To zupełnie coś innego niż zmiana samej struktury tabeli. Używanie 'INSERT INTO' może wprowadzić w błąd, jeśli ktoś myśli, że dodaje dane, a nie zmienia ich układ. 'UPDATE' z kolei zmienia dane, które już są w tabeli, ale nie zmienia struktury. Wiem, że sporo osób myli 'UPDATE' z dodawaniem kolumn, co jest kompletnie mylne. Natomiast 'GRANT' dotyczy zarządzania uprawnieniami użytkowników, więc też nie ma nic wspólnego z modyfikacją tabel. Warto zwracać uwagę na te różnice, bo pomyłki mogą prowadzić do problemów z aplikacjami i utraty danych. Zrozumienie, kiedy używać 'ALTER TABLE', a nie innego polecenia, to klucz do sukcesu w pracy z bazami danych.

Pytanie 14

Po wydaniu polecenia użytkownik Jacek będzie mógł

GRANT SELECT, INSERT ON baza1.mojaTabela TO 'Jacek'@'localhost';
A. usuwać dane z tabeli i przeglądać dane.
B. przeglądać dane w tabeli i wstawiać nowe dane.
C. zmieniać strukturę tabeli i wstawiać nowe dane.
D. usuwać tabelę i tworzyć nową.
Twoja odpowiedź jest poprawna. Użytkownik Jacek po wydaniu polecenia SQL 'GRANT SELECT, INSERT ON baza1.mojaTabela TO 'Jacek'@'localhost';' zyskuje możliwość przeglądania (SELECT) oraz wstawiania (INSERT) danych do tabeli 'mojaTabela' znajdującej się w bazie danych 'baza1'. Jest to zgodne ze standardami SQL i dobrymi praktykami zarządzania uprawnieniami w systemach baz danych. Uprawnienie SELECT pozwala na odczyt danych z tabeli, co jest niezbędne do analizy danych, a uprawnienie INSERT umożliwia dodawanie nowych rekordów do tabeli, co jest kluczowe dla utrzymywania aktualności danych. Pamiętaj, że kontrola dostępu do danych jest kluczowym elementem zarządzania bazami danych, zarówno pod względem bezpieczeństwa, jak i zgodności z regulacjami prawnymi.

Pytanie 15

Kod w języku PHP przedstawia się następująco (patrz ramka): Zakładając, że zmienne a, b, c mają wartości numeryczne, wynik warunku będzie skutkował wypisaniem liczby:

if ($a > $b && $a > $c)
    echo $a;
else if ($b > $c)
    echo $b;
else
    echo $c;
A. najmniejszej.
B. nieparzystej.
C. największej.
D. parzystej.
Kod PHP używa instrukcji warunkowych if aby porównać wartości trzech zmiennych a b i c. Pierwsza instrukcja if sprawdza czy a jest większe od b i c. Jeśli tak to echo a wyświetla wartość a jako największą. Jeśli ten warunek nie jest spełniony sprawdzamy czy b jest większe od c za pomocą else if. Jeśli b jest rzeczywiście większe to echo b wyświetla wartość b. W przeciwnym razie instrukcja else zakłada że c jest największe i wyświetla echo c. To podejście jest powszechnie stosowane w programowaniu i opiera się na dobrej praktyce stopniowego eliminowania przypadków poprzez logiczne porównania. Znajomość takich konstrukcji jest kluczowa w codziennej pracy programisty umożliwiając tworzenie efektywnego i czytelnego kodu. Tego rodzaju struktura logiczna należy do podstawowych elementów algorytmiki w programowaniu proceduralnym i obiektowym. Rozumienie jak struktury kontrolne wpływają na przepływ programu jest podstawą efektywnego kodowania oraz rozwiązywania problemów poprzez algorytmy.

Pytanie 16

W HTML 5 atrybut action jest wykorzystywany w znaczniku

A. <head>
B. <code>
C. <body>
D. <form>
Atrybut action w znaczniku <form> jest kluczowym elementem w kontekście przesyłania danych formularzy w HTML5. Określa on adres URL, do którego zostaną wysłane dane po złożeniu formularza przez użytkownika. Przykładowo, jeżeli mamy formularz do logowania, atrybut action mógłby mieć wartość 'login.php', co oznacza, że po kliknięciu przycisku 'Zaloguj', dane z formularza zostaną przesłane do skryptu PHP obsługującego logowanie. Podczas projektowania formularzy warto przestrzegać zasad bezpieczeństwa, takich jak walidacja danych zarówno po stronie klienta, jak i serwera. Dobrą praktyką jest także stosowanie metod przesyłania danych, takich jak POST, aby ukryć dane użytkownika w URL. Dodatkowo, w ramach HTML5 wprowadzono atrybuty, takie jak novalidate, które pozwalają na wyłączenie domyślnej walidacji w przeglądarkach, co może być przydatne w określonych sytuacjach. Używanie znaczników formularzy zgodnie z ich przeznaczeniem zwiększa dostępność i użyteczność stron internetowych, co jest kluczowe w nowoczesnym web designie.

Pytanie 17

Rodzaj zmiennej w języku JavaScript

A. istnieje tylko jeden
B. nie występuje
C. powinien być zadeklarowany na początku skryptu
D. następuje poprzez przypisanie wartości
W kontekście języka JavaScript pojawiają się różne nieporozumienia dotyczące zmiennych i ich typów. Nie jest prawdą, że istnieje tylko jeden typ zmiennej w JavaScript. Programowanie w tym języku opiera się na dynamicznym typowaniu, co oznacza, że zmienne mogą przyjmować różne typy danych w czasie działania aplikacji. Stwierdzenie, że zmienna musi być zadeklarowana na początku skryptu, jest również mylące. W praktyce, zmienne można deklarować w dowolnym miejscu w kodzie, a ich zasięg (scope) określa kontekst, w którym zostały zadeklarowane. Z kolei twierdzenie, że zmienne nie występują w JavaScript, jest całkowicie błędne, ponieważ zmienne są kluczowym elementem tego języka, umożliwiającym przechowywanie i manipulowanie danymi. Typowe błędy myślowe prowadzące do takich wniosków to nieporozumienia dotyczące zasięgu zmiennych oraz różnic między językami statycznie a dynamicznie typowanymi. Warto podkreślić, że poprawne zrozumienie, jak działają zmienne w JavaScript, jest kluczowe dla efektywnego programowania, a znajomość dynamicznego typowania jest niezbędna dla każdego, kto pragnie tworzyć zaawansowane aplikacje w tym języku.

Pytanie 18

Z którego z pól klasy

class Dane {
    public $a;
    private $b;
    protected $c;
}
będzie można uzyskać dostęp z zewnątrz przy użyciu obiektu stworzonego jako instancja tej klasy?
A. Do pola $c.
B. Do pola $a.
C. Do wszystkich pól.
D. Do pola $b.
Odpowiedź 'Do pola $a' jest prawidłowa, ponieważ pole $a jest zdefiniowane jako publiczne, co oznacza, że jest dostępne z zewnątrz dla instancji klasy oraz dla kodu, który jest poza tą klasą. W praktyce, gdy tworzysz obiekt klasy Dane, możesz łatwo uzyskać dostęp do tego pola, na przykład za pomocą $obiekt->a. Zastosowanie publicznych pól jest typowe, gdy chcesz, aby dane były szeroko dostępne, na przykład w interfejsach API lub podczas tworzenia prostych klas modelujących dane. W przypadku pól prywatnych oraz chronionych, dostęp do nich jest ograniczony. Pole $b jest prywatne, co oznacza, że może być używane tylko wewnątrz tej samej klasy, a pole $c, będące chronionym, może być używane przez klasę i jej podklasy, ale nie przez kod zewnętrzny. Warto zaznaczyć, że dobre praktyki programowania obiektowego sugerują ograniczanie dostępu do pól, co sprzyja enkapsulacji i ochronie integralności danych, a publiczne pola należy stosować z ostrożnością, aby nie naruszyć zasad projektowania systemów oprogramowania.

Pytanie 19

W języku HTML atrybut shape w znaczniku area, który definiuje typ obszaru, może mieć wartość

A. rect, poly, circle
B. rect, triangle, circle
C. poly, square, circle
D. rect, square, circle
Wybór nieprawidłowych wartości atrybutu shape może prowadzić do istotnych deficytów w funkcjonalności interaktywnych map obrazów. Na przykład, odpowiedź z wykorzystaniem wartości triangle jest błędna, gdyż HTML nie definiuje obsługi trójkąta jako kształtu obszaru w znaczniku area. Użytkownicy mogą błędnie zakładać, że różne kształty mogą być dowolnie definiowane, co jest mylnym podejściem, ponieważ HTML ma ściśle określone standardy dotyczące kształtów. Odpowiedzi takie jak square czy rectangle mogą prowadzić do nieporozumień, gdyż square jest de facto specjalnym przypadkiem rect. W praktyce, zrozumienie różnicy pomiędzy tymi wartościami oraz ich właściwe wykorzystanie jest kluczowe dla osiągnięcia zamierzonych celów w zakresie interaktywności. Używanie niewłaściwych kształtów może skutkować niewłaściwą nawigacją na stronie, co negatywnie wpływa na doświadczenia użytkowników oraz dostępność treści. Dlatego ważne jest, aby projektanci stron WWW opierali się na rzetelnych źródłach dokumentacji oraz standardów W3C, które definiują, jakie kształty są dostępne oraz w jaki sposób powinny być stosowane. Zastosowanie niepoprawnych wartości nie tylko wpłynie na działanie mapy, ale również może prowadzić do błędów w SEO, ponieważ niewłaściwie zdefiniowane obszary mogą być pomijane przez wyszukiwarki, co ogranicza widoczność strony w sieci.

Pytanie 20

W języku PHP zmienna $a została przypisana do wartości 1. Wyrażenie $a === $b będzie miało wartość true, gdy zmienna $b będzie ustawiona na wartość

A. '1'
B. 1 lub '1'
C. "1" lub '1'
D. *1
Odpowiedzi, które sugerują różne typy danych, takie jak '1', 1 lub '1', oraz \"1\" lub '1', mogą prowadzić do nieporozumień wynikających z niepełnego rozumienia operatorów porównania w PHP. W przypadku operatora porównania identyczności (===), ważne jest, aby zarówno wartość, jak i typ zmiennej były zgodne. Porównanie 1 (liczba całkowita) z '1' (łańcuch znaków) zwróci false, ponieważ różnią się one typem. Typowe błędy myślowe, prowadzące do takiej pomyłki, mogą wynikać z braku zrozumienia, jak PHP obsługuje typy danych i konwersję typów. Warto zauważyć, że w innych językach programowania porównania mogą działać inaczej, co może prowadzić do zamieszania, szczególnie w kontekście programowania w PHP. Istotne jest, aby przy projektowaniu aplikacji zawsze stosować porównania identyczności, by uniknąć nieprzewidzianych problemów związanych z typami danych. Dobrą praktyką jest również eksploracja dokumentacji PHP oraz testowanie porównań w praktyce, co pozwala na głębsze zrozumienie działania języka. Właściwe podejście do typów danych oraz klarowne rozumienie operatorów porównania są kluczowymi elementami skutecznego programowania w PHP.

Pytanie 21

Jakie polecenie wykonane w systemowej konsoli umożliwi przywrócenie bazy danych?

A. mysqldump -u root -p baza < kopia.sql
B. mysql -u root -p baza > kopia.sql
C. mysql -u root -p baza < kopia.sql
D. mysqldump -u root -p baza > kopia.sql
Wszystkie inne odpowiedzi są niepoprawne, ponieważ z użyciem niewłaściwych poleceń z systemu MySQL. Pierwsze z tych poleceń, zamiast przywracać bazę danych, tworzy jej kopię zapasową, co nie odpowiada na zadane pytanie. Użycie 'mysqldump' z parametrami '-u root -p baza > kopia.sql' jest sposobem na eksport danych z bazy do pliku SQL, a nie na ich import. Kolejne polecenie sugeruje zastosowanie 'mysqldump' w kontekście przywracania, co jest również błędne, ponieważ 'mysqldump' jest narzędziem służącym do zrzutów, a nie importu. Z kolei ostatnie polecenie 'mysql -u root -p baza > kopia.sql' ponownie nie wykonuje przywracania, lecz zapisuje dane z bazy danych do pliku, co jest odwrotnością oczekiwanej operacji. W praktyce, błędne zastosowanie tych poleceń może prowadzić do poważnych konsekwencji, takich jak utrata danych czy niewłaściwe zarządzanie bazą danych. Dlatego kluczowe jest zrozumienie roli każdego z narzędzi dostępnych w MySQL oraz ich poprawne zastosowanie w różnych scenariuszach administracyjnych.

Pytanie 22

Wskaż stwierdzenie, które jest prawdziwe dla następującej definicji stylu:

<style type="text/css">
<!--
  p {color: blue; font-size: 14pt; font-style: italic}
  a { font-size: 16pt; text-transform: lowercase; }
  td.niebieski { color: blue }
  td.czerwony { color: red }
-->
</style>
A. Akapit będzie transponowany na małe litery.
B. Odnośnik będzie pisany czcionką 14 punktów.
C. Jest to styl lokalny.
D. Zdefiniowano dwie klasy.
Niestety, twoja odpowiedź nie była prawidłowa. Pierwsze stwierdzenie, że jest to styl lokalny, jest nieprawidłowe, ponieważ kod CSS jest zdefiniowany w osobnym pliku, a nie bezpośrednio w tagu style wewnątrz pliku HTML, co oznacza, że jest to styl zewnętrzny, a nie lokalny. Trzecie stwierdzenie, że akapit będzie transponowany na małe litery, jest błędne, ponieważ w kodzie nie ma takiej instrukcji. Ostatnie stwierdzenie, że odnośnik będzie pisany czcionką 14 punktów, jest nieprawidłowe, ponieważ w kodzie nie ma instrukcji dotyczących rozmiaru czcionki dla odnośników. Wszystkie te odpowiedzi wynikają z niezrozumienia kodu CSS. CSS jest potężnym narzędziem do kontrolowania wyglądu strony internetowej i wymaga zrozumienia różnych selektorów, właściwości i wartości. Ważne jest, aby pamiętać, że nie wszystkie elementy HTML są stylizowane w ten sam sposób, a różne selektory CSS mają różne priorytety. To pomoże uniknąć błędów w przyszłości.

Pytanie 23

W jaki sposób zostanie uporządkowana lista, stworzona z wszystkich kolumn tabeli uczniowie, zawierająca uczniów z średnią powyżej 5, która zostanie zwrócona jako rezultat przedstawionego zapytania?

Ilustracja do pytania
A. Rosnąco według parametru srednia
B. Malejąco według parametru srednia
C. Malejąco według parametru klasa
D. Rosnąco według parametru klasa
Zapytanie SQL przedstawione w pytaniu wykorzystuje klauzule WHERE oraz ORDER BY. Klauzula WHERE ogranicza wyniki do tych, które spełniają określony warunek, w tym przypadku średnia większa niż 5. To oznacza, że na dalszym etapie przetwarzania znajdą się tylko rekordy uczniów mających średnią powyżej 5. Kolejnym kluczowym elementem jest klauzula ORDER BY, która określa sposób sortowania wyników. W zapytaniu użyto ORDER BY klasa DESC, co oznacza sortowanie malejące według kolumny klasa. DESC to skrót od descending, co w języku SQL oznacza porządek malejący. W praktyce porządkowanie malejące jest często używane, gdy chcemy uzyskać najwyższe wartości na początku listy wynikowej, co może być kluczowe w raportach rankingowych czy analizach dotyczących grup wiekowych. Dobre praktyki w programowaniu baz danych zalecają zawsze jasno określać sposób sortowania, aby uniknąć niejednoznaczności w interpretacji wyników i zapewnić spójność danych. Zrozumienie mechanizmu sortowania w SQL jest istotne w kontekście prezentacji danych, gdzie odpowiednie uporządkowanie wyników może znacząco poprawić czytelność i interpretację danych przez użytkownika końcowego.

Pytanie 24

Jakie zdarzenie należy wykorzystać, aby funkcja JavaScript była aktywowana za każdym razem, gdy użytkownik wprowadza jakikolwiek znak w polu tekstowym?

A. onclick
B. onmouseout
C. onload
D. onkeydown
Funkcja JavaScript, która ma być wywoływana za każdym razem, gdy użytkownik wpisuje dowolny znak do pola edycji, powinna korzystać ze zdarzenia 'onkeydown'. Zdarzenie to jest wywoływane w momencie naciśnięcia klawisza, co oznacza, że natychmiast odzwierciedla zmiany wprowadzone przez użytkownika. Dzięki temu możemy w czasie rzeczywistym reagować na dane wprowadzane przez użytkownika, co jest niezwykle przydatne w aplikacjach interaktywnych. Przykładowo, jeśli mamy pole tekstowe, w którym użytkownik wprowadza swoje imię, możemy użyć zdarzenia 'onkeydown', aby sprawdzić, czy imię nie jest za krótkie lub nie zawiera niedozwolonych znaków. Można to zrealizować w następujący sposób: <input type='text' onkeydown='myFunction()'>. Standardy W3C definiują zdarzenia klawiaturowe jako kluczowy element interakcji użytkownika z aplikacjami webowymi, co czyni 'onkeydown' bardzo istotnym w kontekście UX/UI.

Pytanie 25

Na podstawie fragmentu dokumentu HTML, określ co należy wpisać w miejsce kropek w odnośniku w menu, aby przenosił on do rozdziału 2.

Fragment menu
<a ...>Rozdział 2</a>

Fragment dalej w dokumencie
<h1 id="r2" name="sekcja2" class="rozdzial2">Rozdział 2<h1>
A. href = "sekcja2"
B. href = "#sekcja2"
C. href = "r2"
D. href = "#r2"
Niestety, Twoja odpowiedź nie jest prawidłowa. Prawidłowa odpowiedź 'href="#r2"' odwołuje się do identyfikatora (id) 'r2' na tej samej stronie. W HTML, atrybut 'href' w tagu 'a' służy do określenia miejsca docelowego odnośnika. Przed identyfikatorem umieszcza się znak '#', który informuje przeglądarkę, że ma poszukać elementu z danym 'id' na tej samej stronie. Błędy w niepoprawnych odpowiedziach wynikają z pominięcia znaku '#' lub zastosowania nieprawidłowego identyfikatora. Pamiętaj, że identyfikator powinien być unikalny dla każdego elementu na stronie i powinien być używany w odnośniku dokładnie w takiej samej formie. W przypadku 'href="r2"' i 'href="sekcja2"', pominięto znak '#', co sprawia, że przeglądarka będzie szukać zasobu o podanej ścieżce, a nie identyfikatora na tej samej stronie. 'href="#sekcja2"' zawiera niepoprawny identyfikator, który nie istnieje na stronie. Kluczowe jest zrozumienie, jak działają identyfikatory i jaki mają wpływ na nawigację na stronie.

Pytanie 26

Który program komputerowy zamienia kod źródłowy, stworzony w danym języku programowania, na język zrozumiały dla komputera?

A. Środowisko programistyczne
B. Kompilator
C. Edytor kodu źródłowego
D. Debugger
Kompilator to program komputerowy, który przekształca kod źródłowy, napisany w konkretnym języku programowania, na język maszynowy, czyli zrozumiały dla procesora komputera. Proces ten polega na analizie kodu źródłowego, optymalizacji go oraz generowaniu odpowiedniego kodu maszynowego, który może być bezpośrednio wykonany przez komputer. Kompilatory są kluczowymi narzędziami w tworzeniu oprogramowania, ponieważ umożliwiają programistom pisanie kodu w bardziej zrozumiałych i wysokopoziomowych językach, takich jak C++, Java czy Python, które zostają następnie przekształcone w wydajny kod maszynowy. Przykłady popularnych kompilatorów to GCC dla języka C/C++, javac dla Javy oraz Clang, który jest nowoczesnym kompilatorem dla C, C++ i Objective-C. Warto również wspomnieć o standardach, takich jak ANSI C, które definiują zasady pisania kodu w języku C, a kompilatory implementują te zasady, aby zapewnić zgodność i przenośność kodu między różnymi systemami operacyjnymi i platformami sprzętowymi. Kompilatory mogą również oferować dodatkowe funkcje, takie jak analiza statyczna kodu czy generowanie dokumentacji, co czyni je nieocenionym narzędziem w każdym nowoczesnym środowisku programistycznym.

Pytanie 27

W języku HTML5 do wypełniania podpowiedzią kontrolki pola edycyjnego stosuje się atrybut

A. required
B. placeholder
C. pattern
D. autofocus
Poprawny atrybut to "placeholder". W HTML5 ten atrybut służy do wyświetlania tymczasowej podpowiedzi wewnątrz pola tekstowego, zanim użytkownik cokolwiek wpisze. Przeglądarka pokazuje ten tekst jaśniejszym kolorem i znika on automatycznie w momencie rozpoczęcia edycji. Z mojego doświadczenia to jest podstawowe narzędzie do delikatnego sugerowania użytkownikowi, czego dokładnie oczekujemy w danym polu. Przykład praktyczny: <input type="text" name="email" placeholder="np. [email protected]"> Tutaj placeholder pokazuje przykładowy format adresu e-mail, ale nie jest to domyślna wartość formularza – ten tekst nie zostanie wysłany na serwer, jeśli użytkownik nic nie wpisze. To ważne: placeholder to tylko wskazówka wizualna, nie zastępuje etykiety <label> ani walidacji. Dobre praktyki mówią, żeby używać placeholdera do krótkich, konkretnych podpowiedzi: format danych, przykład wpisu, skrócona instrukcja. Nie powinno się tam wrzucać długich opisów, bo użytkownik i tak ich nie zapamięta. W standardach dostępności (WCAG) podkreśla się też, że placeholder nie może zastępować labelki, bo osoby z niektórymi niepełnosprawnościami mogą mieć problem z jego odczytaniem. W realnych projektach stosuje się więc układ: opis pola w <label>, a w placeholderze tylko przykład, np. "123-456-789" dla telefonu albo "2024-12-31" dla daty. Taki sposób użycia jest uznawany za poprawny i profesjonalny.

Pytanie 28

Który kod jest alternatywny do kodu zamieszczonego w ramce?

<?php
for($x = 1; $x <= 55; $x++)
{
  if($x % 2 != 0) continue;
  echo $x . " ";
}
?>
A. for($x = 2; $x <= 54; $x += 2) {echo $x." ";}
B. for($x = 1; $x <= 55; $x++) {echo $x." ";}
C. for($x = 1; $x <= 55; $x += 1) {echo $x." ";}
D. for($x = 2; $x <= 56; $x += 2) {echo $x." ";}
Niestety, wybrałeś błędną odpowiedź. Wszystkie opcje oprócz odpowiedzi A nie są alternatywą dla kodu zawartego w ramce. Cechą wspólną dla niepoprawnych odpowiedzi jest fakt, że nie uwzględniają one aspektu parzystości liczb, na którym operują. Kod w ramce pomija liczby parzyste za pomocą instrukcji 'continue', która jest wywoływana, gdy reszta z dzielenia przez 2 jest równa 0. W odpowiedzi A, pętla jest zaprojektowana tak, że wykonuje operacje tylko na liczbach parzystych (zaczyna od 2 i zwiększa wartość o 2 za każdą iterację). Błędne odpowiedzi nie uwzględniają takiego podziału na liczby parzyste i nieparzyste, co jest kluczowym aspektem funkcjonowania kodu w ramce. Pamiętaj, że podczas analizy kodu, zwracaj uwagę na wszystkie jego aspekty, takie jak warunki, instrukcje sterujące czy operacje wykonywane na danych.

Pytanie 29

Jaką wartość uzyska zmienna x po wykonaniu kodu PHP zaprezentowanego w ramce?

Ilustracja do pytania
A. Ilość wierszy dodanych do tabeli produkty
B. Ilość wierszy przetworzonych przez zapytanie DELETE FROM
C. Ilość wierszy w tabeli produkty, gdzie pole status jest większe od zera
D. Ilość wierszy w bazie danych
W przedstawionym kodzie PHP funkcja mysqli_affected_rows() jest używana do uzyskania liczby wierszy zmienionych przez ostatnie zapytanie MySQL. W tym przypadku zapytanie DELETE FROM produkty WHERE status < 0 próbuje usunąć wszystkie rekordy z tabeli produkty, których pole status ma wartość mniejszą od zera. Po wykonaniu tego zapytania funkcja mysqli_affected_rows($db) zwróci liczbę wierszy, które zostały rzeczywiście usunięte. To jest szczególnie przydatne w kontekście sprawdzania wpływu operacji na bazę danych i pozwala na dynamiczne podejmowanie decyzji w aplikacjach bazodanowych. Przykładowo, jeśli po usunięciu chcemy wykonać dodatkowe operacje tylko wtedy, gdy co najmniej jeden rekord został usunięty, możemy użyć tej funkcji. Zgodnie z dobrymi praktykami, korzystanie z mysqli_affected_rows() jest standardem, gdyż pozwala również na obsługę wyjątków i błędów bazy danych. Optymalizacja operacji DELETE poprzez precyzyjne filtrowanie w WHERE, jak w naszym przykładzie, jest kluczowa dla zachowania wydajności bazy danych szczególnie w dużych systemach produkcyjnych.

Pytanie 30

Funkcja PHP var_dump() prezentuje dane na temat zmiennej, w tym jej typ oraz wartość. Jakim wynikiem zakończy się poniższy fragment kodu?

$x = 59.85; var_dump($x);
A. array(2) { [0]=> int(59) [1]=> int(85) }
B. string(5) "59.85"
C. int(59)
D. float(59.85)
Wybrane odpowiedzi nie są zgodne z poprawnym wynikiem działania funkcji var_dump() w PHP. Odpowiedź, która sugeruje, że wynik to "int(59)" jest błędna, ponieważ funkcja ta nie konwertuje zmiennoprzecinkowych wartości na liczby całkowite, a 59.85 jest wyraźnie liczbą zmiennoprzecinkową. Inna odpowiedź, sugerująca "string(5) "59.85"", jest myląca, ponieważ zmienna $x została zadeklarowana jako liczba, a nie jako string. PHP automatycznie określa typ zmiennej na podstawie przypisanej wartości, a w tym przypadku jest to typ float. Odpowiedź "array(2) { [0]=> int(59) [1]=> int(85) }" również jest nieprawidłowa, ponieważ nie mamy do czynienia z tablicą, a z pojedynczą zmienną. Przykłady te ilustrują typowe nieporozumienia dotyczące typów danych w PHP. Programiści powinni zrozumieć, że PHP jest dynamicznie typowanym językiem, co oznacza, że typ zmiennej jest określany podczas wykonywania programu, a nie w czasie kompilacji. Właściwe zrozumienie typów danych oraz ich konwersji jest kluczowe dla zapewnienia poprawności i bezpieczeństwa kodu.

Pytanie 31

Polecenie colspan służy do łączenia komórek tabeli w poziomie, natomiast rowspan w pionie. Którą z tabel wyświetli poniższy fragment kodu napisany w języku HTML?

<table border="1" cellspacing="0" cellpadding="10">
    <tr>
        <td rowspan="2">&nbsp;</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td>&nbsp;</td>
    </tr>
</table>
Ilustracja do pytania
A. A.
B. D.
C. B.
D. C.
Dokładnie tak, wybrałeś poprawną odpowiedź. Fragment kodu HTML napisałeś pokazuje tabelę z dwoma wierszami i dwoma komórkami. Pierwsza komórka w pierwszym wierszu ma atrybut rowspan='2', co oznacza, że będzie się rozciągać na dwa wiersze w pionie. Druga komórka w pierwszym wierszu nie ma żadnych specjalnych atrybutów, więc jest standardową komórką. W drugim wierszu jest tylko jedna komórka, gdyż druga komórka jest połączona z pierwszą komórką pierwszego wiersza przez atrybut rowspan. Tabela odpowiadająca opisowi to tabela B, która ma jedną długą komórkę po lewej stronie rozciągającą się na dwa wiersze i dwie krótsze komórki po prawej stronie, po jednej w każdym wierszu. Pamiętaj, że atrybuty rowspan i colspan są bardzo przydatne do tworzenia skomplikowanych layoutów tabel, które nie są możliwe do osiągnięcia przy użyciu standardowych tagów tabeli.

Pytanie 32

Aplikacja o nazwie FileZilla umożliwia

A. przeprowadzenie testów aplikacji
B. publikację witryny internetowej na zdalnym serwerze
C. wniesienie bazy danych na stronę CMS Joomla!
D. sprawdzanie poprawności plików HTML oraz CSS
Odpowiedzi, które sugerują inne funkcje, takie jak uruchamianie testów aplikacji czy walidacja plików HTML i CSS, są nieprawidłowe, ponieważ nie dotyczą one głównego przeznaczenia FileZilla. Programy do uruchamiania testów aplikacji są zaprojektowane do obsługi procesów związanych z testowaniem oprogramowania, takich jak automatyzacja testów, analiza wydajności czy kontrola jakości. Z kolei walidacja plików HTML i CSS wymaga użycia dedykowanych narzędzi, które oceniają zgodność kodu z określonymi standardami, takimi jak W3C. Walidacja jest kluczowa w kontekście zapewnienia poprawności kodu, ale nie jest funkcjonalnością FileZilla. Dodatkowo, załadowanie bazy danych do systemu zarządzania treścią, takiego jak Joomla!, również nie jest zadaniem dla FileZilla. Zazwyczaj zarządzanie bazami danych odbywa się za pomocą narzędzi takich jak phpMyAdmin czy komendy SQL w terminalu, które są odpowiedzialne za manipulację danymi w bazach. To nieporozumienie często wynika z mylnego przyporządkowywania funkcji programów, co prowadzi do nieefektywnego używania narzędzi i braku optymalizacji procesów pracy. W kontekście tworzenia i publikacji stron internetowych ważne jest, aby korzystać z odpowiednich aplikacji zgodnie z ich przeznaczeniem, aby uniknąć nieporozumień i zwiększyć efektywność działań.

Pytanie 33

W CSS zapisano stylizację ```css p > i {color: blue} ``` oznacza to, że kolorem niebieskim zostanie wyświetlony

A. pogrubiony tekst akapitu
B. cały tekst akapitu, niezależnie od jego stylizacji
C. pochylony tekst akapitu
D. wszystkie teksty nagłówków, niezależnie od formatowania
Wszystkie inne odpowiedzi są niepoprawne z kilku powodów. Izolowanie tekstu paragrafu jako całości w odpowiedzi sugeruje, że cała zawartość elementu <p> byłaby stylizowana na niebiesko, co jest błędne, ponieważ selektor CSS wskazuje na tylko konkretne elementy wewnątrz <p>, a nie na całe jego wnętrze. Tekst kursywy, oznaczony przez <i>, to specyficzna część tekstu, która jest stylizowana, a nie cały tekst paragrafu. Pogrubiony tekst, oznaczony przez <b>, również pozostanie w swoim standardowym stylu, ponieważ nie jest objęty regułą CSS. Druga odpowiedź, dotycząca całego tekstu nagłówków, również jest niepoprawna, ponieważ nagłówki, takie jak <h1>, <h2> itd., nie są w ogóle związane z tym selektorem CSS, który odnosi się wyłącznie do paragraficznych elementów <p> i ich dzieci. Wreszcie, idea, że pogrubiony tekst paragrafu miałby być zmieniony na niebieski, również nie znajduje potwierdzenia w definicji selektora. Selektor CSS, jak w tym przypadku, działa na podstawie hierarchii i struktury dokumentu, a nie na ogólnym formacie tekstu. Wyjaśniając te kwestie, możemy zrozumieć, jak działa kaskadowe stylowanie i jak precyzyjne są selektory w CSS, co jest kluczowe dla efektywnego projektowania stron internetowych.

Pytanie 34

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

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

Pytanie 35

Zapytanie z użyciem klauzuli JOIN jest wykorzystywane w celu

A. uzyskania wyników tylko z jednej tabeli
B. pozyskania wyników z dwóch tabel, które są ze sobą powiązane
C. określenia klucza obcego dla tabeli
D. wywołania funkcji agregującej
Kiedy używasz klauzuli JOIN w SQL, to tak naprawdę odblokowujesz potencjał swoich relacyjnych baz danych. Dzięki temu możesz łączyć dane z różnych tabel, co jest mega przydatne, gdy trzeba przeanalizować informacje z wielu źródeł. Na przykład, jeżeli masz dwie tabele – 'Klienci' i 'Zamówienia' – to z pomocą JOIN możesz łatwo stworzyć listę zamówień razem z danymi o klientach. Kluczowe jest to, by wiedzieć, które kolumny chcesz zestawić, bo wtedy otrzymasz jasne i uporządkowane wyniki. Z własnego doświadczenia powiem, że umiejętne korzystanie z JOIN znacznie poprawia szybkość zapytań i ułatwia analizę danych. Tak naprawdę, to dla programistów szansa na pełne wykorzystanie SQL przy tworzeniu różnorodnych raportów. W dzisiejszych czasach, gdy tak dużo danych krąży wokół, znajomość tych technik to must-have.

Pytanie 36

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

Ilustracja do pytania
A. float wyłącznie dla bloku 5; clear dla bloku 2
B. float jedynie dla bloków: 3, 4; clear dla bloku 5
C. float tylko dla bloków: 2, 3, 4; clear dla bloku 5
D. float tylko dla bloku 2; clear dla bloków: 3, 4
Odpowiedź czwarta jest prawidłowa, ponieważ użycie właściwości CSS float dla bloków 2, 3 i 4 oraz właściwości clear dla bloku 5 odpowiada oczekiwanemu układowi strony. Float pozwala na ustawienie elementów obok siebie w poziomie. W tym przypadku blok 2, 3 i 4 będą umieszczone w jednej linii dzięki właściwości float: left. Blok 2 będzie zajmował więcej przestrzeni w pionie, co pozwala umieścić bloki 3 i 4 obok siebie. Blok 5 powinien znaleźć się poniżej, więc wymaga zastosowania właściwości clear: both, aby uniknąć zachodzenia na inne elementy pływające. Taki układ jest często stosowany w projektowaniu responsywnych stron internetowych, gdzie float umożliwia elastyczne dostosowanie się elementów do różnych szerokości ekranów. Warto pamiętać, że obecnie często używa się także display: flex lub grid jako nowocześniejszych sposobów układania elementów, jednak float wciąż znajduje zastosowanie w prostych układach. Zrozumienie, jak działa float i clear, jest kluczowe dla tworzenia poprawnych i estetycznych układów bloków na stronie internetowej.

Pytanie 37

W języku HTML, aby ustawić tytuł dokumentu na "Moja strona", który będzie widoczny na karcie przeglądarki internetowej, należy użyć zapisu

A. <meta title="Moja strona">
B. <title>Moja strona</title>
C. <head>Moja strona</head>
D. <meta name="title" content="Moja strona">
Odpowiedź <title>Moja strona</title> jest poprawna, ponieważ element <title> jest standardowym sposobem definiowania tytułu dokumentu HTML, który jest wyświetlany na pasku tytułowym przeglądarki. Zgodnie z normą HTML, element ten powinien być umieszczony wewnątrz sekcji <head> dokumentu. Przykładowa struktura dokumentu HTML z tytułem wygląda następująco: <html><head><title>Moja strona</title></head><body></body></html>. Tytuł jest istotny nie tylko dla użytkowników, ale również dla wyszukiwarek internetowych, ponieważ wpływa na SEO (Search Engine Optimization). Dobrze dobrany tytuł może zwiększyć klikalność linków w wynikach wyszukiwania. Dodatkowo, element <title> jest ważnym aspektem dostępności, ponieważ osoby korzystające z technologii asystujących polegają na nim, aby zrozumieć zawartość strony. W kontekście dobrych praktyk warto pamiętać, że tytuł powinien być krótki, zwięzły i adekwatny do treści strony. Warto również unikać duplikatów tytułów na różnych stronach tej samej witryny, co może prowadzić do chaosu w nawigacji i negatywnie wpływać na doświadczenia użytkowników oraz SEO.

Pytanie 38

Która jednostka miary CSS ma charakter względny i wyraża wielkość proporcjonalną do rozmiaru aktualnej czcionki?

A. pt
B. px
C. in
D. em
Jednostki px, pt i in kuszą, bo wydają się „konkretne” i przewidywalne, ale w kontekście pytania o jednostki względne powiązane z rozmiarem czcionki prowadzą na manowce. px (piksel) w CSS jest traktowany jako jednostka absolutna – przeglądarka stara się odwzorować go w sposób stały, niezależnie od bieżącego font-size elementu. W nowoczesnych specyfikacjach CSS piksel jest co prawda jednostką „referencyjną”, ale nadal nie skaluje się automatycznie z rozmiarem tekstu w taki sposób, jak em czy rem. Używanie px do wszystkiego bywa wygodne na początku, ale potem utrudnia dostępność, bo użytkownikom trudniej powiększyć tekst wraz z otoczeniem. pt (punkt typograficzny) to z kolei jednostka historycznie związana z drukiem. W CSS jest mapowana na fizyczne rozmiary (1pt to 1/72 cala), a nie na rozmiar aktualnej czcionki. Sprawdza się raczej w mediach drukowanych (media print) albo w specyficznych projektach, gdzie ktoś próbuje zbliżyć wygląd strony do layoutu DTP. W codziennym front-endzie jest rzadko używana właśnie dlatego, że jest sztywna i słabo współgra z responsywnym web designem. Jednostka in (cal) też jest jednostką absolutną, zdefiniowaną fizycznie. 1in to 2.54 cm, a przeglądarka odwzorowuje ją w oparciu o DPI urządzenia lub założenia referencyjne. Z mojego doświadczenia stosowanie in w layoucie ekranowym mija się z celem – to bardziej ciekawostka niż realne narzędzie w CSS dla stron WWW. Ani pt, ani in nie reagują na zmianę font-size tak, jak oczekujemy po jednostkach względnych. Typowy błąd myślowy polega na założeniu, że skoro px czy pt są powiązane z jakimś „rozmiarem”, to automatycznie będą zależeć od czcionki. W rzeczywistości tylko jednostki takie jak em czy rem są projektowane specjalnie po to, by skalować się względem font-size. Dlatego przy projektowaniu nowoczesnych, dostępnych interfejsów lepiej świadomie wybierać jednostki względne, a jednostek absolutnych używać tylko tam, gdzie naprawdę ma to sens.

Pytanie 39

Które z poniższych poleceń pozwala na dodanie kolumny zadanie_kompletne do tabeli zadania?

A. CREATE INDEX zadania ADD COLUMN zadanie_kompletne int
B. ADD COLUMN zadanie_kompletne WITH zadania
C. ALTER TABLE zadania ADD COLUMN zadanie_kompletne int
D. INSERT INTO zadania VALUES zadanie_kompletne
Dodanie kolumny do istniejącej tabeli w relacyjnej bazie danych może być realizowane za pomocą polecenia ALTER TABLE. To polecenie jest standardem SQL i jest wspierane przez większość systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL, Oracle czy Microsoft SQL Server. W przypadku zapytania 'ALTER TABLE zadania ADD COLUMN zadanie_kompletne int', polecenie to modyfikuje strukturę tabeli 'zadania', dodając nową kolumnę o nazwie 'zadanie_kompletne', która będzie przechowywać dane typu całkowitego (int). Praktycznym przykładem zastosowania tego polecenia może być system zarządzania projektami, w którym chcemy śledzić status zadań. Po dodaniu tej kolumny, możemy wprowadzać wartości 0 lub 1, które mogą reprezentować, czy zadanie zostało ukończone, czy nie. Użycie ALTER TABLE jest niezbędne, gdyż inne polecenia, takie jak CREATE INDEX czy INSERT INTO, służą do innych celów, takich jak tworzenie indeksów lub wstawianie danych, a nie do modyfikacji struktury tabeli. W praktyce, aby upewnić się, że zmiany są zgodne z wymaganiami systemu, zaleca się zawsze wykonanie kopii zapasowej bazy danych przed przeprowadzeniem operacji na strukturze tabeli.

Pytanie 40

Jak można zmodyfikować nałożone na siebie fragmenty obrazu, nie zmieniając innych elementów?

A. Warstwy
B. Przycinanie
C. Kanał przezroczystości
D. Wykres histogramu
Warstwy są kluczowym elementem w edycji grafiki komputerowej, umożliwiając precyzyjne zarządzanie różnymi elementami obrazu. Dzięki zastosowaniu warstw, użytkownik może na przykład oddzielić tło od obiektów na pierwszym planie, co pozwala na edytowanie jednego z tych elementów bez wpływu na resztę kompozycji. Zastosowanie warstw jest szczególnie przydatne w programach graficznych, takich jak Adobe Photoshop, GIMP czy CorelDRAW, gdzie umożliwia łatwą manipulację oraz efektywną organizację projektu. Dzięki warstwom można również stosować różne efekty i style, takie jak cienie, przezroczystości czy gradienty, co pozwala na stworzenie bardziej złożonych i interesujących grafik. Warto również zauważyć, że korzystanie z warstw jest zgodne z najlepszymi praktykami w branży, jako że sprzyja to lepszej organizacji pracy oraz ułatwia wprowadzanie zmian w projekcie. Uczy to również umiejętności przydatnych w pracy zespołowej, gdzie różne osoby mogą pracować nad różnymi warstwami równocześnie, co zwiększa efektywność i kreatywność procesu twórczego.