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: 11 maja 2026 08:36
  • Data zakończenia: 11 maja 2026 08:57

Egzamin zdany!

Wynik: 25/40 punktów (62,5%)

Wymagane minimum: 20 punktów (50%)

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

Wartości, które może przyjąć zmienna typu double, to:

A. 2.4; 4; 3.2
B. "Ala"; 'd'
C. 1979-12-05; 12:33
D. 1,44; 2,55
Zmienna typu double jest typem danych, który jest powszechnie używany w programowaniu, szczególnie w językach takich jak Java, C++ czy Python, do przechowywania liczb zmiennoprzecinkowych o podwójnej precyzji. W przeciwieństwie do typów całkowitych, typ double może reprezentować liczby z częścią dziesiętną, co czyni go idealnym do obliczeń wymagających precyzyjnych wartości, takich jak obliczenia finansowe czy naukowe. Przykłady wartości, które mogą być przechowywane w zmiennej typu double obejmują 2.4, 4, 3.2, gdzie każda z nich jest liczbą zmiennoprzecinkową. Ważne jest, aby stosować ten typ w odpowiednich kontekstach, aby uniknąć błędów związanych z precyzją. Zgodnie z najlepszymi praktykami, podczas definiowania zmiennych należałoby jasno określić ich typ, aby zapewnić przejrzystość kodu oraz jego przyszłą konserwację.

Pytanie 2

W języku PHP stwórz warunek, który będzie prawdziwy, gdy zmienna

$a 
będzie jakąkolwiek liczbą całkowitą mniejszą niż -10 lub gdy zmienna
$b 
będzie liczbą z zakresu (25, 75). Wyrażenie logiczne w tym warunku powinno mieć postać
A. ($a < -10) and (($b > 25) and ($b < 75))
B. ($a < -10) or (($b > 25) and ($b < 75))
C. ($a < -10) or (($b > 25) or ($b < 75))
D. ($a < -10) and (($b > 25) or ($b < 75))
W analizowanych odpowiedziach występują różne nieprawidłowe założenia dotyczące użycia operatorów logicznych. W przypadku wyrażenia ($a < -10) and (($b > 25) and ($b < 75)), warunek wymaga, aby oba kryteria były spełnione jednocześnie, co nie odpowiada treści pytania, w której wystarczy spełnienie jednego z nich. Z kolei odpowiedź ($a < -10) or (($b > 25) or ($b < 75)) wprowadza błąd przez użycie operatora 'or' w niewłaściwy sposób, ponieważ drugi człon pozwala na spełnienie jednego z warunków niezależnie od drugiego, co sprawia, że warunek dotyczący zmiennej $b staje się zbyt ogólny. Odpowiedź ($a < -10) and (($b > 25) or ($b < 75)) również jest błędna, ponieważ wymaga zarówno, aby zmienna $a była mniejsza od -10, jak i aby $b było większe niż 25 lub mniejsze niż 75, co wprowadza niepotrzebne ograniczenia. Te błędne odpowiedzi wskazują na typowe trudności w zrozumieniu logiki warunkowej w programowaniu, w szczególności przy użyciu operatorów 'and' i 'or'. Kluczowe jest, aby zawsze dokładnie analizować wymagania dotyczące warunków logicznych oraz zrozumieć ich konsekwencje w kontekście wykonania kodu.

Pytanie 3

Który typ danych jest przeznaczony do zapisywania daty urodzenia uczniów w bazie danych szkoły?

A. ENUM
B. BLOB
C. TIME
D. DATE
W tym pytaniu kluczowe jest zrozumienie, że data urodzenia jest typową daną kalendarzową i powinna być przechowywana w specjalnym typie datowym, a nie w typach przeznaczonych do zupełnie innych zastosowań. Częsty błąd polega na tym, że ktoś próbuje dobrać typ po nazwie, która brzmi ogólnie znajomo, bez zastanowienia się, jakie operacje będą później wykonywane na tych danych i jakie możliwości daje konkretny typ w SQL. Typ TIME służy do przechowywania samego czasu, najczęściej w formacie godzina:minuta:sekunda, bez informacji o dacie. Jest idealny np. do godzin rozpoczęcia lekcji, planu dzwonków, rejestracji czasu wejścia na lekcję, ale kompletnie nie nadaje się do daty urodzenia, bo w tym przypadku to właśnie dzień, miesiąc i rok są kluczowe, a nie godzina. Gdyby zapisywać datę urodzenia jako TIME, stracilibyśmy całkowicie informację o dacie, a baza nie byłaby w stanie poprawnie obliczyć wieku ucznia czy filtrować po roczniku. Z kolei BLOB to typ binarny, używany do przechowywania surowych danych, takich jak zdjęcia, skany dokumentów, pliki PDF, dźwięki. Z technicznego punktu widzenia dałoby się tam wrzucić cokolwiek, nawet zakodowaną datę, ale byłoby to łamanie wszystkich sensownych zasad projektowania baz danych: brak możliwości sortowania po dacie, brak standardowych funkcji datowych, problem z indeksowaniem, trudne debugowanie. To typ przeznaczony do zupełnie innych zastosowań, np. zdjęcie legitymacyjne ucznia można trzymać w BLOB, ale już jego datę urodzenia absolutnie nie. ENUM natomiast służy do przechowywania jednego z kilku z góry zdefiniowanych tekstowych wariantów, np. płeć, status ucznia, typ klasy. Data urodzenia nie jest zbiorem zamkniętych wartości, tylko ciągłym zakresem dat, więc próba użycia ENUM prowadziłaby do absurdalnej sytuacji definiowania tysiąca możliwych opcji. Typowym błędem myślowym jest tu traktowanie każdej informacji jako zwykłego tekstu lub „opcji z listy”, zamiast korzystać z wyspecjalizowanych typów datowych dostępnych w SQL. Dobre praktyki mówią jasno: do dat używamy DATE (lub pokrewnych typów), do czasu TIME, do plików BLOB, a ENUM tylko tam, gdzie mamy niewielki, stały zestaw opisowych wartości.

Pytanie 4

W tabeli o nazwie pracownicy zdefiniowano klucz główny w typie INTEGER z atrybutami NOT NULL oraz AUTO_INCREMENT. Dodatkowo zdefiniowane zostały pola imie oraz nazwisko. W przypadku wykonania podanej kwerendy SQL, która dodaje dane i pomija pole klucza, w bazie danych MySQL nastąpi

INSERT INTO pracownicy (imie, nazwisko)
VALUES ('Anna', 'Nowak');
A. dodanie rekordu do tabeli, dla klucza głównego zostanie przypisana wartość NULL
B. dodanie rekordu do tabeli, dla klucza głównego zostanie przypisana kolejna wartość naturalna
C. błąd związany z niewłaściwą liczbą pól
D. zignorowanie polecenia, tabela nie ulegnie zmianie
W przypadku tabeli z kluczem głównym typu INTEGER z atrybutem AUTO_INCREMENT, kiedy wprowadzamy nowy rekord i pomijamy pole klucza głównego, baza danych MySQL sama automatycznie przydziela kolejną wartość liczbową dla tego pola. AUTO_INCREMENT to mechanizm, który zapewnia, że każdemu nowemu rekordowi przypisana jest unikalna wartość klucza głównego, zaczynając od wartości początkowej, zwykle 1, i zwiększając ją o 1 z każdym nowym rekordem. Jest to niezwykle użyteczne w sytuacjach, gdy zależy nam na unikalności wartości kluczy głównych, co zapewnia integralność danych i unika konieczności ręcznego określania wartości klucza przy każdym nowym wpisie. Takie podejście jest zgodne ze standardami dobrych praktyk, ponieważ minimalizuje ryzyko błędów związanych z duplikacją danych. Przykładowo, jeśli do tabeli pracownicy dodajemy rekord z danymi pracownika, nie musimy się martwić o wartość identyfikatora, co znacznie upraszcza proces zarządzania danymi. Mechanizm AUTO_INCREMENT jest zatem kluczowy w kontekście zarządzania bazami danych, zapewniając automatyzację i integralność danych.

