Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
Rozpoczęcie: 7 czerwca 2026 22:50
Zakończenie: 7 czerwca 2026 23:19
Egzamin zdany!
Wynik: 27/40 punktów (67,5%)
Wymagane minimum: 20 punktów (50%)
Twój wynik na tle innych
Twój wynik jest lepszy niż 50% podejść do kwalifikacji INF.03.
Porównanie z 39483 zakończonymi podejściami do tej kwalifikacji (dane zbiorcze, bez wyników indywidualnych).
Zachowaj ten wynik na koncie
Załóż darmowe konto albo zaloguj się - ten egzamin przypiszemy do Twojego konta, więc wrócisz do swoich błędów, będziesz śledzić postęp i dostaniesz powtórki dobrane do Twoich odpowiedzi.
Aby sprawdzić poprawność składni kodu CSS, można skorzystać z:
A. konsolidatora
B. optymalizatora
C. debuggera
D. walidatora
Poprawność składni CSS sprawdza walidator - na przykład walidator CSS organizacji W3C (jigsaw.w3.org/css-validator). Analizuje arkusz pod kątem zgodności ze standardem i wypisuje błędy oraz ostrzeżenia: literówki we właściwościach, nieprawidłowe wartości czy brakujące średniki. Dlatego do kontroli składni CSS służy walidator.
Pytanie 2
Który styl ustawi trzy kolumny OBOK siebie (każda na 1/3 szerokości)?
A.
.kolumny{float:right;height:33%;}
B.
.kolumny{float:left;width:33%;}
C.
.kolumny{float:left;width:40%;}
D.
.kolumny{clear:both;height:33%;}
Trzy kolumny obok siebie powstają, gdy każdy blok „pływa” w lewo i zajmuje jedną trzecią szerokości: .kolumny{float:left;width:33%;}. Kluczowe są float (układ poziomy) i width (szerokość). Dlatego poprawny jest zapis z float:left i width:33%.
Pytanie 3
Do tabeli pracownicy wpisano rekordy. Co zostanie wyświetlone po uruchomieniu kwerendy SQL SELECT podanej poniżej?
SELECT SUM(pensja) FROM pracownicy WHERE pensja > 4000;
id
imie
nazwisko
pensja
1
Anna
Kowalska
3400
2
Monika
Nowak
1300
3
Ewelina
Nowakowska
2600
4
Anna
Przybylska
4600
5
Maria
Kowal
2200
6
Ewa
Nowacka
5400
A. Wartość 10000, czyli suma pensji pracownika o id=4 oraz o id=6.
B. Dwie wartości: 4600 i 5400, jako pensje pracowników wyższe niż 4000.
C. Wartość 5400, czyli najwyższa pensja pracownika.
D. Wartość 19500, czyli suma wszystkich pensji pracowników.
Gratulacje, twoja odpowiedź jest poprawna. Kwerenda SQL 'SELECT SUM(pensja) FROM pracownicy WHERE pensja > 4000;' jest zapytaniem, które agreguje (suma) wartości kolumny 'pensja' dla tych wierszy, gdzie pensja przekracza 4000. SQL jest językiem, który pozwala na manipulację i odzyskiwanie danych przechowywanych w relacyjnej bazie danych. Funkcja SUM() jest jednym z podstawowych operatorów agregujących w SQL, który zwraca sumę wartości numerycznych. W tym konkretnym przypadku, zgodnie z pytaniem, suma pensji pracowników, którzy zarabiają więcej niż 4000 wynosi 10000. To pokazuje, jak potężne mogą być kwerendy SQL, umożliwiając szybkie wykonanie złożonych obliczeń na dużych zestawach danych. Podejście to jest często stosowane w analizie danych i raportowaniu, gdzie potrzebna jest agregacja danych na różnych poziomach.
Pytanie 4
Istnieje tabela o nazwie przedmioty, która zawiera kolumny ocena i uczenID. Jakie zapytanie należy wykorzystać, aby obliczyć średnią ocen ucznia z ID równym 7?
A. SELECT COUNT(ocena) FROM przedmioty WHERE uczenID=7;
B. AVG SELECT ocena FROM przedmioty WHERE uczenID=7;
C. COUNT SELECT ocena FROM przedmioty WHERE uczenID=7;
D. SELECT AVG(ocena) FROM przedmioty WHERE uczenID=7;
Odpowiedź SELECT AVG(ocena) FROM przedmioty WHERE uczenID=7; jest prawidłowa, ponieważ wykorzystuje funkcję agregującą AVG, która oblicza średnią wartość dla podanego zestawu danych. W tym przypadku skupiamy się na ocenach ucznia o ID równym 7, co osiągamy poprzez zastosowanie klauzuli WHERE. Funkcje agregujące, takie jak AVG, są standardowym narzędziem w SQL do analizy danych, szczególnie przydatnym w kontekście raportowania i analityki. Dzięki takiemu zapytaniu możemy szybko uzyskać średnią ocen ucznia, co może być wykorzystane do oceny jego postępów w nauce lub do podejmowania decyzji z zakresu pedagogiki w oparciu o zebrane dane. W praktyce, takie podejście jest zgodne z najlepszymi praktykami w pracy z bazami danych, pozwalając na wydobycie istotnych informacji z dużych zbiorów danych bez konieczności przetwarzania ich ręcznie. Użycie AVG w połączeniu z klauzulą GROUP BY mogłoby również być zastosowane, gdybyśmy chcieli uzyskać średnie oceny dla wielu uczniów jednocześnie, co dodatkowo podkreśla elastyczność i moc SQL w analizie danych.
Pytanie 5
Zakładając, że zmienna tablicowa $tab jest wypełniona liczbami naturalnymi, wynikiem programu będzie wypisanie
$liczba = $tab[0]; foreach ($tab as $element) { if ($element > $liczba) $liczba = $element; } echo $liczba;
A. elementu tablicy, który jest równy wartości $tab[0].
B. największego elementu tablicy.
C. najmniejszego elementu tablicy.
D. tych elementów, które są większe od zmiennej $liczba.
Niektóre z błędnych odpowiedzi sugerują, że wynikiem programu będzie wypisanie najmniejszego elementu tablicy, tych elementów, które są większe od zmiennej $liczba, oraz elementu tablicy, który jest równy wartości $tab[0]. Te odpowiedzi są nieprawidłowe, ponieważ nie odzwierciedlają one prawidłowo działania programu. Program nie szuka najmniejszego elementu, ale największego. Nie ma również informacji, że program miałby wypisywać elementy większe od jakiejś konkretnej zmiennej - program porównuje wszystkie elementy tablicy z bieżącą największą znaną wartością, a nie z określoną z góry wartością. Odpowiedź sugerująca, że program wypisze wartość $tab[0] również jest nieprawidłowa, ponieważ wartość $tab[0] jest tylko początkową wartością do porównania, a nie koniecznie największym elementem tablicy.
Pytanie 6
Która z poniższych funkcji zdefiniowanych w języku PHP oblicza sumę połowy wartości a i połowy wartości b?
A. function licz($a, $b) {return 2/$a + 2/$b;}
B. function licz($a, $b) {return $a/2 + $b/2;}
C. function licz($a, $b) {return $a/2 + $b;}
D. function licz($a, $b) {return ($a/2 + $b)/2;}
Odpowiedź jest poprawna, ponieważ funkcja 'licz' w tej formie prawidłowo oblicza sumę połowy wartości a oraz połowy wartości b. W języku PHP, operator '/' dzieli wartość po lewej stronie przez wartość po prawej, więc w tym przypadku a/2 i b/2 zwracają odpowiednio połowę a oraz połowę b. Następnie te dwie wartości są sumowane, co jest zgodne z wymaganym wynikiem. Przykład zastosowania tej funkcji może być użyty w sytuacji, gdy chcemy obliczyć średnią wartość dwóch parametrów, co jest często spotykane w obliczeniach statystycznych i analitycznych. Dobrą praktyką jest również zapewnienie, że wartości a i b są liczbami, co można osiągnąć za pomocą walidacji danych wejściowych. Zastosowanie tej funkcji w większym kontekście, na przykład w aplikacjach webowych czy systemach obliczeniowych, pokazuje jej uniwersalność i efektywność w pracy z danymi.
Pytanie 7
Jaką barwę przedstawia kolor zapisany w modelu RGB(0, 0, 255)?
A. żółtą
B. niebieską
C. zieloną
D. czerwoną
W modelu RGB barwę tworzą składowe czerwona (R), zielona (G) i niebieska (B) o wartościach 0-255. Zapis RGB(0, 0, 255) oznacza maksymalną składową niebieską i zerowe pozostałe, czyli czysty niebieski. Dlatego RGB(0, 0, 255) to barwa niebieska.
Pytanie 8
Aby sprawdzić ustawienia konfiguracji PHP (z pliku php.ini), można uruchomić skrypt zawierający wywołanie:
A.
ini_set()
B.
phpinfo()
C.
phpversion()
D.
phpcredits()
Pozostałe funkcje robią coś węższego lub innego. ini_set() służy do zmiany jednej dyrektywy konfiguracji w trakcie wykonywania skryptu, lecz sama niczego nie wyświetla. phpversion() zwraca jedynie numer wersji interpretera - to drobny wycinek informacji, a nie pełna konfiguracja. phpcredits() pokazuje listę twórców PHP, więc z ustawieniami nie ma związku. Pełny podgląd konfiguracji, łącznie z wartościami z php.ini, daje phpinfo().
Pytanie 9
W sklepie z farbami obowiązuje określony sposób obliczania kosztu farby: dla koloru niebieskiego i zielonego przy pojemności 2 litry cena farby wynosi cena bazowa + 20%. Wyrażenie logiczne w języku JavaScript, które weryfikuje tę zasadę, ma formę
Odpowiedź jest poprawna, ponieważ stosuje właściwą składnię języka JavaScript i prawidłowo określa warunki, które muszą być spełnione, aby cena farby zwiększyła się o 20%. Wyrażenie '(kolor == 'niebieski' || kolor == 'zielony') && pojemnosc == 2' skutecznie sprawdza, czy zmienna 'kolor' przyjmuje wartość 'niebieski' lub 'zielony', a jednocześnie czy 'pojemnosc' wynosi 2. Użycie operatora logicznego '||' (lub) oraz '&&' (i) jest kluczowe w definiowaniu logiki warunkowej, co jest podstawą w programowaniu. Dzięki tej metodzie można z łatwością rozszerzyć logikę o inne kolory czy pojemności w przyszłości. Przykładem zastosowania tej logiki w praktyce może być tworzenie dynamicznego kalkulatora cen w aplikacji internetowej, gdzie użytkownicy wybierają różne kolory i pojemności, a program automatycznie oblicza cenę na podstawie zadanych reguł. Ważne jest przestrzeganie dobrych praktyk programistycznych, takich jak jasne nazewnictwo zmiennych i unikanie złożonych wyrażeń, co zwiększa czytelność kodu. Warto również pamiętać, że stosując operator '==' zamiast '=' unikamy przypisania wartości, co jest kluczowe w kontekście debugowania i poprawności działania skryptu.
Pytanie 10
Która instrukcja PHP wysyła tekst do przeglądarki (wyświetla go)?
A.
echo
B.
break
C.
type
D.
exit
Instrukcja echo w PHP wysyła tekst (lub wartość zmiennej) na wyjście, czyli do przeglądarki - np. echo"Witaj";. Dlatego tekst wyświetla echo.
Pytanie 11
Którego znacznika NIE NALEŻY umieszczać w nagłówku dokumentu HTML?
A. <h2>
B. <link>
C. <meta>
D. <title>
Odpowiedź <h2> jest trafna, bo ten znacznik jest właśnie do nagłówków w HTML. Powinien być używany w sekcji <body>, nie w <head>. Jak dobrze wiesz, nagłówki, czyli <h1> do <h6>, mają spore znaczenie w organizacji tekstu i hierarchii, co wpływa później na SEO i dostępność strony. Dzięki <h2> możesz dodać podtytuł, co sprawia, że tekst jest bardziej przejrzysty i łatwiejszy do zrozumienia. Stosowanie nagłówków w odpowiedni sposób to ważna zasada, żeby dokument miał sens i był logicznie poukładany. Warto też wiedzieć, że znaczniki takie jak <link>, <meta> i <title> są super ważne dla strony, ale pełnią inne funkcje niż nagłówki. Więc ogólnie rzecz biorąc, fajnie, że to rozumiesz!
Pytanie 12
Który z podanych formatów pozwala na zapis zarówno dźwięku, jak i obrazu?
A. WAV
B. MP3
C. PNG
D. MP4
Format MP4, znany również jako MPEG-4 Part 14, jest jednym z najpopularniejszych formatów multimedialnych, który umożliwia jednoczesny zapis zarówno dźwięku, jak i obrazu. Dzięki zastosowaniu zaawansowanej kompresji, MP4 pozwala na przechowywanie wysokiej jakości materiałów w stosunkowo małych plikach, co czyni go idealnym do przesyłania i strumieniowania w Internecie. MP4 obsługuje wiele kodeków, takich jak H.264 dla wideo oraz AAC dla dźwięku, co pozwala na szeroką kompatybilność z różnymi urządzeniami, od smartfonów po odtwarzacze multimedialne. Format ten jest zgodny z wieloma standardami, co czyni go wszechstronnym wyborem dla twórców treści. Przykłady jego zastosowania obejmują filmy wideo na platformach streamingowych, klipy muzyczne i wideoklipy. Dzięki swoim zaletom, MP4 stał się de facto standardem w przemyśle multimedialnym, co w znacznym stopniu przyczyniło się do jego popularności oraz wszechstronności.
Pytanie 13
Zdefiniowano charzm1; w C++. Jak poprawnie przypisać do niej wartość?
A.
zm1='w';
B.
zm1[2]=32;
C.
zm1==0x35;
D.
zm1="wiadro";
Zmienna typu char przechowuje POJEDYNCZY znak, który w C++ zapisuje się w apostrofach. Dlatego zm1='w'; poprawnie przypisuje znak - apostrofy odróżniają literał znakowy od łańcucha. Dlatego prawidłowe jest zm1='w';.
Pytanie 14
Która zasada dotyczy integralności danych w bazie?
A. pole klucza obcego nie może być puste
B. w relacji 1..n klucz obcy łączy się z kluczem obcym innej tabeli
C. klucz podstawowy musi mieć osobny indeks
D. pole klucza podstawowego nie może być puste
Pozostałe zdania są nieścisłe. Klucz OBCY akurat MOŻE być pusty (gdy brak powiązania). „Osobny indeks” klucza podstawowego nie jest zasadą integralności (indeks powstaje automatycznie). W relacji 1..n klucz obcy łączy się z kluczem GŁÓWNYM innej tabeli, a nie z obcym. Zasadą jest: klucz podstawowy nie może być pusty.
Pytanie 15
Który efekt został zaprezentowany na filmie?
A. Zmiana jasności zdjęć.
B. Przenikanie zdjęć.
C. Zwiększenie ostrości zdjęcia.
D. Zmniejszenie kontrastu zdjęcia.
Poprawnie wskazany efekt to przenikanie zdjęć, często nazywane też płynnym przejściem (ang. crossfade). Polega to na tym, że jedno zdjęcie stopniowo zanika, jednocześnie drugie pojawia się z narastającą widocznością. W praktyce technicznej realizuje się to najczęściej przez zmianę przezroczystości (opacity) dwóch warstw – jedna warstwa z pierwszym obrazem ma zmniejszaną wartość opacity z 1 do 0, a druga z kolejnym zdjęciem zwiększaną z 0 do 1. Na stronach WWW taki efekt robi się zwykle za pomocą CSS (transition, animation, keyframes) albo JavaScriptu, czasem z użyciem bibliotek typu jQuery czy gotowych sliderów. Moim zdaniem to jest jeden z podstawowych efektów, który warto umieć odtworzyć, bo pojawia się w galeriach, sliderach na stronach głównych, prezentacjach produktów czy prostych pokazach slajdów. W materiałach multimedialnych, np. w edycji wideo, dokładnie ten sam efekt nazywa się przejściem typu „cross dissolve” lub „fade”, i zasada działania jest identyczna – płynne nakładanie się dwóch klatek obrazu w czasie. Dobre praktyki mówią, żeby nie przesadzać z czasem trwania przenikania: zwykle 0,5–1,5 sekundy daje przyjemny, profesjonalny wygląd, bez wrażenia „zamulenia” interfejsu. Warto też pilnować spójności – jeśli na stronie używasz przenikania w jednym miejscu, dobrze jest utrzymać podobny styl animacji w innych elementach, żeby całość wyglądała konsekwentnie i nie rozpraszała użytkownika. W kontekście multimediów na WWW przenikanie jest też korzystne wydajnościowo, bo operuje głównie na właściwości opacity i transformacjach, które przeglądarki potrafią optymalizować sprzętowo.
Pytanie 16
Baza danych księgarni ma tabelę ksiazki z polami: id, idAutor, tytul, ileSprzedanych oraz tabelę autorzy z polami: id, imie, nazwisko. Jak utworzyć raport dotyczący sprzedanych książek, który zawiera tytuły oraz nazwiska autorów?
A. Ustalić relację 1..1 pomiędzy tabelami ksiazki i autorzy, a następnie stworzyć kwerendę łączącą obie tabele
B. utworzyć dwie oddzielne kwerendy: pierwszą, która wyszuka tytuły książek, a drugą, która pobierze nazwiska autorów
C. Zdefiniować relację 1..n między tabelami ksiazki i autorzy, a następnie stworzyć kwerendę łączącą obie tabele
D. stworzyć kwerendę, która wyszukuje tytuły książek
Zdefiniowanie relacji 1..n między tabelami 'ksiazki' oraz 'autorzy' jest kluczowe dla prawidłowego modelowania danych w bazach danych. Relacja 1..n oznacza, że jeden autor może mieć wiele książek, co jest w pełni zgodne z rzeczywistością w kontekście księgarni. Aby stworzyć raport sprzedanych książek z tytułami i nazwiskami autorów, konieczne jest, aby obie tabele były połączone w sposób umożliwiający łatwy dostęp do danych. Po utworzeniu relacji można skorzystać z kwerendy SQL, która wykorzystuje złączenie (JOIN) do pobrania informacji z obu tabel. Przykładowe zapytanie może wyglądać następująco: SELECT ksiazki.tytul, autorzy.nazwisko FROM ksiazki JOIN autorzy ON ksiazki.idAutor = autorzy.id. Tego typu podejście jest zgodne z dobrymi praktykami w projektowaniu baz danych, umożliwiając łatwe skalowanie oraz modyfikację w przyszłości.
Pytanie 17
Jakie są właściwe etapy tworzenia bazy danych?
A. Zdefiniowanie celu, normalizacja, utworzenie relacji, stworzenie tabel
B. Zdefiniowanie celu, stworzenie tabel, utworzenie relacji, normalizacja
C. Zdefiniowanie celu, utworzenie relacji, stworzenie tabel, normalizacja
D. Zdefiniowanie celu, normalizacja, stworzenie tabel, utworzenie relacji
W procesie tworzenia bazy danych kluczowym pierwszym krokiem jest określenie celu, który pozwala zrozumieć, jakie dane będą gromadzone oraz jakie operacje będą na nich wykonywane. Następnie przystępuje się do stworzenia tabel, które stanowią fundamentalne elementy bazy danych. Każda tabela powinna odpowiadać określonym kategoriom danych, a ich struktura powinna być dobrze przemyślana, aby umożliwić efektywne przechowywanie, zarządzanie oraz odczytywanie informacji. Po utworzeniu tabel ważne jest, aby zdefiniować relacje między nimi, co umożliwia integrację danych oraz ich logiczne powiązanie. Na końcu procesu następuje normalizacja, która ma na celu eliminację redundancji danych oraz zwiększenie integralności bazy, co przekłada się na jej wydajność. Przykładem może być stworzenie bazy danych dla systemu zarządzania uczelnią, gdzie tabele odpowiadają za studentów, kursy i wykładowców. Właściwe zdefiniowanie relacji pomoże w zrozumieniu, którzy studenci uczą się na jakich kursach, a normalizacja zabezpieczy przed powielaniem danych.
Pytanie 18
Element bazy danych, którego podstawowym celem jest generowanie lub prezentowanie zestawień informacji, to
A. moduł
B. formularz
C. raport
D. makro
Makro w bazach danych to trochę inna historia. To służy do automatyzacji, żeby szybko zrobić skomplikowane rzeczy, a nie do prezentacji danych. W sumie, to w ogóle nie jest to, czego szukamy w tym pytaniu. Moduł to z kolei po prostu fragment kodu, który robi coś określonego w bazach danych. Ale znowu, on nie służy do pokazywania danych. Moim zdaniem, moduły są ważne do rozwijania funkcji aplikacji, ale nie mają nic wspólnego z wizualizacją. Formularz to narzędzie do wprowadzania danych i edytowania ich, co jest istotne, ale też nie pozwala na drukowanie czy pokazywanie zestawień. Tak ogólnie, makra, moduły i formularze mają różne zastosowania, które nie dotyczą raportów, które są stworzone właśnie do analizy i prezentacji danych.
Pytanie 19
Aby odebrać użytkownikowi wcześniej nadane uprawnienia, należy zastosować polecenie:
A.
DELETEPRIVILEGES
B.
GRANTNOPRIVILEGES
C.
DELETE
D.
REVOKE
Do odbierania uprawnień służy REVOKE - polecenie z grupy DCL (Data Control Language), które stanowi odwrotność GRANT. Wskazujesz w nim, jakie uprawnienia i na jakim obiekcie chcesz cofnąć oraz któremu użytkownikowi, na przykład REVOKEINSERTONklienciFROMjan. Dzięki temu administrator może w każdej chwili ograniczyć dostęp, gdy zmienia się zakres obowiązków lub konto przestaje być potrzebne. To właśnie REVOKE jest poprawną odpowiedzią.
Pytanie 20
W języku PHP do zmiennej a wprowadzono tekst, w którym wielokrotnie występuje fraza Kowalski. Jakim poleceniem można jednocześnie zamienić wszystkie pojawienia się słowa Kowalski na słowo Nowak w zmiennej a?
A. $a = str_replace('Nowak', 'Kowalski');
B. $a = str_rep('Kowalski', 'Nowak', $a);
C. $a = str_replace('Kowalski', 'Nowak', $a);
D. $a = str_replace('Nowak', 'Kowalski', $a);
Odpowiedź $a = str_replace('Kowalski', 'Nowak', $a); jest poprawna, ponieważ wykorzystuje funkcję str_replace, która jest standardowym narzędziem w PHP do zamiany wszystkich wystąpień określonego ciągu znaków na inny w danym tekście. W tym przypadku zamieniamy słowo 'Kowalski' na 'Nowak' wewnątrz zmiennej $a. Funkcja str_replace działa w sposób, który jest zgodny z dobrymi praktykami programistycznymi, pozwalając na prostą i efektywną manipulację łańcuchami tekstowymi. Przykład zastosowania: jeśli $a = 'Jan Kowalski jest programistą. Kowalski ma doświadczenie.', to po wykonaniu powyższego polecenia zmienna $a stanie się 'Jan Nowak jest programistą. Nowak ma doświadczenie.'. Warto pamiętać, że str_replace jest wrażliwa na wielkość liter, co oznacza, że najlepiej stosować ją w kontekście, gdzie zapisy są jednolite. Dodatkowo, funkcja ta zwraca nowy łańcuch znaków, co oznacza, że oryginalna zmienna $a pozostaje niezmieniona, co jest zgodne z zasadami programowania funkcyjnego.
Pytanie 21
Dany jest fragment kodu PHP z zadeklarowaną zmienną typu tablicowego W wyniku wykonania kodu zostanie wypisane imię
Brawo! Twoja odpowiedź jest poprawna. Zrozumienie jak funkcje w języku PHP przetwarzają i manipulują danymi, szczególnie w kontekście tablic, jest absolutnie kluczowe. W podanym fragmencie kodu PHP, funkcja 'echo' jest użyta do wypisania elementu tablicy '$imiona' o indeksie [2]. Elementem tym jest 'Krzysztof', co jest poprawnym rozwiązaniem. PHP, jako język programowania obsługujący tablice indeksowane i asocjacyjne, pozwala na wybieranie konkretnych elementów tablicy poprzez podanie indeksu w kwadratowych nawiasach po nazwie tablicy. Jest to standardowa i często wykorzystywana praktyka w programowaniu, która umożliwia efektywne zarządzanie danymi. Dzięki temu, możemy manipulować danymi z różnych segmentów kodu, co daje nam większą elastyczność i kontrolę nad programem.
Pytanie 22
Wskaż kod równoważny do przedstawionego kodu zapisanego językiem PHP.
Kod 1.
$suma = 0;
while ($x <= 20) {
$suma += $x;
$x++;
}
Kod 2.
$suma = 0;
$x = 10;
while ($x <= 20) {
$suma += $x;
$x++;
}
Kod 3.
$suma = 0;
$x = 1;
while ($x <= 10) {
$suma += $x;
$x++;
}
Kod 4.
$suma = 0;
$x = 10;
while ($x <= 20) {
$suma = $x;
$x++;
}
A. Kod 3.
B. Kod 4.
C. Kod 1.
D. Kod 2.
Gratulacje, Twoja odpowiedź jest poprawna! Wybrałeś Kod 2, który jest równoważny do kodu PHP przedstawionego w pytaniu. Kod ten składa się z pętli while, która jest zainicjowana wartością $x równą 10. Pętla ta jest wykonywana, aż wartość zmiennej $x osiągnie 20. Co ważne, za każdym obiegiem pętli wartość zmiennej $x jest inkrementowana, co jest równoważne do działania pętli for w kodzie PHP. Wykorzystanie różnych rodzajów pętli do osiągnięcia tego samego efektu jest dobrym przykładem na to, jak różne konstrukcje języka programowania mogą służyć do rozwiązania tego samego problemu. Pamiętaj, że wybór pętli zależy od kontekstu. Pętle for są zazwyczaj używane, kiedy z góry wiemy ile razy pętla ma być wykonana. Pętle while są często wykorzystywane, gdy nie wiemy ile razy pętla ma być wykonana, ale znamy warunek jej zakończenia. To praktyczna wiedza, którą możesz zastosować w codziennym programowaniu.
Pytanie 23
Aby w jezyku CSS ustawic czerwony kolor dla tekstu, mozna uzyc stylu:
A.
text-color:rgb(255,0,0);
B.
color:rgb(#FF0000);
C.
text-color:rgb(#FF0000);
D.
color:rgb(255,0,0);
Kolor tekstu w CSS ustawia wlasciwosc color, a nie zadna inna nazwa - to ona odpowiada za barwe znakow elementu. Wartosc mozna podac na kilka sposobow, a jednym z nich jest funkcja rgb(), ktora przyjmuje trzy skladowe: czerwona, zielona i niebieska, kazda w zakresie od 0 do 255. Zapis rgb(255,0,0) oznacza pelne nasycenie czerwieni przy zerowej zieleni i zerowym blekicie, czyli czysty czerwony. Dlatego deklaracja color:rgb(255,0,0); jest jedyna poprawna sposrod podanych - laczy wlasciwa wlasciwosc z prawidlowo zapisana funkcja rgb().
Pytanie 24
Innym określeniem saturacji koloru jest:
A. nasycenie koloru
B. dopełnienie koloru
C. przezroczystość koloru
D. jasność koloru
Saturacja to po prostu NASYCENIE koloru - opisuje, jak czysta i intensywna jest barwa. Przy wysokiej saturacji kolory są żywe i soczyste, a przy stopniowym obniżaniu blakną, aż przy zerze przechodzą w odcienie szarości. To jeden z trzech parametrów modeli HSV i HSL (obok odcienia i jasności). Dlatego innym określeniem saturacji jest nasycenie koloru.
Pytanie 25
W tabeli artykuły wykonano następujące instrukcje dotyczące uprawnień użytkownika jan:
GRANT ALL PRIVILEGES ON artykuly TO jan
REVOKE SELECT, UPDATE ON artykuly FROM jan
Po zrealizowaniu tych instrukcji pracownik jan będzie uprawniony do
A. wyświetlania zawartości tabeli
B. tworzenia tabeli oraz edytowania danych w niej
C. edycji danych oraz przeglądania tabeli
D. tworzenia tabeli i wypełniania jej danymi
Jan, po wydaniu polecenia GRANT ALL PRIVILEGES ON artykuly TO jan, miał pełne uprawnienia do wszystkich operacji na tabeli artykuly. Jednakże, po wykonaniu polecenia REVOKE SELECT, UPDATE ON artykuly FROM jan, jego uprawnienia do przeglądania danych (SELECT) oraz aktualizacji danych (UPDATE) zostały odebrane. Oznacza to, że Jan zachowuje możliwość tworzenia nowych tabel oraz wypełniania ich danymi (INSERT), ponieważ nie został ograniczony w tym zakresie. Możliwości tworzenia tabeli i wypełniania jej danymi są częścią przyznanych uprawnień. W standardzie SQL, komendy GRANT i REVOKE służą odpowiednio do przyznawania i odbierania uprawnień użytkownikom. W praktycznym zastosowaniu, takie operacje są kluczowe dla zarządzania bezpieczeństwem i dostępem do danych w bazach danych, co zapobiega nieautoryzowanym zmianom i zabezpiecza integralność danych.
Pytanie 26
Do czego wykorzystuje się certyfikat SSL?
A. do blokowania złośliwego oprogramowania
B. do odszyfrowywania przesyłanych danych przez osoby trzecie
C. do potwierdzenia tożsamości (właściciela) domeny i szyfrowania połączenia
D. do zapisywania danych o sesjach na stronie
Pozostałe opisy są błędne. Certyfikat nie przechowuje danych sesji (od tego są ciasteczka i sesje serwera). Nie służy też osobom trzecim do ODSZYFROWANIA danych - przeciwnie, ma im to uniemożliwić. Blokowanie złośliwego oprogramowania to zadanie antywirusa. SSL potwierdza tożsamość domeny i szyfruje połączenie.
Pytanie 27
Która grupa znaczników HTML służy do GRUPOWANIA elementów i budowy struktury dokumentu?
A. <br>, <img>, <hr>
B. <span>, <strong>, <em>
C. <table>, <tr>, <td>
D. <div>, <article>, <header>
Do grupowania elementów i budowy struktury dokumentu służą znaczniki blokowe i semantyczne: <div> (uniwersalny kontener) oraz <article> i <header> (sekcje HTML5). Wyznaczają one układ strony. Dlatego strukturę buduje grupa <div>,<article>,<header>.
Pytanie 28
Jakie jest znaczenie powtarzania w zdefiniowanym stylu CSS?
body { background-image: url("rysunek.gif"); background-repeat: repeat-y; }
A. obrazu umieszczonego przy użyciu znacznika img
B. obrazu umieszczonego w tle strony w poziomie
C. obrazu umieszczonego w tle strony w pionie
D. tła każdego z paragrafów
Rozważając inne odpowiedzi nietrudno dostrzec podstawowe błędy w ich koncepcjach Rysunek umieszczony w tle strony w poziomie odpowiadałby wartości repeat-x a nie repeat-y To fundamentalne rozróżnienie wynika z konwencji nazewnictwa CSS która jasno określa kierunki powtarzania W przypadku użycia znacznika img obraz jest osadzony w treści dokumentu HTML a nie jako tło CSS Powtarzanie w takim kontekście nie ma miejsca ponieważ obrazki w znacznikach img są kontrolowane za pomocą innych mechanizmów jak szerokość wysokość czy pozycjonowanie w ramach układu strony Ostatnia opcja odnosząca się do tła każdego ze znaczników akapitu wykazuje niezrozumienie kontekstu CSS Deklaracja body odnosi się do całego dokumentu a nie do poszczególnych elementów takich jak akapity aby zmienić tło akapitów należałoby użyć selektora p lub innego klasyfikatora odpowiadającego tym elementom Nietrafne odpowiedzi wynikają z nieznajomości podstawowych zasad działania CSS oraz ich zastosowania w praktyce co podkreśla potrzebę dogłębnego zrozumienia jak poszczególne właściwości wpływają na układ i wygląd strony internetowej
Pytanie 29
Które stwierdzenie dotyczące antyaliasingu jest prawdziwe?
A. to jeden z filtrów służących do wyostrzania obrazu
B. dotyczy krzywych Béziera w grafice wektorowej
C. stosuje się go, aby dodać obrazowi przezroczystość
D. pozwala wyeliminować tzw. schodkowanie obrazu
Antyaliasing to technika wygładzania krawędzi na obrazie rastrowym - łagodzi tzw. schodkowanie, czyli postrzępione „pikselowe” krawędzie skośnych linii i liter, dodając pośrednie odcienie na granicy kształtów. Dzięki temu krawędzie wyglądają gładko. Dlatego prawdą jest, że antyaliasing eliminuje schodkowanie.
Pytanie 30
Określ rodzaj powiązania pomiędzy tabelami: Tabela1 oraz Tabela3
A. Wiele do wielu
B. Wiele do jednego
C. Jeden do jednego
D. Jeden do wielu
Relacja wiele do wielu między tabelami Tabela1 i Tabela3 jest prawidłowym rozwiązaniem, ponieważ relacja ta umożliwia powiązanie wielu rekordów z jednej tabeli z wieloma rekordami z drugiej tabeli. W kontekście przedstawionego schematu baz danych, tabela Tabela1 przechowuje informacje o uczniach, podczas gdy Tabela3 zawiera dane o nauczycielach. Tabela2 pełni rolę tabeli pośredniej, zawierającej klucze obce, które łączą ID_Ucznia z ID_Nauczyciela za pomocą ID_Przedmiotu jako dodatkowego klucza. To podejście jest powszechnie stosowane w projektowaniu baz danych, aby zapewnić elastyczność i możliwość zaawansowanej analizy danych, np. którzy uczniowie mają zajęcia z jakimi nauczycielami. W praktyce takie rozwiązanie stosuje się w systemach edukacyjnych, gdzie każdy uczeń może uczęszczać na zajęcia prowadzone przez różnych nauczycieli, a każdy nauczyciel może prowadzić zajęcia dla wielu uczniów. Standardy projektowania relacyjnych baz danych, takie jak normalizacja, zalecają tego rodzaju architekturę, aby uniknąć redundancji danych i umożliwić efektywne zarządzanie złożonymi relacjami. Tabele pośrednie, takie jak Tabela2, są kluczowym elementem w tworzeniu relacji wiele do wielu, ponieważ umożliwiają mapowanie skomplikowanych powiązań w sposób technicznie poprawny i zrozumiały dla użytkowników systemu.
Pytanie 31
Na przedstawionej grafice widać fragment bazy danych. Jakie kwerendę należy zastosować, aby uzyskać nazwy produktów zakupionych przez klienta o id = 1?
A. SELECT nazwa FROM produkty JOIN transakcje_produkty JOIN transakcje WHERE nr_klienta = 1
B. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) JOIN transakcje USING(nr_transakcji) WHERE nr_klienta = 1
C. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) WHERE nr_klienta = 1
D. SELECT nazwa FROM produkty JOIN transakcje ON nr_produktu = nr_klienta WHERE nr_klienta = 1
Niepoprawne odpowiedzi wynikają z błędnego zrozumienia struktury bazy danych oraz sposobu łączenia tabel. Błędem w połączeniach JOIN jest nieprawidłowe określenie warunków łączenia tabel co prowadzi do niekompletnych lub błędnych wyników. W przypadku bazy danych relacyjnej kluczowe jest aby każda tabela była prawidłowo połączona przez klucz obcy co zapewnia integralność danych. Źle skonstruowane zapytania mogą powodować problemy wydajnościowe jak również zwracać niewłaściwe informacje co jest szczególnie problematyczne w środowisku produkcyjnym. Typowe błędy myślowe obejmują nieprawidłowe zrozumienie pojęcia klucza obcego jako mechanizmu łączącego tabele oraz błędne stosowanie klauzuli WHERE bez uwzględnienia pełnej relacji między tabelami. Również użycie niewłaściwych aliasów czy nieprecyzyjnych warunków może prowadzić do nieoptymalnych zapytań. Dlatego też ważne jest zrozumienie działania JOIN oraz jego wpływu na zapytania SQL aby móc skutecznie projektować systemy bazodanowe które są skalowalne i efektywne w działaniu.
Pytanie 32
Aby ustanowić relację jeden do wielu, w tabeli reprezentującej stronę "wiele", konieczne jest zdefiniowanie
A. klucza obcego odnoszącego się do klucza obcego tabeli po stronie "jeden"
B. klucza sztucznego odnoszącego się do kluczy podstawowych obydwu tabel
C. klucza podstawowego wskazującego na klucz podstawowy tabeli po stronie "jeden"
D. klucza obcego wskazującego na klucz podstawowy tabeli po stronie "jeden"
Definiowanie relacji w bazach danych to dosyć skomplikowana sprawa. Jakby nie patrzeć, jak zrobisz coś źle z kluczami obcymi czy podstawowymi, to mogą być duże problemy z danymi. Klucz sztuczny, który odnosi się do kluczy podstawowych w obu tabelach, może wydawać się prosty, ale nie rozwiązuje faktycznego problemu, którym jest jasna relacja między danymi. To wprowadza dodatkowe zamieszanie, a to nie jest dobra praktyka. Jak zdefiniujesz klucz obcy, który wskazuje na inny klucz obcy w tabeli po stronie 'jeden', no to może być tylko mętlik, bo ciężko wtedy utrzymać spójność danych. Klucz podstawowy, który wskazuje na klucz podstawowy z tabeli po stronie 'jeden', to również zły wybór, bo klucz podstawowy ma być unikalny dla każdej tabeli. Kluczowe jest, żeby klucze obce były używane w odpowiedni sposób, bo inaczej struktura danych robi się nieczytelna i trudna do zarządzania, a to na pewno nie idzie w parze z dobrym projektowaniem baz danych.
Pytanie 33
Wskaż fragment kodu CSS, który odpowiada układowi bloków 2 - 5, zakładając, że są one oparte na poniższym kodzie HTML.
A. D
B. C
C. B
D. A
Odpowiedź B jest poprawna, ponieważ skutecznie rozmieszcza bloki 2 5 w zgodzie z przedstawionym układem HTML. Użycie właściwości float pozwala na precyzyjne kontrolowanie położenia elementów w układzie blokowym. W tym przypadku float left dla bloków #drugi i #trzeci oraz float right dla #czwarty sprawiają że bloki są odpowiednio rozstawione. Dodatkowo #piaty z float left zapewnia jego poprawne umiejscowienie poniżej bloku #trzeci. To rozwiązanie jest zgodne z dobrymi praktykami w projektowaniu responsywnych layoutów gdzie float jest używane do budowania elastycznych struktur. Ważne jest także odpowiednie zarządzanie szerokościami elementów aby nie przekraczały 100% szerokości kontenera a także uwzględnienie zastosowania clearfix aby uniknąć problemów z przepływem elementów. Poprawne zrozumienie float oraz szerokości w CSS jest kluczowe w tworzeniu zgodnych z standardami projektów internetowych co pozwala na lepszą skalowalność i utrzymanie strony w przyszłości.
Pytanie 34
Czym jest relacja w bazach danych?
A. algebraicznym powiązaniem tabel
B. logicznym powiązaniem tabel
C. połączeniem dwóch pól jednej tabeli
D. kluczem podstawowym w relacji tabel
Relacja w bazie danych to LOGICZNE powiązanie między tabelami - zwykle realizowane przez klucze: klucz obcy w jednej tabeli wskazuje klucz główny w drugiej. Dzięki relacjom dane są rozdzielone między powiązane tabele (np. klienci i ich zamówienia), co ogranicza nadmiarowość i pilnuje spójności. Dlatego relacja to logiczne powiązanie tabel.
Pytanie 35
W jakiej strukturze zapisywane są dane w relacyjnych bazach danych?
A. w tabelach
B. w kolejkach
C. w listach
D. w wektorach
Pozostałe struktury należą do innych modeli lub programowania. Listy, kolejki i wektory to STRUKTURY DANYCH używane w kodzie programu, a nie sposób organizacji bazy relacyjnej. Dane w relacyjnej bazie zapisuje się w tabelach.
Pytanie 36
Wybierz prawidłowy sposób umieszczania komentarzy w kodzie źródłowym HTML
A. "" informacje komentarza ""
B. /* informacje komentarza */
C. <!-- informacje komentarza -->
D. -- informacje komentarza --
Komentarze w HTML mają swoją bardzo konkretną składnię i to jest coś, czego przeglądarka trzyma się dość sztywno. Wiele osób myli tu różne języki i przenosi nawyki z innych technologii. Na przykład zapis w stylu -- informacje komentarza -- wygląda trochę jak fragment właściwego komentarza, bo są myślniki, ale brakuje kluczowych elementów: otwierającego ciągu <!-- i zamykającego -->. Bez tych znaków przeglądarka potraktuje taki tekst po prostu jako zwykłą treść strony lub wręcz jako błędny fragment kodu, co może rozwalić strukturę dokumentu. Taki zapis nie jest nigdzie opisany w specyfikacji HTML, więc po prostu nie działa jako komentarz. Z kolei zapis /* informacje komentarza */ pochodzi z zupełnie innego świata – to składnia komentarzy w CSS, w JavaScript (dla komentarza blokowego), w wielu językach programowania typu C, Java, PHP. I tu pojawia się typowy błąd: ktoś zna już programowanie, więc „z przyzwyczajenia” używa tych samych komentarzy w HTML. Niestety HTML nie jest językiem programowania, tylko językiem znaczników i ma własne zasady. Przeglądarka zignoruje /* */ jako komentarz HTML, a jeśli w środku będą jakieś znaki specjalne, może to nawet powodować dziwne efekty w wyświetlaniu. Podobnie zapis w cudzysłowach, czyli "" informacje komentarza "", jest po prostu tekstem w cudzysłowie. W HTML takie coś może się pojawić np. jako wartość atrybutu, ale na pewno nie jako komentarz. Przeglądarka to normalnie wyświetli, bo nie ma żadnego powodu, żeby to ukrywać. Typowy błąd myślowy jest tu taki, że skoro komentarz to „coś, czego użytkownik nie widzi”, to wystarczy „jakoś to oznaczyć”. Niestety, w technologiach webowych nie działa „jakoś”, tylko dokładnie to, co przewiduje standard. Jedyną poprawną formą komentarza w HTML jest <!-- treść komentarza -->. Warto to sobie dobrze utrwalić, bo mieszanie składni z CSS, JavaScriptu czy języków backendowych w HTML prowadzi do trudnych do wykrycia błędów i nieczytelnego kodu.
Pytanie 37
Czym jest odpowiednik encji w relacyjnej bazie danych?
A. wiersz
B. tabela
C. kolumna
D. atrybut
Pozostałe pojęcia to mniejsze elementy. Wiersz (krotka) to pojedynczy egzemplarz encji, a nie cała encja. Kolumna i atrybut opisują pojedynczą cechę. Całej encji odpowiada tabela.
Pytanie 38
Aby ustawić marginesy wewnętrzne elementu: górny 50px, prawy 20px, dolny 40px, lewy 30px, należy użyć deklaracji CSS:
A.
padding:50px40px20px30px;
B.
padding:50px20px40px30px;
C.
padding:20px40px30px50px;
D.
padding:30px20px40px50px;
Pozostałe zapisy mają wartości w złej kolejności. Skrót padding czyta cztery liczby jako górę, prawo, dół i lewo - po kolei, zgodnie z ruchem wskazówek zegara. Wariant padding:50px40px20px30px; zamienia miejscami prawy (powinno 20) z dolnym (powinno 40). Pozostałe zaczynają od innej wartości niż wymagane 50px dla góry, więc również nie odwzorują zadanych marginesów. Poprawny zapis to padding:50px20px40px30px; (góra-prawo-dół-lewo), dlatego ta odpowiedź jest właściwa.
Pytanie 39
Mamy tablicę o n elementach o nazwie t[n]. Zadaniem algorytmu, zapisanego w krokach, jest wyliczenie sumy
K1: i = 0; wynik = 0; K2: Dopóki i < n wykonuj K3 .. K4 K3: wynik ← wynik + t[i] K4: i ← i + 2 K5: wypisz wynik
A. sumy tych elementów tablicy, które mają wartości nieparzyste
B. co drugiego elementu tablicy
C. wszystkich elementów tablicy
D. n-elementów tej tablicy
Pierwsza niepoprawna koncepcja sugeruje zsumowanie wszystkich elementów tablicy, co wymagałoby iteracji przez każdy element bez przeskakiwania indeksów. Taki algorytm miałby strukturę z pętlą stabilnie zwiększającą indeks o 1, co nie jest zgodne z przedstawionym kodem. Druga opcja zakłada sumowanie n-elementów tablicy, co jest mało precyzyjne i może sugerować błędne rozumienie, że n samo w sobie jest wartością sumowaną, a nie indeksem granicznym. Algorytm musiałby dodawać wszystkie elementy od zera do n-1, a w rzeczywistości operuje na co drugim indeksie. Ostatnia propozycja dotycząca sumowania elementów o wartościach nieparzystych wymagałaby dodatkowego warunku sprawdzającego parzystość wartości t[i], czego brak w przedstawionym kodzie. Typowym błędem jest niezrozumienie różnicy między iterowaniem po indeksach a wartościami oraz między warunkiem logicznym a przekształceniem pętli. Wszystkie te błędne odpowiedzi wynikają z nieprecyzyjnego przeanalizowania warunków i struktury pętli, co jest kluczowe w projektowaniu efektywnych algorytmów, zgodnie z zasadami inżynierii oprogramowania.
Pytanie 40
W poniższym kodzie PHP wykonano operację na bazie danych. Której funkcji należy użyć, aby pobrać liczbę zmienionych w tabeli wierszy?
$zapytanie="UPDATE kadra SET stanowisko='Programista' WHERE id < 10";mysqli_query($db, $zapytanie);
A. mysqli_use_result()
B. mysqli_num_rows()
C. mysqli_affected_rows()
D. mysqli_field_count()
Gratulacje! Wybrałeś poprawną odpowiedź, która jest funkcją mysqli_affected_rows(). Ta funkcja jest specyficzna dla języka PHP i jest używana do zwracania liczby wierszy, które zostały zmienione, dodane lub usunięte przez ostatnie wywołanie funkcji mysqli_query() na serwerze MySQL. W kontekście operacji takich jak INSERT, UPDATE, REPLACE lub DELETE, mysqli_affected_rows() jest nieocenionym narzędziem do śledzenia ilości wykonanych zmian w bazie danych. Dlatego właśnie w przypadku przedstawionego pytania, gdzie w kodzie PHP wykonano operację UPDATE na bazie danych, idealnym rozwiązaniem jest użycie funkcji mysqli_affected_rows() do pobrania liczby zmienionych wierszy. Jest to kluczowe zrozumienie, aby efektywnie manipulować danymi w bazach danych MySQL za pomocą języka PHP.