Pytanie 5

W dokumentacji CMS WordPress znajduje się zdanie:
"Enable comments for this post"
Co oznacza to zdanie?

A. Włącz możliwość dodawania komentarzy do wpisu.
B. Włącz formatowanie wpisu.
C. Włącz edycję wpisu.
D. Włącz publikację wpisu.
Poprawnie – komunikat „Enable comments for this post” w WordPressie oznacza dokładnie włączenie możliwości dodawania komentarzy do konkretnego wpisu. W praktyce jest to po prostu przełącznik, który decyduje, czy pod danym postem będzie widoczny formularz komentowania i lista komentarzy użytkowników. Z mojego doświadczenia to jedna z podstawowych opcji zarządzania interakcją z czytelnikami w systemach CMS. WordPress ma wbudowany system komentarzy i dla każdego wpisu z osobna można zdecydować, czy chcesz dopuścić dyskusję, czy raczej ma to być „statyczna” treść bez opinii użytkowników. Włączenie komentarzy nie wpływa na możliwość edycji, publikacji ani formatowania treści – to zupełnie osobne funkcje. Edycja odbywa się w edytorze blokowym lub klasycznym, publikacja jest kontrolowana przyciskiem „Opublikuj” / „Zaktualizuj”, a formatowanie dotyczy układu tekstu, nagłówków, obrazków, list itd. Włączanie komentarzy to raczej kwestia konfiguracji modułu dyskusji. W dobrych praktykach administracji WordPressa zaleca się świadome zarządzanie komentarzami: włączać je tam, gdzie istotna jest interakcja (np. blog, poradniki, aktualności), a wyłączać na stronach typu regulamin, polityka prywatności czy strony czysto informacyjne. W ustawieniach dyskusji można też ustawić moderację, wymóg zatwierdzania komentarzy, filtrowanie spamu czy ograniczenia dla niezalogowanych. W poważniejszych serwisach często łączy się natywne komentarze WordPressa z dodatkowymi wtyczkami (np. antyspam, integracja z social media), ale podstawowy przełącznik zawsze oznacza to samo: czy ten konkretny wpis ma mieć aktywną sekcję komentarzy, czy nie.

Pytanie 6

Jakie jest zadanie poniższej pętli? ```int x = 0; while (x < 10) { mojeKsiazki[x] = new Ksiazka(); x++; }```

A. stwórzenie jednego obiektu typu mojeKsiazki
B. uzupełnienie tablicy Ksiazka danymi.
C. wyświetlenie danych z tabeli Ksiazka na ekranie.
D. stworzenie dziesięciu instancji obiektów typu Ksiazka.
W przedstawionej pętli while zmienna x jest inicjowana wartością 0, a następnie w każdej iteracji pętli tworzy nowy obiekt typu Ksiazka, który jest przypisywany do elementu tablicy mojeKsiazki w indeksie x. Pętla kontynuuje działanie, aż x osiągnie wartość 10, co oznacza, że zostaną utworzone obiekty dla indeksów od 0 do 9, co łącznie daje 10 obiektów. Jest to standardowy sposób inicjalizacji tablicy obiektów w języku C#, który pokazuje, jak można dynamicznie tworzyć i przechowywać instancje klas. W praktycznych zastosowaniach, takie podejście jest bardzo użyteczne, gdy potrzebujemy przechować wiele podobnych obiektów, na przykład w aplikacjach do zarządzania danymi, gdzie każde wpisane dane może być reprezentowane przez obiekt. Poprawna alokacja pamięci oraz zarządzanie obiektami są kluczowe w programowaniu obiektowym, a umiejętność skutecznego wykorzystywania pętli do inicjalizacji tablic jest niezbędna dla każdego programisty.

Pytanie 7

W PHP tablice asocjacyjne to struktury, w których

A. indeks może być dowolnym ciągiem znaków
B. są co najmniej dwa wymiary
C. w każdej pozycji tablicy znajduje się inna tablica
D. elementy tablicy są zawsze numerowane od zera
W przypadku niepoprawnych odpowiedzi, warto zwrócić uwagę na podstawowe koncepcje dotyczące tablic asocjacyjnych. Gdybyśmy uznali, że tablica asocjacyjna musi mieć przynajmniej dwa wymiary, byłoby to niezgodne z definicją, ponieważ tablice asocjacyjne w PHP mogą być jednowymiarowe. W rzeczywistości, tablica asocjacyjna to po prostu kolekcja par klucz-wartość, gdzie klucz może być unikalnym napisem, a wartość może być dowolnym typem danych. Odpowiedź sugerująca, że w każdej komórce tablicy przechowywana jest inna tablica, również jest myląca, ponieważ tablice asocjacyjne mogą przechowywać różne typy danych, a nie tylko inne tablice. Dlatego każde przechowywane dane mogą być różnorodne, co czyni je elastycznym narzędziem. Z kolei stwierdzenie, że elementy tablicy są zawsze indeksowane od liczby równej 0, odnosi się do standardowych tablic numerowanych w PHP, a nie tablic asocjacyjnych, gdzie klucze mogą przybierać różne wartości, a nie tylko liczby. Te nieporozumienia mogą prowadzić do nieefektywnego użycia tablic asocjacyjnych, co w praktyce skutkuje trudnościami w zarządzaniu danymi i ich dostępem. Aby efektywnie korzystać z tablic asocjacyjnych, kluczowe jest zrozumienie ich podstawowych właściwości oraz różnic w porównaniu do tablic numerowanych.

Pytanie 8

Zapytanie MySQL przedstawione poniżej ma na celu

ALTER TABLE ksiazki MODIFY tytul VARCHAR(100) NOT NULL;
A. usunąć kolumnę tytul z tabeli ksiazki
B. zmienić nazwę kolumny w tabeli ksiazki
C. dodać kolumnę tytul do tabeli ksiazki
D. zmienić typ kolumny tytul w tabeli ksiazki
Polecenie 'ALTER TABLE ksiazki MODIFY tytul VARCHAR(100) NOT NULL;' służy do zmiany typu danych lub ograniczeń kolumny w istniejącej tabeli. W tym przypadku modyfikujemy kolumnę 'tytul' w tabeli 'ksiazki', zmieniając jej typ danych na VARCHAR(100) oraz ustawiając ograniczenie NOT NULL. Polecenie MODIFY jest używane w SQL do zmiany struktury kolumny, takiej jak typ danych, długość, czy też dodawanie ograniczeń. Praktyczne zastosowanie tego polecenia można znaleźć w sytuacjach, gdy oryginalna definicja kolumny jest niewystarczająca, np. zwiększenie długości pola tekstowego, aby pomieścić dłuższe wartości. Dobre praktyki przy modyfikacji kolumn obejmują dokładne zrozumienie zmian, które wprowadzasz, oraz testowanie ich w środowisku deweloperskim przed wdrożeniem na żywo. Ważne jest także rozważenie wpływu na istniejące dane oraz wydajność zapytań. Zmiana typu kolumny na VARCHAR z określoną długością jest szczególnie przydatna, gdy chcemy zminimalizować wykorzystanie pamięci w bazie danych.

Pytanie 9

W systemie baz danych sklepu znajdują się dwie tabele połączone relacją: produkty oraz oceny. Tabela oceny zawiera dowolną liczbę ocen wystawionych przez klientów dla konkretnego produktu, opisaną poprzez pola: id, ocena (pole numeryczne), produktID (klucz obcy). Aby uzyskać maksymalną ocenę dla produktu o ID wynoszącym 10, należy wykorzystać zapytanie

A. MAX SELECT ocena FROM oceny WHERE produktID = 10;
B. SELECT MAX(ocena) FROM oceny WHERE produktID = 10;
C. SELECT MAX COUNT(ocena) FROM oceny WHERE produktID = 10;
D. COUNT MAX SELECT ocena FROM oceny WHERE produktID = 10;
Odpowiedź 'SELECT MAX(ocena) FROM oceny WHERE produktID = 10;' jest poprawna, ponieważ wykorzystuje funkcję agregującą MAX, która zwraca największą wartość w danej kolumnie. W kontekście tego zapytania, funkcja MAX jest stosowana do kolumny 'ocena' w tabeli 'oceny', a dodatkowy warunek 'WHERE produktID = 10' ogranicza wyniki do tylko tych ocen, które są związane z produktem o ID równym 10. To podejście jest zgodne z najlepszymi praktykami SQL, które zalecają korzystanie z funkcji agregujących dla wydobywania statystyk z danych. W praktyce, takie zapytania są niezwykle ważne w analizie danych, na przykład do oceny jakości produktów, co może wpłynąć na decyzje biznesowe. Dzięki umiejętności konstruowania takich zapytań, analitycy mogą w łatwy sposób uzyskać kluczowe informacje niezbędne do strategii marketingowych oraz poprawy jakości obsługi klienta.

Pytanie 10

W systemie baz danych sklepu komputerowego znajduje się tabela o nazwie komputery. Aby stworzyć raport pokazujący dane z tabeli, obejmujący tylko komputery z co najmniej 8 GB pamięci oraz procesorem Intel, można wykorzystać kwerendę

A. SELECT * FROM komputery WHERE procesor = 'Intel' OR pamiec < 8
B. SELECT * FROM komputery WHERE procesor = 'Intel' AND pamiec < 8
C. SELECT * FROM komputery WHERE procesor = 'Intel' AND pamiec >= 8;
D. SELECT * FROM komputery WHERE procesor = 'Intel' OR pamiec >= 8;
Wybrana kwerenda SELECT * FROM komputery WHERE procesor = 'Intel' AND pamiec >= 8; jest prawidłowa, ponieważ precyzyjnie spełnia wymagania dotyczące filtracji danych w tabeli komputery. Użycie operatora AND jest kluczowe w tej sytuacji, ponieważ umożliwia jednoczesne sprawdzenie dwóch warunków: pierwszy warunek wymaga, aby procesor był równy 'Intel', a drugi, aby pamięć RAM była większa lub równa 8 GB. W rezultacie kwerenda zwróci tylko te rekordy, które spełniają oba kryteria, co jest zgodne z założeniem raportu. W praktyce, tego typu kwerendy są niezwykle ważne, szczególnie w kontekście analizy danych, gdzie precyzyjne określenie kryteriów jest kluczowe dla uzyskania wartościowych wyników. Dobre praktyki w tworzeniu zapytań SQL obejmują także wykorzystanie odpowiednich indeksów na kolumnach procesor i pamiec, co może znacznie zwiększyć wydajność zapytań, zwłaszcza w dużych zbiorach danych.

Pytanie 11

ALTER TABLE artykuły MODIFY cena float; Ta kwerenda ma na celu wprowadzenie zmian w tabeli artykuły.

A. zmiana nazwy kolumny cena na float
B. dodanie kolumny cena o typie float, o ile nie istnieje
C. usunięcie kolumny cena o typie float
D. zmiana typu na float dla kolumny cena
Odpowiedź była trafna, bo dotyczyła zmiany typu danych w kolumnie w tabeli. Kiedy piszesz 'ALTER TABLE artykuły MODIFY cena float;', to tak naprawdę modyfikujesz kolumnę 'cena', żeby mogła przyjmować liczby zmiennoprzecinkowe. Używanie typu float jest naprawdę przydatne, gdyż ceny często mają wartości z przecinkiem, więc nie ma sensu tego trzymać w innym formacie. Z mojego doświadczenia, takie zmiany są ważne, bo pomagają w dokładnym przechowywaniu danych, co jest kluczowe w przy aplikacjach związanych z finansami czy sprzedażą online. Ale pamiętaj, że warto zawsze mieć kopię zapasową, bo jeśli masz już jakieś dane, które się nie zmieszczą w nowym typie, to może być kłopot. Generalnie, używanie 'ALTER TABLE' to podstawowa rzecz w zarządzaniu bazami danych i dobrze wiedzieć, co się robi.

Pytanie 12

Funkcja zaprezentowana w PHP

function dzialania(int $x, float $y) {
  $z = $x + $y;
  return $z;
}
A. jest zadeklarowana z dwoma parametrami rzeczywistymi.
B. nie zwraca wyniku.
C. przyjmuje dwa argumenty z wartością domyślną.
D. zwraca wynik.
Odpowiedzi, które sugerują, iż funkcja nie zwraca wartości, są błędne, ponieważ wyraźnie widać, że zawiera instrukcję return, co świadczy o jej zdolności do zwracania wyniku. Takie nieporozumienia mogą wynikać z braku zrozumienia struktury funkcji w PHP, gdzie return jest kluczowym elementem określającym, że funkcja coś zwraca. Inna błędna odpowiedź sugeruje, że funkcja pobiera parametry z domyślną wartością. Chociaż PHP pozwala na definiowanie takich parametrów, w tym przypadku nie ma przypisanych wartości domyślnych, co oznacza, że użytkownik musi dostarczyć odpowiednie argumenty przy wywołaniu funkcji. Ponadto odpowiedź o dwóch rzeczywistych parametrach również wprowadza w błąd, gdyż typy są dokładnie określone jako int i float, co oznacza, że jeden z parametrów jest całkowity, a drugi zmiennoprzecinkowy. Takie niezrozumienie może być wynikiem braku uwagi na szczegóły podczas analizy kodu. Poprawne zrozumienie sygnatury i działania funkcji jest kluczowe dla skutecznego programowania, a błędne interpretacje mogą prowadzić do defektów w kodzie, które są trudne do zidentyfikowania i naprawy bez odpowiedniej wiedzy i doświadczenia w analizie typu danych oraz struktury funkcji w PHP. W praktyce, uniknięcie takich pomyłek wymaga dokładnej lektury kodu oraz praktyki w implementacji funkcji o różnorodnych sygnaturach w różnych kontekstach programistycznych. Dlatego tak istotne jest zrozumienie, jak funkcje operują na parametrach i jakie są ich możliwe zastosowania w projektach programistycznych.

Pytanie 13

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. 31 - 36 fps
B. 20 - 23 fps
C. 16 - 19 fps
D. 24 - 30 fps
Odpowiedź 24 - 30 fps jest prawidłowa, ponieważ to właśnie w tym zakresie klatek na sekundę (fps) uzyskuje się płynność ruchu, która jest akceptowana w większości produkcji filmowych i telewizyjnych. Standard 24 fps jest powszechnie stosowany w kinematografii, ponieważ pozwala na naturalne odwzorowanie ruchu, a także jest zgodny z technologią filmową. W praktyce, filmy kręcone w tym standardzie mają charakterystyczną estetykę, która jest ceniona przez widzów. Dodatkowo, przy 30 fps można uzyskać płynniejsze efekty w produkcjach telewizyjnych, szczególnie w transmisjach na żywo i sportowych, gdzie dynamika ruchu jest kluczowa. Utrzymanie liczby klatek w tym zakresie zmniejsza ryzyko efektów stroboskopowych, które mogą wystąpić przy niższych liczbach klatek. Warto również dodać, że nowoczesne technologie filmowe i animacyjne często korzystają z wyższych wartości fps, jednak standardowe ramy dla klasycznych produkcji pozostają w tym zakresie, co czyni je uniwersalnym punktem odniesienia dla twórców.

Pytanie 14

Jakie zagadnienie powinno być uwzględnione w dokumentacji użytkownika aplikacji?

A. Wyjaśnienie działania funkcji systemu
B. Charakterystyka użytej technologii oraz bibliotek
C. Opis zastosowanych algorytmów w kodzie
D. Szczegóły dotyczące kodu źródłowego
Opis obsługi funkcji systemu jest kluczowym elementem dokumentacji użytkownika, ponieważ umożliwia użytkownikom zrozumienie, jak korzystać z aplikacji i jej funkcji w praktyce. Dobrze przygotowany opis powinien być zrozumiały, przystępny i dostosowany do poziomu wiedzy docelowych użytkowników. Przykładowo, w aplikacji do zarządzania projektami, dokumentacja użytkownika powinna zawierać instrukcje dotyczące dodawania zadań, przydzielania ich członkom zespołu oraz śledzenia postępów. Takie podejście zwiększa efektywność użytkowania, co jest zgodne z dobrymi praktykami w tworzeniu dokumentacji, które podkreślają znaczenie dostarczania jasnych informacji o funkcjonalności aplikacji. Ponadto, opis funkcji powinien być aktualizowany wraz z rozwojem systemu, aby zapewnić, że użytkownicy mają dostęp do najnowszych informacji. Warto również uwzględnić przykłady zastosowania funkcji, co ułatwi użytkownikom ich zrozumienie i wdrożenie w codziennej pracy.

Pytanie 15

Przypisanie w JavaScript, zapisane jako var x=true;, prowadzi do tego, że zmienna x przyjmuje typ

A. ciągu znaków
B. logicznym
C. liczbowym
D. wyliczeniowym
Deklaracja zmiennej w języku JavaScript, przy użyciu słowa kluczowego 'var', tworzy zmienną x, której typ jest logiczny. Typ logiczny (boolean) w JavaScript ma dwa możliwe wartości: true oraz false. Jest to podstawowy typ danych, który jest szeroko używany w programowaniu do reprezentacji wartości prawda/fałsz, co jest niezbędne przy podejmowaniu decyzji, takich jak warunki w instrukcjach if, pętlach czy operacjach logicznych. Dlatego też, przypisanie wartości true do zmiennej x oznacza, że x jest typu boolean, co można zweryfikować za pomocą operatora typeof. W praktycznych zastosowaniach, typ logiczny jest niezwykle ważny, na przykład w formularzach internetowych, gdzie wartości typu boolean mogą określać, czy dany warunek został spełniony. W odniesieniu do standardów, typ boolean jest zdefiniowany w ECMAScript, co czyni go fundamentalnym elementem w programowaniu w tym języku. Zrozumienie typów danych, a szczególnie typu logicznego, jest kluczowe dla efektywnego programowania i optymalizacji kodu.

Pytanie 16

Fragment kodu powyżej został napisany w języku JavaScript. Co należy umieścić w miejsce kropek, aby program przypisywał wartość 1 co trzeciemu elementowi w tablicy?

for (i = 0; i < T.length; ...)
{
    T[i] = 1;
}
A. i += 3
B. i = 3
C. i ++ 3
D. i =+ 3
Inne odpowiedzi wynikają z nieprawidłowego zrozumienia mechaniki inkrementacji w pętli for w JavaScript. Wyrażenie i ++ 3 sugeruje błąd składniowy i logiczny. Operator ++ służy do zwiększenia wartości zmiennej o 1 i nie jest poprawnie użyty w połączeniu z innym operatorem lub liczbą. Takie połączenie może prowadzić do nieprzewidywalnych rezultatów i niespójności w kodzie. Natomiast i = 3 to przypisanie które ustawia wartość i na 3 na początku każdej iteracji resetując pętlę i uniemożliwiając jej poprawne działanie. Taka konstrukcja powodowałaby nieskończone zapętlenie ponieważ warunek końcowy pętli nigdy nie mógłby zostać spełniony. Z kolei i =+ 3 to błędna składnia ponieważ operator += jest połączony z plusem co prowadzi do błędów interpretacji przez kompilator. Zamiana kolejności lub dodanie niepotrzebnych znaków zmienia całkowicie logikę operacji prowadząc do nieoczekiwanych rezultatów. Zrozumienie poprawnego użycia operatorów inkrementacji i przypisania jest kluczowe w programowaniu w JavaScript ponieważ umożliwia to pisanie efektywnego i wydajnego kodu. Takie błędy są częste u początkujących którzy często mylą różne operatory przypisania i inkrementacji dlatego ważne jest ćwiczenie poprawnych konstrukcji składniowych podczas nauki programowania. Częste ćwiczenie i testowanie kodu w różnych scenariuszach pozwala na lepsze zrozumienie tych mechanizmów i uniknięcie typowych pułapek związanych z nieprawidłowym użyciem operatorów.

Pytanie 17

Który z poniższych kodów stanowi alternatywę dla kodu umieszczonego w ramce?

Ilustracja do pytania
A. <?php for($x=2;$x<=56;$x+=2){echo $x." ";} ?>
B. <?php for($x=1;$x<=55;$x+=1){echo $x." ";} ?>
C. <?php for($x=1;$x<=55;$x++){echo $x." ";} ?>
D. <?php for($x=2;$x<=54;$x+=2){echo $x." ";} ?>
W wielu odpowiedziach widać, że nie do końca rozumiesz, jak działają pętle i warunki w PHP. Kod w ramce przyzwoicie wypisuje liczby parzyste od 2 do 54, ale pomija nieparzyste tylko dzięki warunkowi if i continue. Jak masz niepoprawne odpowiedzi, to pojawia się kilka problemów. Na przykład, jak pętla startuje od x=1 i zwiększa x o 1, to wszystkie liczby się drukują, a to nie jest to, co chcesz uzyskać. Zmiana kroku na zwiększanie x o 2 byłaby dobra, ale możesz też mieć za szeroki lub zbyt wąski zakres, tak jak w przypadku, gdy pętla kończy się na 56 zamiast 54. Żeby kod był poprawny, musisz zrozumieć, że każda iteracja musi spełniać konkretny warunek, który rozwiązuje problem. Często mylimy się, myśląc, że drobne zmiany w kodzie, jak zmiana zakresu czy kroku, same z siebie załatwią sprawę. Ważne, żeby przemyśleć, jak zaplanować strukturę pętli i warunków, żeby wszystko działało tak, jak powinno i wykorzystanie zasobów było efektywne.

Pytanie 18

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

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

Pytanie 19

W języku JavaScript stworzono obiekt Samochod. Aby wywołać jedną z jego metod, trzeba wpisać

A. Samochod.spalanie_na100
B. Samochod.kolor
C. Samochod.spalanie()
D. Samochod()
W przypadku niepoprawnych odpowiedzi, możemy zauważyć, że pierwsza z nich, Samochod(), sugeruje wywołanie konstruktora obiektu, co nie jest poprawne w kontekście wywołania metody. Kiedy używamy nawiasów, JavaScript interpretuje to jako próbę stworzenia nowego obiektu, a nie dokonania akcji na istniejącym obiekcie. Kolejna odpowiedź, Samochod.kolor, odnosi się do właściwości obiektu, a nie do metody. W JavaScript możemy uzyskać dostęp do właściwości obiektów za pomocą notacji kropkowej, ale nie wykonuje to żadnej akcji ani nie wywołuje funkcji, co czyni tę odpowiedź niepoprawną w kontekście pytania. Ostatnia propozycja, Samochod.spalanie_na100, również nie jest poprawna, ponieważ sugeruje, że spalanie_na100 jest właściwością obiektu, a nie metodą. Warto zauważyć, że w JavaScript metody są definiowane jako funkcje w obiektach, co oznacza, że muszą być wywoływane z użyciem nawiasów, aby uzyskać pożądany efekt. Dlatego tylko odpowiedź wskazująca na metodę spalanie() jest właściwa. W kontekście programowania obiektowego w JavaScript, każde polecenie powinno być zgodne z definicją i zastosowaniem metod, co zwiększa przejrzystość kodu i jego funkcjonalność.

Pytanie 20

Podaj dwa sposoby ochrony bazy danych Microsoft Access?

A. Ustalenie hasła do otwarcia bazy danych oraz zabezpieczeń na poziomie użytkownika
B. Funkcje anonimowe oraz ustawienie hasła do bazy danych
C. Ustalenie zabezpieczeń na poziomie użytkownika i sesji
D. Zaszyfrowanie pliku bazy danych oraz wiadomości SMS z kodem autoryzacyjnym
W analizie pozostałych odpowiedzi można zauważyć, że wiele z nich nie odnosi się do skutecznych metod ochrony bazy danych Microsoft Access. Na przykład, funkcje anonimowe nie są standardową metodą zabezpieczania baz danych. Anonimizacja danych może być stosowana w kontekście ochrony prywatności, ale nie zapobiega dostępowi do samej bazy danych. Ponadto, ustalenie hasła otwarcia bazy danych bez dodatkowych zabezpieczeń nie zapewnia pełnej ochrony, ponieważ łatwe do odgadnięcia hasła mogą być szybko złamane przez atakujących. W kontekście zabezpieczeń SMS z kodem autoryzującym, warto zauważyć, że ta metoda w zasadzie nie jest stosowana w Microsoft Access. Chociaż SMS-y z kodami mogą być skuteczne w autoryzacji na poziomie aplikacji lub systemów webowych, Access nie obsługuje takiej funkcji. Wprowadzenie takich środków może być mylące i nie prowadzi do rzeczywistego zabezpieczenia bazy danych. Podobnie, ustalenie zabezpieczeń na poziomie sesji, mimo że jest ważne w niektórych systemach, nie znajduje zastosowania w Access, który nie obsługuje bardziej zaawansowanych metod autoryzacji sesji, jak to ma miejsce w systemach zarządzania bazami danych wysokiego poziomu, takich jak SQL Server. W skrócie, brak znajomości funkcji i ograniczeń Microsoft Access prowadzi do zaproponowania nieefektywnych metod zabezpieczeń.

Pytanie 21

Parametr face znacznika <font> jest używany do wskazania

A. koloru czcionki
B. rozmiaru czcionki
C. nazwa czcionki
D. efektów czcionki
Pierwsza z niepoprawnych odpowiedzi sugeruje, że parametr face służy do określenia barwy czcionki. Jest to błędne, ponieważ kolor tekstu w HTML ustala się za pomocą innego parametru – 'color'. Możemy na przykład użyć znacznika <font color='red'>tekst</font>, aby ustawić kolor tekstu na czerwony. Parametr face nie ma związku z kolorystyką, a jego jedynym celem jest określenie konkretnej czcionki, co jest kluczowe dla typografii na stronach internetowych. Kolejna niepoprawna odpowiedź wskazuje na efekty czcionki, co również jest mylące. Efekty takie jak pogrubienie, kursywa czy podkreślenie są osiągane dzięki zastosowaniu odpowiednich stylów CSS lub atrybutów w tagach HTML, takich jak <b>, <i>, czy <u>. Parametr face nie wprowadza żadnych efektów, a jedynie wskazuje, jaką czcionkę należy zastosować. Ostatnia niepoprawna odpowiedź odnosi się do wielkości czcionki, co również jest nieprawidłowe. W HTML rozmiar czcionki ustala się za pomocą atrybutu 'size' w tagu <font>, co jest znacznie bardziej ograniczone i mniej elastyczne niż nowoczesne podejścia z CSS. W CSS możemy zdefiniować rozmiar czcionki za pomocą właściwości 'font-size', co umożliwia precyzyjne dostosowanie wielkości tekstu, a także łatwą zmianę przez wykorzystanie jednostek względnych. Podsumowując, niepoprawne odpowiedzi mylą się co do funkcji parametru face, który nie ma związku z kolorem, efektami czy wielkością czcionki.

Pytanie 22

Jakim słowem kluczowym w języku z rodziny C można przypisać alternatywną nazwę dla już istniejącego typu danych?

A. enum
B. switch
C. union
D. typedef
Wybór błędnych słów kluczowych wskazuje na nieporozumienie dotyczące podstawowych koncepcji typów danych w języku C. 'enum' jest używane do definiowania enumeracji, które pozwalają na tworzenie zbioru nazwanych stałych, co jest użyteczne w kontekście ograniczonego zestawu wartości, ale nie ma zastosowania w nadawaniu alternatywnych nazw dla istniejących typów. 'union' natomiast definiuje typ, który może przechowywać różne typy danych w tym samym miejscu pamięci, lecz również nie ma na celu zmiany nazwy typu. 'switch' to konstrukcja sterująca, która nie ma nic wspólnego z definiowaniem typów danych, a służy do wyboru i wykonania jednego z wielu bloków kodu na podstawie wartości wyrażenia. Te błędne odpowiedzi mogą sugerować, że użytkownik nie zrozumiał roli, jaką pełnią różne słowa kluczowe w języku C. Często mylnie zakłada się, że 'enum' czy 'union' mogą pełnić funkcję, która w rzeczywistości przypisana jest do 'typedef', co prowadzi do nieścisłości w kodzie i utrudnień w jego interpretacji. Kluczowe jest zrozumienie, że 'typedef' nie tworzy nowego typu, ale jedynie nową nazwę dla już istniejącego, co jest fundamentalne w celu utrzymania przejrzystości oraz spójności w projekcie. Niezrozumienie tej zasady może prowadzić do nieefektywnego zarządzania kodem oraz błędów przy jego rozwoju.

Pytanie 23

Jakie oprogramowanie do zarządzania treścią umożliwia proste tworzenie oraz aktualizację witryny internetowej?

A. CMS
B. PHP
C. SQL
D. CSS
Wybór SQL, PHP i CSS jako odpowiedzi na pytanie o system zarządzania treścią jest wynikiem nieporozumienia dotyczącego funkcji i zastosowań tych technologii. SQL (Structured Query Language) jest językiem zapytań służącym do komunikacji z bazami danych. Umożliwia on tworzenie, modyfikowanie oraz pobieranie danych, co jest kluczowe dla działania wielu aplikacji internetowych, w tym CMS-ów, lecz sam w sobie nie dostarcza interfejsu do zarządzania treścią. PHP to język skryptowy, często wykorzystywany do tworzenia dynamicznych aplikacji webowych. Choć PHP jest podstawą wielu systemów CMS, to sam język nie jest narzędziem do zarządzania treściami. CSS (Cascading Style Sheets) natomiast jest językiem stylizacji, który odpowiada za wygląd i układ strony, ale nie wprowadza funkcji zarządzania treścią. Zastanawiając się nad tymi technologiami, można zauważyć, że mylenie ich z CMS-em może wynikać z braku zrozumienia ich ról w ekosystemie webowym. Każda z tych technologii odgrywa istotną rolę w budowie i funkcjonowaniu stron internetowych, ale nie są one systemami do zarządzania treścią. Prawidłowe zrozumienie ich funkcji jest kluczem do efektywnego wykorzystania ich w praktyce.

Pytanie 24

W języku HTML, aby uzyskać efekt podobny do tego w przykładzie, trzeba użyć konstrukcji

Ilustracja do pytania
A. <p><strike>Duży tekst</strike> zwykły tekst</p>
B. <p><big>Duży tekst</p> zwykły tekst
C. <p><big>Duży tekst</big> zwykły tekst</p>
D. <p><strike>Duży tekst zwykły tekst</p>
Błędne odpowiedzi wynikają z nieprawidłowego zrozumienia funkcji i zastosowania znaczników HTML. Znacznik <strike> jest używany do przekreślania tekstu, co nie odpowiada zadaniu zwiększenia rozmiaru tekstu. Stosowanie <strike> w kontekście zmiany rozmiaru tekstu jest błędem, ponieważ jego przeznaczeniem jest wizualne oznaczenie tekstu jako nieważnego lub usuniętego. Jest to powszechny błąd, gdzie mylone są znaczniki służące do różnych celów. Z kolei <big> powinno być stosowane wewnątrz znacznika zamykającego, aby poprawnie wpływać na rozmiar tekstu. Każdy znacznik HTML, który otwiera sekcję tekstową, powinien być odpowiednio zamknięty, co zapewnia poprawną strukturę dokumentu HTML. Niedomknięcie znacznika <big> wpływa na strukturę dokumentu i może prowadzić do nieprzewidywalnych wyników w przeglądarkach. Znajomość zasad zamykania znaczników jest fundamentalna dla zapewnienia zgodności z przeglądarkami i utrzymania czytelności kodu. Warto również podkreślić, że współczesne standardy HTML i CSS zalecają ograniczenie stosowania znaczników o przestarzałych funkcjach na rzecz nowoczesnych metod formatowania za pomocą stylów CSS, co zapewnia większą elastyczność i lepsze praktyki kodowania.

Pytanie 25

W kodzie źródłowym zapisanym w języku HTML wskaż błąd walidacji dotyczący tego fragmentu: ```

CSS

Kaskadowe arkusze stylów (ang. Cascading Style Sheets)
to język służący ...```

A. Nieznany znacznik h6.
B. Znacznik zamykający /b niezgodny z zasadą zagnieżdżania.
C. Znacznik br nie został poprawnie zamknięty.
D. Znacznik br nie może występować wewnątrz znacznika p.
Twoja odpowiedź jest poprawna. Znacznik zamykający /b w badanym kodzie HTML jest niezgodny z zasadą zagnieżdżania. Zasada ta mówi, że znaczniki powinny być zamykane w odwrotnej kolejności do otwierania - zgodnie z modelem LIFO (Last In, First Out). W praktyce oznacza to, że jeśli otworzyliśmy na przykład najpierw znacznik <i>, a następnie <b>, to najpierw powinniśmy zamknąć <b>, a dopiero potem <i>. Nieprzestrzeganie tej zasady może prowadzić do nieoczekiwanych wyników podczas renderowania strony. Jest to istotne dla utrzymania czytelności i prawidłowego funkcjonowania kodu. W codziennej praktyce, szczególnie w większych projektach, stosowanie się do takich zasad pomaga utrzymać kod zrozumiałym i łatwym do zarządzania.

Pytanie 26

Aby skutecznie stworzyć relację typu m…n, która będzie wolna od redundancji danych, konieczne jest

A. uporządkowanie przynajmniej jednej z tabel.
B. bezpośrednie połączenie kluczy obcych z obu tabel.
C. zaprojektowanie tabeli pomocniczej.
D. bezpośrednie połączenie kluczy podstawowych obu tabel.
Bezpośrednie połączenie kluczy obcych obu tabel w relacji m:n nie jest wystarczające, aby uniknąć redundancji danych. W rzeczywistości, klucze obce mają swoje zastosowanie w relacjach jeden do wielu, gdzie jedna z tabel zawiera odniesienia do drugiej. W przypadku relacji m:n, takie podejście prowadziłoby do powstania złożonych i nieczytelnych struktur, w których dane byłyby przetrzymywane wielokrotnie, co naruszałoby zasady normalizacji. Na przykład, gdybyśmy spróbowali bezpośrednio połączyć klucze obce studentów i kursów, każda kombinacja studenta i kursu byłaby wprowadzana do tej samej tabeli, co prowadziłoby do powielania informacji i wzrostu rozmiaru bazy danych bez rzeczywistej wartości. Ponadto, sortowanie jednej z tabel nie ma wpływu na strukturę relacji m:n; sortowanie jest operacją na poziomie zapytań, a nie na poziomie architektury bazy danych. Łączenie kluczy podstawowych także nie rozwiązuje problemu redundancji, ponieważ nie tworzy połączenia, które umożliwiłoby wielokrotne przypisanie tych samych elementów między tabelami. Właściwe podejście wymaga utworzenia tabeli pomocniczej, co jest powszechną praktyką w projektowaniu baz danych i zapewnia przejrzystość oraz efektywność operacyjną.

Pytanie 27

Termin „front-end” w kontekście budowy stron internetowych odnosi się do

A. działania skryptów i aplikacji realizowanych po stronie serwera WWW
B. interfejsu witryny internetowej powiązanego z technologiami działającymi w przeglądarkach internetowych
C. bazy danych zawierającej informacje prezentowane na stronie
D. organizacji danych na serwerze WWW
Pojęcie „front-end” odnosi się do części aplikacji webowej, która jest widoczna dla użytkownika i z którą użytkownik może wchodzić w interakcję. Front-end obejmuje wszystkie elementy interfejsu użytkownika, takie jak układ graficzny, teksty, obrazki oraz wszelkie interaktywne elementy, takie jak przyciski i formularze. Technologie używane w front-endzie obejmują HTML, CSS oraz JavaScript, które są standardami stosowanymi w tworzeniu stron internetowych. Dobrze zaprojektowany front-end nie tylko wygląda estetycznie, ale również jest responsywny, co oznacza, że dostosowuje się do różnych rozmiarów ekranów, co jest istotne w dobie urządzeń mobilnych. Przykłady zastosowania tej wiedzy obejmują tworzenie stron internetowych, rozwijanie aplikacji webowych oraz optymalizację doświadczeń użytkowników poprzez testy A/B oraz analizy UX. Dobre praktyki w front-endzie to także dostępność (wcag) oraz optymalizacja wydajności, co przekłada się na lepsze doświadczenia użytkowników oraz wyższe pozycje w wynikach wyszukiwania.

Pytanie 28

Która z pętli w PHP umożliwia przeprowadzenie operacji na wszystkich elementach tablicy z automatycznym nadawaniem indeksów jej elementom?

A. while
B. foreach
C. for
D. do...while
Prawidłowa odpowiedź to 'foreach', ponieważ jest to specjalna pętla w języku PHP, która została stworzona z myślą o iteracji po elementach tablicy. Umożliwia ona wykonanie operacji na każdym elemencie tablicy bez potrzeby manualnego zarządzania indeksami, co jest szczególnie przydatne w sytuacjach, gdy nie znamy z góry liczby elementów w tablicy. Dzięki 'foreach' iteracja wygląda czytelnie i zwięźle, co znacząco poprawia czytelność kodu. Przykład zastosowania: jeśli mamy tablicę z nazwiskami, możemy użyć pętli 'foreach', aby wypisać każde nazwisko na ekranie. Dodatkowo, 'foreach' jest zgodne z najlepszymi praktykami programistycznymi, ponieważ ogranicza ryzyko wystąpienia błędów związanych z błędnymi indeksami i ułatwia utrzymanie kodu. Warto również zauważyć, że 'foreach' działa zarówno na tablicach numerycznych, jak i asocjacyjnych, co czyni ją elastycznym narzędziem dla programistów.

Pytanie 29

Wskaż kod CSS odpowiadający układowi bloków 2 - 5, zakładając, że są one zbudowane w oparciu o przedstawiony kod HTML.

BLOK 1
BLOK 2BLOK 3BLOK 4
BLOK 5
<div id="pierwszy">BLOK 1</div>
<div id="drugi">BLOK 2</div>
<div id="trzeci">BLOK 3</div>
<div id="czwarty">BLOK 4</div>
<div id="piaty">BLOK 5</div>

Kod 1.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  float: left;
  width: 30%;
}
#czwarty {
  float: right;
  width: 30%;
}
#piaty {
  clear: both;
  width: 30%;
}
Kod 2.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  float: left;
  width: 30%;
}
#czwarty {
  float: right;
  width: 30%;
}
#piaty {
  float: left;
  width: 30%;
}
Kod 3.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  float: left;
  width: 30%;
}
#czwarty {
  width: 30%;
}
#piaty {
  float: right;
  width: 30%;
}
Kod 4.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  width: 30%;
}
#czwarty {
  width: 30%;
}
#piaty {
  float: right;
  width: 30%;
}
A. Kod 1.
B. Kod 2.
C. Kod 3.
D. Kod 4.
Niestety, twoja odpowiedź jest niepoprawna. Wybrałeś odpowiedź niezgodną z przedstawionym układem bloków. Analizując kod CSS, musisz zwrócić uwagę na różne aspekty, takie jak pozycja, szerokość i kolejność bloków. W tym przypadku, blok 'drugi' powinien być umieszczony po lewej stronie i zajmować 40% szerokości, bloki 'trzeci' i 'czwarty' powinny być odpowiednio po lewej i prawej stronie z szerokością 30%, a blok 'piąty' powinien być umieszczony na dole i zajmować 30% szerokości. To wszystko odpowiada układowi bloków na diagramie. Jeżeli wybrałeś inny kod, to prawdopodobnie źle zinterpretowałeś pozycję lub szerokość bloków, co jest kluczowe w tworzeniu układów stron. Ważne jest, aby zrozumieć i umieć manipulować kodem CSS, aby uzyskać pożądany układ strony. Pamiętaj, że praktyka i doświadczenie są kluczowe do zrozumienia jak kod CSS wpływa na układ i stylizację elementów strony.

Pytanie 30

Deklaracja typu dokumentu HTML: <!DOCTYPE HTML> wskazuje, że kod został stworzony w wersji

A. 7
B. 5
C. 4
D. 6
Gdy widzisz deklarację <!DOCTYPE HTML>, to znaczy, że mówimy o wersji HTML5. To obecny standard, który wprowadza naprawdę sporo nowych funkcji w porównaniu do wcześniejszych wersji. Na przykład, HTML5 pozwala na osadzanie audio i wideo bez potrzeby dodatkowych wtyczek, co jest super wygodne. Mamy też fajne semantyczne elementy jak <article>, <section> czy <nav>, które sprawiają, że łatwiej zorganizować treści na stronie. Ważne jest, żeby zawsze na początku dokumentu umieszczać tę deklarację, bo to pozwala przeglądarkom na prawidłowe wyświetlanie strony. Dzięki temu unikamy problemów z interpretacją kodu, co z doświadczenia mówię, jest naprawdę istotne.

Pytanie 31

Które z poniższych zapytań SQL zwróci wszystkie kolumny z tabeli 'produkty'?

A. SELECT * FROM produkty;
B. FETCH * FROM produkty;
C. GET * FROM produkty;
D. SELECT produkty FROM *;
Zapytanie SQL, które zwraca wszystkie kolumny z tabeli, wykorzystuje składnię SELECT * FROM nazwa_tabeli. Gwiazdka (*) jest symbolem, który oznacza, że chcemy pobrać wszystkie kolumny z danej tabeli. Jest to bardzo przydatne, gdy chcemy szybko uzyskać pełne dane z tabeli bez konieczności wymieniania każdej kolumny z osobna. W praktyce często używa się tej składni w sytuacjach, gdy chcemy wykonać operacje diagnostyczne lub szybkie przeglądanie zawartości tabeli. Jednakże, w środowiskach produkcyjnych, zaleca się raczej precyzyjne określanie potrzebnych kolumn zamiast używania "*", ponieważ pozwala to na optymalizację zapytań i może zmniejszyć obciążenie bazy danych. Niemniej jednak, zapytanie SELECT * FROM produkty; jest poprawne i zgodne z SQL-owym standardem, co czyni je prawidłowym wyborem w tym kontekście.

Pytanie 32

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. Malejąco według parametru srednia
B. Malejąco według parametru klasa
C. Rosnąco według parametru klasa
D. Rosnąco według parametru srednia
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 33

W bazie danych znajdują się dwie tabele, które są ze sobą połączone relacją 1..n. Jakiej klauzuli SQL należy użyć, aby uzyskać odpowiadające sobie dane z obu tabel?

A. OUTER LINK
B. INNER LINK
C. AND
D. JOIN
Klauzula JOIN w SQL służy do łączenia tabel w bazie danych, pozwalając na pobranie powiązanych danych z różnych tabel. W przypadku relacji 1..n, przy której jedna tabela (nazwa tabeli `A`) może mieć wiele powiązanych rekordów w drugiej tabeli (nazwa tabeli `B`), klauzula JOIN jest idealna do uzyskania korespondujących wartości z obu tabel. Przykład zastosowania to: SELECT A.*, B.* FROM A JOIN B ON A.id = B.a_id; W powyższym zapytaniu `A.id` to klucz główny tabeli `A`, a `B.a_id` to klucz obcy w tabeli `B`, który odnosi się do `A`. Klauzula JOIN może przyjmować różne formy, takie jak INNER JOIN, LEFT JOIN, RIGHT JOIN, i FULL JOIN, które różnią się sposobem łączenia danych i wynikami. JOIN jest standardem SQL, co oznacza, że jest wspierany przez większość systemów zarządzania bazami danych, takich jak MySQL, PostgreSQL, Oracle, czy Microsoft SQL Server. Użycie klauzuli JOIN jest kluczowe w relacyjnych bazach danych, gdzie dane są rozdzielone w różnych tabelach, ale muszą być analizowane łącznie.

Pytanie 34

Do zdefiniowania listy nienumerowanej w języku HTML, jaki znacznik należy zastosować?

A. <ol>
B. <ul>
C. <dt>
D. <dd>
Aby zdefiniować w języku HTML listę nienumerowaną, należy użyć znacznika <ul>, co jest standardem w HTML. Znacznik <ul> oznacza "unordered list", czyli listę, w której poszczególne elementy nie są uporządkowane w kolejności numeracyjnej. Elementy tej listy są zazwyczaj wyświetlane z ikoną (punktami) przed każdym elementem, co podkreśla ich nienumerowany charakter. Każdy element listy jest definiowany za pomocą znacznika <li> (list item). Przykładowo, pełna struktura HTML dla listy nienumerowanej może wyglądać następująco: <ul><li>Pierwszy element</li><li>Drugi element</li></ul>. Używanie list nienumerowanych jest szczególnie pomocne w organizowaniu treści w sposób, który nie wymaga hierarchii, ale raczej prezentuje różne elementy na równym poziomie. W standardach W3C HTML5, <ul> jest zalecanym znakiem do tworzenia takich struktur, co czyni go kluczowym elementem w budowie przejrzystych i zrozumiałych stron internetowych. Implementacja list nienumerowanych w HTML jest istotnym krokiem w tworzeniu semantycznie poprawnych dokumentów, co wpływa na dostępność oraz SEO.

Pytanie 35

Jakie polecenie należy zastosować, aby słowo TEKST pojawiło się w kolorze czarnym w oknie przeglądarki internetowej?

A. <body color="black">TEKST</font>
B. <font color="czarny">TEKST</font>
C. <body bgcolor="black">TEKST</body>
D. <font color="#000000">TEKST</font>
Odpowiedź <font color="#000000">TEKST</font> jest poprawna, ponieważ wykorzystuje standardowy atrybut HTML do zmiany koloru tekstu. Atrybut 'color' w tagu <font> pozwala na określenie koloru, w tym przypadku użyto wartości szesnastkowej '#000000', co odpowiada kolorowi czarnemu. Użycie wartości szesnastkowej jest uznaną praktyką w projektowaniu stron internetowych, ponieważ pozwala na precyzyjne określenie kolorów, a także wspiera szeroką gamę barw. Wartości szesnastkowe są bardziej uniwersalne i umożliwiają zastosowanie dowolnego koloru, co jest bardziej elastyczne niż nazwy kolorów w języku angielskim. Warto zauważyć, że od HTML5 tag <font> jest przestarzały, dlatego zaleca się korzystanie z CSS do stylizacji tekstu, co jest bardziej zgodne z zasadami semantycznego HTML. Przykładowo, aby uzyskać ten sam efekt w CSS, można zastosować regułę: <style> .czarny { color: #000000; } </style> i użyć <span class="czarny">TEKST</span>.

Pytanie 36

W przypadku uszkodzenia serwera bazy danych, aby jak najszybciej przywrócić pełną funkcjonalność bazy danych, należy skorzystać z

A. aktualnej wersji kopii zapasowej.
B. kompletnej listy użytkowników serwera.
C. najnowszej wersji instalacyjnej serwera.
D. opisów struktur danych w tabelach.
Wybór aktualnej wersji kopii zapasowej jako najefektywniejszej metody przywrócenia działania bazy danych po awarii serwera jest zgodny z najlepszymi praktykami w zarządzaniu danymi. Kopie zapasowe stanowią kluczowy element strategii ochrony danych i powinny być regularnie tworzone, aby minimalizować ryzyko utraty informacji. W przypadku uszkodzenia serwera bazy danych, przywrócenie z najnowszej kopii zapasowej, która zawiera wszystkie aktualne dane, jest najskuteczniejszym sposobem odzyskania sprawności systemu. Kopie zapasowe można tworzyć na różne sposoby, w tym pełne, przyrostowe i różnicowe, co pozwala na elastyczność w zarządzaniu danymi. Zgodnie z rekomendacjami takich standardów jak ISO 27001, organizacje powinny wdrażać procedury tworzenia i zarządzania kopiami zapasowymi. Przykładowo, w przypadku awarii, administratorzy mogą szybko przywrócić bazę danych do stanu sprzed awarii, co znacząco ogranicza przestoje i straty finansowe związane z utratą danych.

Pytanie 37

Jeżeli założymy, że zmienne: a, b, c mają wartości liczbowe, wynikiem spełnienia warunku będzie wyświetlenie liczby

if ($a > $b && $a > $c)
echo $a;
else if ($b > $c)
echo $b;
else
echo $c;
A. parzystej
B. najmniejszej
C. największej
D. nieparzystej
Prawidłowa odpowiedź, czyli największa liczba jest wynikiem analizy warunku, który sprawdza wartość zmiennych a, b i c. Wykorzystujemy tutaj strukturę warunkową if-else, co jest standardową techniką w wielu językach programowania, takich jak PHP czy JavaScript. Przy pierwszej linijce kodu if ($a > $b && $a > $c) echo $a sprawdzamy, czy a jest większe od b i jednocześnie większe od c. Jeśli warunek jest spełniony, wypisujemy wartość a, co oznacza, że a jest największa. Jest to zgodne z dobrą praktyką algorytmiczną, gdzie przy porównywaniu trzech wartości dokładne warunki logiczne pomagają w ustaleniu największej z nich. Struktura ta jest wydajna i łatwa do zrozumienia. Praktycznym zastosowaniem może być np. system oceniania, gdzie na podstawie kilku wyników wybieramy ten najwyższy do dalszej analizy. Prawidłowe rozpoznawanie i implementowanie takich warunków jest kluczowe w codziennej pracy programisty, który musi regularnie wybierać największe wartości do różnych zastosowań biznesowych.

Pytanie 38

Jaki System Zarządzania Bazą Danych jest standardowo używany w pakiecie XAMPP?

A. PostgreSQL
B. MariaDB
C. Firebird
D. Oracle
MariaDB jest systemem zarządzania bazą danych, który jest domyślnie stosowany w pakiecie XAMPP. Jest to otwarty, wieloplatformowy system, będący fork'iem MySQL, co oznacza, że zachowuje wiele z jego funkcjonalności, a jednocześnie wprowadza nowe cechy oraz poprawki. Dzięki temu, MariaDB zyskuje na wydajności i bezpieczeństwie w porównaniu do MySQL. Użytkownicy XAMPP mogą korzystać z MariaDB do lokalnego rozwoju aplikacji webowych, co pozwala na testowanie i debugowanie przed wdrożeniem na serwerze produkcyjnym. Przykładowe zastosowania to budowa dynamicznych stron internetowych, systemów e-commerce czy aplikacji do zarządzania treścią. Standardowe praktyki obejmują tworzenie kopii zapasowych, optymalizację zapytań oraz zapewnienie bezpieczeństwa danych poprzez odpowiednie konfiguracje oraz aktualizacje. MariaDB jest zgodna z SQL, co umożliwia łatwe przejście z MySQL oraz integrację z popularnymi frameworkami i CMS-ami takimi jak WordPress czy Joomla.

Pytanie 39

W języku HTML w celu określenia słów kluczowych dla danej strony, należy zastosować następujący zapis

A. <meta name="description" content="psy, koty, gryzonie">
B. <meta name="keywords" content="psy, koty, gryzonie">
C. <meta name="keywords" = "psy, koty, gryzonie">
D. <meta keywords="psy, koty, gryzonie">
Pierwsza z niepoprawnych odpowiedzi, <meta keywords="psy, koty, gryzonie">, jest błędna z powodu braku atrybutu 'name'. W standardzie HTML każdy element <meta> powinien zawierać atrybut 'name' lub 'property', który określa, jakiego rodzaju metadane są dostarczane. Pominięcie tego atrybutu sprawia, że przeglądarki mogą nieprawidłowo interpretować ten element, co negatywnie wpływa na SEO strony. Druga odpowiedź, <meta name="keywords" = "psy, koty, gryzonie">, zawiera błędną składnię. Równanie atrybutu w HTML powinno być zapisane z wykorzystaniem znaku ' ', a nie '='. Poprawny zapis powinien wyglądać: <meta name="keywords" content="psy, koty, gryzonie">. Błąd ten jest częstym źródłem problemów w kodzie HTML, prowadzącym do niezrozumienia przez przeglądarki, co może skutkować ignorowaniem tego elementu przez algorytmy wyszukiwarek. Ostatnia odpowiedź, <meta name="description" content="psy, koty, gryzonie">, jest niepoprawna, ponieważ nie dotyczy słów kluczowych, lecz opisu strony. Chociaż atrybut 'description' również jest istotny i wpływa na SEO, to jego zastosowanie w tym kontekście nie odpowiada na pytanie o definicję słów kluczowych. Poprawne użycie metadanych polega na precyzyjnym dobraniu atrybutów do ich funkcji, co jest kluczowe dla efektywnej optymalizacji strony.

Pytanie 40

Aby wyciszyć dźwięk w filmie odtwarzanym w przeglądarce, do podanej definicji znacznika <video> powinien zostać dodany atrybut <video> <source src="film.mp4" type="video/mp4"> </video>

A. controls
B. loop
C. muted
D. autoplay
Atrybut 'muted' w znaczniku <video> jest kluczowy dla zarządzania dźwiękiem w odtwarzanych filmach. Gdy dodamy atrybut 'muted', zapewniamy, że film będzie odtwarzany bez dźwięku, co jest szczególnie istotne w kontekście doświadczenia użytkownika na stronie internetowej. W praktyce, wiele stron korzysta z automatycznego odtwarzania filmów w tle, co jest popularne w serwisach informacyjnych oraz mediach społecznościowych. Bez dźwięku, użytkownicy nie są rozpraszani, a strona nie wpływa negatywnie na ich doświadczenie przeglądania. Zgodnie z najlepszymi praktykami, należy również pamiętać o dostępności – filmy bez dźwięku mogą być łatwiej przyswajalne dla osób z problemami ze słuchem, a także unikamy sytuacji, w której nagłe dźwięki mogłyby wywołać dyskomfort. Atrybut 'muted' jest więc nie tylko funkcjonalny, ale także zgodny z zasadami projektowania stron internetowych, które stawiają na komfort użytkownika.