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: 13 maja 2025 11:11
  • Data zakończenia: 13 maja 2025 11:25

Egzamin niezdany

Wynik: 8/40 punktów (20,0%)

Wymagane minimum: 20 punktów (50%)

Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Aby obraz umieszczony na stronie internetowej mógł automatycznie dostosowywać się do rozmiaru ekranu, na którym jest prezentowana strona, trzeba

A. jego szerokość ustawić w wartościach procentowych
B. nie zmieniać obu jego wymiarów za pomocą stylów CSS
C. oba jego wymiary ustawić w pikselach
D. jeden z jego wymiarów określić w pikselach
Ustawienie szerokości obrazu w wartościach procentowych jest kluczowe dla zapewnienia responsywności strony internetowej. Gdy szerokość obrazu wyrażona jest w procentach, automatycznie dostosowuje się ona do szerokości kontenera, w którym się znajduje. To oznacza, że obraz będzie skalował się do rozmiaru ekranu użytkownika, co jest szczególnie ważne w kontekście urządzeń mobilnych oraz różnych rozdzielczości ekranów. Przykładem może być użycie stylu CSS: `img { width: 100%; height: auto; }`, co pozwala na zachowanie proporcji obrazu, jednocześnie dostosowując jego szerokość do kontenera. Tego rodzaju praktyki są zgodne z zasadami responsywnego projektowania (Responsive Web Design) i są zalecane przez standardy W3C. Dzięki takim rozwiązaniom użytkownik zyskuje lepsze doświadczenie, a strona wygląda estetycznie na różnych urządzeniach. Dobrą praktyką jest również testowanie strony na różnych ekranach, aby upewnić się, że wszystkie obrazy i inne elementy dostosowują się do zmieniających się warunków wyświetlania.

Pytanie 2

Grafik pragnie zmienić obraz JPG na format PNG bez utraty jakości, tak aby w obszarach, gdzie pierwotnie był kolor biały, w finalnym obrazie występowała przezroczystość. W tym celu powinien

A. zaimportować obraz do edytora grafiki wektorowej
B. zmniejszyć rozdzielczość obrazu
C. przekształcić obraz w odcienie szarości
D. dodać kanał alfa
Zarówno zmniejszenie rozdzielczości obrazu, jak i przekształcenie go w odcienie szarości są podejściami, które nie spełniają wymagań postawionych w pytaniu. Zmniejszenie rozdzielczości oznacza, że zmniejszamy liczbę pikseli w obrazie, co skutkuje utratą detali i jakości, co jest zupełnie niezgodne z celem przekształcenia bez utraty jakości. Takie działanie nie ma również związku z dodawaniem przezroczystości, a może wręcz pogorszyć wizualną jakość końcowego obrazu. Ponadto, konwersja obrazu do odcieni szarości eliminuje wszystkie kolory, co sprawia, że problem z białym kolorem, który ma zostać przekształcony w przezroczystość, staje się bezprzedmiotowy. Importowanie obrazu do edytora grafiki wektorowej, chociaż może być użyteczne w niektórych przypadkach, nie jest odpowiednim narzędziem do przekształcania bitmapy z JPG na PNG z przezroczystością. Grafika wektorowa jest oparta na matematycznych formułach, a nie na pikselach, więc nie można w prosty sposób przenieść bitmapowych właściwości obrazu. Podejścia te mogą prowadzić do błędnych wniosków, w których użytkownicy mogą sadzić, że redukcja jakości i przekształcanie kolorów są wystarczającymi krokami do osiągnięcia zamierzonych efektów graficznych.

Pytanie 3

Jaką operację zapewniającą prawidłowe działanie pokazanego kodu JavaScript należy wykonać przed rozpoczęciem pętli?

A. Upewnić się, że text jest typu string
B. Zainicjować zmienną text
C. Zadeklarować zmienną i
D. Sprawdzić długość tablicy tab
Zadeklarowanie zmiennej 'i' przed pętlą nie jest konieczne, ponieważ JavaScript automatycznie deklaruje zmienną 'i' w kontekście pętli. Deklaracja zmiennych przy pomocy 'var', 'let' lub 'const' jest wystarczająca w momencie ich użycia w pętli. Kolejnym aspektem jest sprawdzenie rozmiaru tablicy 'tab'. Choć podjęcie takiego sprawdzenia jest dobrym zwyczajem, nie jest to warunek konieczny do poprawnego działania kodu. Pętla for działa w oparciu o długość tablicy, więc jeżeli tablica jest pusta, pętla po prostu się nie wykona, co nie prowadzi do błędów. Ostatnim punktem jest sprawdzenie, czy 'text' jest typu znakowego. JavaScript jest językiem dynamicznie typowanym, co oznacza, że zmienne mogą przyjmować różne typy danych w trakcie działania programu. Na początku 'text' powinno być inicjalizowane jako pusty łańcuch, ale sprawdzanie jego typu w momencie, gdy jest używane w pętli, nie jest konieczne. Wszystkie powyższe odpowiedzi mogą być postrzegane jako dobre praktyki, ale nie są kluczowymi krokami, które należy wykonać przed rozpoczęciem pętli, aby program działał poprawnie.

Pytanie 4

Zidentyfikuj poprawnie zbudowany warunek w języku PHP, który sprawdza brak połączenia z bazą MySQL.

A. if (mysqli_connect_errno()){}
B. if {mysql_connect_errno()}{}
C. if {mysqli_connect_error()}{}
D. if (mysql_connect_error())()
No, odpowiedzi, które wybrałeś, mają sporo błędów. Na przykład, 'if (mysql_connect_error())()' jest źle napisane, bo masz tu podwójne nawiasy, a powinny być pojedyncze. 'if {mysql_connect_errno(){}}' i 'if {mysqli_connect_error()}' używają klamr, gdzie powinny być nawiasy okrągłe, bo w PHP warunki muszą być w nawiasach. Te stare funkcje, takie jak 'mysql_connect_error()' czy 'mysql_connect_errno()', to już przeżytek, zostały usunięte w PHP 7.0. Teraz, wybierając 'mysqli', zapewniasz sobie lepsze bezpieczeństwo i działanie aplikacji. To jest kluczowe, żeby zrozumieć, jak poprawnie pisać kod, bo bez tego ciężko osiągniesz sukces w programowaniu w PHP.

Pytanie 5

Która z funkcji agregujących dostępnych w SQL służy do obliczania średniej z wartości znajdujących się w określonej kolumnie?

A. AVG
B. MIN
C. COUNT
D. SUM
Wybór opcji MIN, SUM lub COUNT zamiast AVG pokazuje pewne nieporozumienie dotyczące roli funkcji agregujących w SQL. Funkcja MIN służy do znajdowania najmniejszej wartości w kolumnie, co jest użyteczne, gdy potrzebujemy zidentyfikować najniższą wartość w zbiorze danych, ale nie dostarcza informacji o średniej. Z kolei SUM dodaje wszystkie wartości w określonej kolumnie, co może być przydatne, gdy chcemy uzyskać całkowitą sumę, ale nie pozwala nam na obliczenie średniej. Funkcja COUNT zlicza liczbę wierszy, które spełniają określone kryteria, co również nie ma związku z obliczaniem średniej. Te funkcje mają różne zastosowania, ale ich wybór w kontekście obliczania średniej wartości jest błędny. Często użytkownicy mogą mylić te funkcje, nie rozumiejąc, że każda z nich spełnia inną rolę w analizie danych. W praktyce, aby uzyskać średnią, należy zawsze korzystać z AVG, a nie z innych funkcji, które mogą dostarczyć informacji o różnych aspektach danych, ale nie odpowiadają na pytanie o średnią wartość.

Pytanie 6

Spośród wymienionych formatów, który charakteryzuje się najszerszą rozpiętością tonalną?

A. RAW
B. BMP
C. PNG
D. JPEG
Odpowiedzi, które nie są poprawne, można analizować w kontekście ich technicznych ograniczeń. Format PNG, mimo że obsługuje przezroczystość i jest bezstratnym formatem, ma ograniczoną rozpiętość tonalną, co oznacza, że nie przechowuje tak dużej ilości informacji tonalnych jak RAW. Ponadto, jego główną funkcją jest przechowywanie obrazów z dużą ilością detali w mniej skomplikowanych kolorach, co czyni go mniej odpowiednim do profesjonalnej obróbki zdjęć w trudnych warunkach oświetleniowych. Format BMP, choć prosty i łatwy w użyciu, również nie wspiera zaawansowanej obróbki kolorów, a jego duża objętość plików powoduje, że nie jest praktyczny dla profesjonalnych zastosowań. BMP nie korzysta z kompresji, co sprawia, że pliki są znacznie większe niż w przypadku innych formatów, ale nie oferuje dodatkowych korzyści w zakresie tonalności. JPEG, pomimo szerokiego zastosowania w fotografii i sieci, jest formatem stratnym, co oznacza, że podczas kompresji traci część danych, a tym samym rozpiętość tonalna jest ograniczona. JPEG jest bardziej odpowiedni do codziennego użytku ze względu na mniejszy rozmiar plików, ale nie daje takiej elastyczności w edycji jak RAW, co czyni go niewłaściwym wyborem dla profesjonalnych fotografów poszukujących najwyższej jakości obrazu.

Pytanie 7

W języku SQL zrealizowano polecenia GRANT przedstawione w ramce. Kto uzyska prawo do przeglądania oraz modyfikowania danych?

GRANT ALL ON frmy TO 'adam'@'localhost';
GRANT ALTER, CREATE, DROP ON frmy TO 'anna'@'localhost';
GRANT SELECT, INSERT, UPDATE ON frmy TO 'tomasz'@'localhost';

A. Adam oraz Anna
B. Jedynie Tomasz
C. Tomasz oraz Anna
D. Tomasz i Adam
Odpowiedź, że prawo do przeglądania i zmiany danych mają Tomasz i Adam, jest prawidłowa, ponieważ wynikają one z poleceń GRANT wykonanych w SQL. Adam otrzymuje pełne prawa do bazy danych 'frmy' dzięki komendzie 'GRANT ALL', co oznacza, że może zarówno przeglądać, jak i modyfikować wszelkie dane w tej bazie. Z kolei Tomasz, dzięki przyznanym mu uprawnieniom SELECT, INSERT i UPDATE, również ma możliwość przeglądania danych oraz ich zmiany. Ta sytuacja odzwierciedla kluczowe aspekty zarządzania uprawnieniami w systemach baz danych, gdzie precyzyjne przydzielanie ról i dostępów jest fundamentalne dla zapewnienia bezpieczeństwa i integralności danych. Praktyczne zastosowania takich operacji obejmują sytuacje, w których administratorzy baz danych muszą zróżnicować dostęp do danych w zależności od ról użytkowników, co jest zgodne z zasadami minimalnych uprawnień, które są standardem w branży IT.

Pytanie 8

Jakie polecenie SQL zmieni w tabeli tab wartość w kolumnie kol z Ania na Zosia?

A. UPDATE tab SET kol = 'Ania' WHERE kol = 'Zosia'
B. UPDATE tab SET kol = 'Zosia' WHERE kol = 'Ania'
C. ALTER TABLE tab CHANGE kol = 'Zosia' kol = 'Ania'
D. ALTER TABLE tab CHANGE kol = 'Ania' kol = 'Zosia'
Podane odpowiedzi, które nie wykorzystują odpowiedniej składni SQL lub koncepcji manipulacji danymi, są błędne. Na przykład, aktualizacja wartości 'Ania' na 'Zosia' za pomocą polecenia UPDATE tab SET kol = 'Ania' WHERE kol = 'Zosia' nie tylko nie osiągnie zamierzonego celu, ale również wprowadzi w błąd. W rzeczywistości, polecenie to nie zmieni żadnych danych, ponieważ nie ma rekordów, w których kolumna 'kol' zawierałaby wartość 'Zosia', a polecenie próbuje ustawić ją na 'Ania'. Z kolei użycie ALTER TABLE do zmiany wartości w kolumnie jest całkowicie niewłaściwe, ponieważ to polecenie służy do zmiany struktury tabeli, a nie danych w niej zawartych. Alteracja struktury bazy danych jest fundamentalnie różna od aktualizacji wartości w wierszach. Zrozumienie różnicy między tymi dwoma typami operacji jest kluczowe dla efektywnego zarządzania bazami danych. Typowe błędy myślowe obejmują mylenie operacji na danych z operacjami na strukturze bazy danych, co prowadzi do nieefektywnego i błędnego kodowania. Warto także zwrócić uwagę na zapewnienie integralności danych i stosowanie właściwych kryteriów, aby uniknąć przypadkowych modyfikacji lub usunięć danych.

Pytanie 9

W PHP użyto funkcji is_int(). Które z wymienionych wywołań tej funkcji da wynik TRUE?

A. is_int(NULL)
B. is_int("135")
C. is_int(135)
D. is_int(13.5)
Analizując pozostałe wywołania funkcji is_int(), można zauważyć, że w przypadku is_int("135"), przekazujemy ciąg znaków, a nie liczbę całkowitą. Choć zawiera on liczby, jest on interpretowany jako tekst, co skutkuje zwróceniem wartości FALSE. Warto pamiętać, że PHP rozróżnia różne typy danych i w tym przypadku is_int() nie będzie w stanie zinterpretować ciągu jako liczby całkowitej. Podobnie, is_int(NULL) prowadzi do identycznego wyniku, ponieważ NULL nie jest liczbą i nie spełnia kryteriów is_int(). Dodatkowo, w przypadku wywołania is_int(13.5), przekazujemy wartość zmiennoprzecinkową, co również nie spełnia wymagań funkcji. Typowe błędy myślowe, które mogą prowadzić do takich niepoprawnych wniosków, to mniemanie, że wszystkie liczby w PHP są traktowane tak samo, niezależnie od ich reprezentacji. Ważne jest, aby programiści uważnie sprawdzali typy danych, z którymi pracują, zwłaszcza w kontekście dynamicznego typowania, jakie oferuje PHP. Zrozumienie, że is_int() działa tylko na typie integer, pozwala uniknąć nieprzewidzianych błędów i poprawić jakość kodu, co jest kluczowe w profesjonalnym programowaniu.

Pytanie 10

W SQL, aby zmienić dane w tabeli, wykorzystuje się instrukcję

A. SELECT
B. JOIN
C. UPDATE
D. CREATE
Odpowiedź 'UPDATE' jest poprawna, ponieważ w języku SQL polecenie to służy do modyfikacji danych w istniejących rekordach tabeli. Umożliwia aktualizację wartości w jednym lub więcej polach w wybranych wierszach, których identyfikacja może być dokonana poprzez zastosowanie klauzuli WHERE. Na przykład, aby zaktualizować nazwisko użytkownika w tabeli 'Użytkownicy', można użyć polecenia: 'UPDATE Użytkownicy SET nazwisko = 'NoweNazwisko' WHERE id = 1;'. Dobrą praktyką jest zawsze uwzględnienie klauzuli WHERE, aby uniknąć przypadkowego zaktualizowania wszystkich rekordów w tabeli. Polecenie UPDATE jest częścią standardu SQL i szeroko stosowane w codziennej pracy z bazami danych, co czyni je kluczowym narzędziem w zarządzaniu danymi. Warto również pamiętać, że przed wykonaniem aktualizacji zaleca się wykonanie kopii zapasowej danych, aby zabezpieczyć się przed niezamierzonymi zmianami.

Pytanie 11

Fragment formularza zaprezentowany powyżej został przetworzony w skrypcie PHP. Wskaż poprawny sposób pobierania wartości z pola edycyjnego.

Ilustracja do pytania
A. $name = $_POST['imie']
B. name = $_GET[imie]
C. name = GET['imie']
D. $name = $POST['Imię']
W przypadku niepoprawnych odpowiedzi kluczowym problemem jest niezrozumienie sposobu działania metod przesyłania danych w HTTP oraz odpowiedniego ich odczytywania w PHP. Odpowiedź z użyciem GET['imie'] pomija istotny element składniowy: znak dolara ($) przed GET, co jest konieczne w PHP dla wszystkich zmiennych. Ponadto, $_GET nie jest odpowiednia dla formularza, który został przesłany metodą POST jak w przedstawionym formularzu; użycie $_GET wskazuje na próbę pobrania danych z URL-a, co nie jest zgodne z metodą POST. Kolejna odpowiedź z użyciem $POST['Imię'] jest błędna z dwóch powodów: brak znaku dolara przy POST oraz niezachowanie poprawnej nazwy klucza który jest case-sensitive. Klucz 'Imię' różni się od 'imie' co prowadzi do błędu, gdy próbujemy odwołać się do nieistniejącego klucza. W PHP, nazwy kluczy w superglobalnych tablicach są case-sensitive, co oznacza, że każde odstępstwo od zadeklarowanej nazwy w formularzu będzie prowadziło do błędów. Te błędy często wynikają z pośpiechu lub niedokładności, co podkreśla wagę staranności i dokładności podczas pracy z kodem. Zarówno GET jak i POST mają swoje zastosowania, ale muszą być używane zgodnie z przeznaczeniem i w odpowiedni sposób, co jest kluczowe dla poprawnego działania aplikacji webowych. Zrozumienie tych różnic jest istotne dla programistów, aby unikać typowych pułapek związanych z bezpieczeństwem i funkcjonalnością aplikacji webowych. Poprawne użycie superglobalnych tablic PHP jest fundamentem tworzenia solidnych i bezpiecznych aplikacji internetowych.

Pytanie 12

Przy użyciu komendy ALTER TABLE można

A. zmodyfikować strukturę tabeli
B. zmienić dane w rekordach
C. usunąć dane z rekordu
D. skasować tabelę
W kontekście baz danych warto zrozumieć, że ALTER TABLE nie zmienia wartości rekordów. Do tego mamy polecenie UPDATE, które pozwala nam na aktualizację danych w konkretnych kolumnach dla wybranych rekordów. Jeśli użyjesz ALTER TABLE w tym przypadku, to będzie to po prostu złe podejście, bo ALTER TABLE zajmuje się strukturą, a nie zawartością tabeli. Też, żeby usunąć rekordy, korzystamy z DELETE, które pozwala na usunięcie jednego lub więcej rekordów na podstawie warunków w klauzuli WHERE. Jak użyjesz ALTER TABLE w tej sytuacji, to może dojść do sporych nieporozumień. Kolejny błąd to myślenie, że ALTER TABLE może usunąć całą tabelę, co tak naprawdę robimy za pomocą DROP TABLE. Ta komenda całkowicie kasuje tabelę z bazy danych, łącznie ze wszystkimi danymi, co jest zupełnie inną sprawą niż modyfikowanie struktury tabeli. Te nieporozumienia mogą prowadzić do złych praktyk w zarządzaniu bazami danych, co w efekcie może wpłynąć na integralność i wydajność systemu.

Pytanie 13

Rekordy do raportu mogą pochodzić z

A. innego raportu
B. makropolecenia
C. tabeli
D. zapytania INSERT INTO
Wybór innego raportu jako źródła danych może wydawać się logiczny na pierwszy rzut oka, jednak w rzeczywistości, raporty są zazwyczaj wynikiem analizy danych już zgromadzonych w bazach danych, a nie bezpośrednim źródłem tych danych. Raport oparty na innym raporcie może prowadzić do niepotrzebnej złożoności oraz braku przejrzystości w dostępie do danych. Ponadto użycie makropolecenia jako źródła do generowania raportu jest niewłaściwe, ponieważ makropolecenia są narzędziami do automatyzacji zadań, a nie strukturami danych. W kontekście zapytania 'INSERT INTO', należy zauważyć, że jest to instrukcja służąca do dodawania nowych rekordów do tabeli, a nie do pobierania danych. Wybranie takiego podejścia mogłoby wprowadzić w błąd, ponieważ nie odzwierciedla rzeczywistego procesu raportowania, który wymaga analizy istniejących danych. Często błędy myślenia w tym kontekście wynikają z pomylenia celów automatyzacji z celami analizy danych. Poprawne zrozumienie roli tabel w bazach danych pozwala na wydajne raportowanie i podejmowanie decyzji na podstawie rzeczywistych i aktualnych informacji.

Pytanie 14

W PHP typ float oznacza

A. łańcuchowy
B. logiczny
C. zmiennoprzecinkowy
D. całkowity
Wybór innego typu danych w PHP, jak całkowity, łańcuchowy czy logiczny, może być mylący. Typ całkowity to po prostu liczby bez części dziesiętnej, więc jak mamy do czynienia z cenami, gdzie pojawiają się grosze, to nie ma szans na użycie tego typu. Z kolei typ łańcuchowy to coś zupełnie innego, związane z tekstem – i stosowanie go do obliczeń to droga do katastrofy. Typ logiczny, co prawda przyjmuje tylko dwie wartości – prawda i fałsz – ale również nie nadaje się do liczb. Kluczowe jest zrozumienie, że każdy typ ma swoje miejsce w programowaniu. Wiele osób myli je ze sobą, na przykład próbując użyć typu łańcuchowego tam, gdzie potrzebne są liczby, co zazwyczaj kończy się problemami. Aby rozwijać aplikacje skutecznie, trzeba odpowiednio dobierać typy danych, bo to jest podstawa programowania w PHP i w innych językach także.

Pytanie 15

Jakie działania należy podjąć, aby stworzyć stronę internetową dostosowaną do potrzeb osób z niepełnosprawnościami, zgodnie z wytycznymi WCAG 2.x?

A. podpisywać wszystkie obrazy tekstem alternatywnym oraz kontrolki etykietami
B. używać jedynie paragrafów, nie wykorzystywać nagłówków h1 – h6
C. wybrać najczęściej stosowaną przeglądarkę i na niej przeprowadzać testy tworzonej strony
D. używać jedynie jednej palety barw z jednym głównym kolorem oraz jego różnymi odcieniami
Podpisywanie wszystkich obrazów tekstem alternatywnym oraz etykietowanie kontrolek jest kluczowym elementem tworzenia dostępnych stron internetowych i jest zgodne z wytycznymi WCAG 2.x. Tekst alternatywny (alt text) dla obrazów umożliwia użytkownikom korzystającym z technologii asystujących, takich jak czytniki ekranu, zrozumienie kontekstu wizualnego, co jest szczególnie istotne dla osób z niepełnosprawnościami wzrokowymi. Etykiety dla kontrolek, takich jak pola formularzy, również pełnią ważną rolę w dostępności, ponieważ zapewniają jasne wskazówki dotyczące interakcji i funkcji. Przykładem poprawnego zastosowania jest dodanie atrybutu alt do obrazów, jakOpis obrazuoraz stosowanie etykiet w formularzach, np.. Praktyki te są zgodne z zasadą percepcji z WCAG, która mówi, że wszystkie informacje i komponenty interaktywne muszą być dostępne dla użytkowników.

Pytanie 16

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

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

Pytanie 17

Tworząc raport w systemie zarządzania relacyjnymi bazami danych, umożliwia się

A. aktualizowanie danych w tabelach
B. usuwanie danych z tabel
C. dodawanie danych do tabel
D. analizę wybranych danych
Wykonywanie raportów w systemie obsługi relacyjnych baz danych nie polega na usuwaniu, dodawaniu ani aktualizowaniu danych. Usuwanie danych w tabelach jest operacją destrukcyjną, która trwale eliminuje informacje i nie sprzyja przechowywaniu ich do późniejszej analizy. Dodawanie danych to proces, który zwiększa objętość bazy danych, a nie koncentruje się na analizie już istniejących informacji. Z kolei aktualizacja danych polega na modyfikacji istniejących rekordów, co również nie ma bezpośredniego związku z tworzeniem raportów. Właściwe zrozumienie celu raportowania jest kluczowe dla efektywnego wykorzystania systemów bazodanowych. Często użytkownicy mylą procesy związane z utrzymywaniem baz danych z ich analizą. Dobrą praktyką jest oddzielanie operacji DML (Data Manipulation Language) od DQL (Data Query Language), które służy do analizy danych przy użyciu odpowiednich zapytań. Zastosowanie raportowania w systemach baz danych powinno być skupione na zrozumieniu i interpretacji danych, co pozwala na lepsze podejmowanie decyzji, zamiast na manipulacji danymi. Kluczowym aspektem jest umiejętność wyciągania wniosków z danych, które zostały już zgromadzone, a nie ich modyfikacja.

Pytanie 18

Który z wymienionych formatów wideo nie jest wspierany przez standard HTML5?

A. B. Ogg
B. C. MP4
C. D. WebM
D. A. AVI
Wybór Ogg, MP4 czy WebM jako odpowiedzi niewłaściwych jest nie do końca trafny, bo wszystkie te formaty są jednak obsługiwane przez HTML5. Ogg, mimo że mniej popularny, jest całkowicie ok w specyfikacji HTML5 i zyskuje na znaczeniu w kontekście otwartych standardów. MP4 to jeden z najpopularniejszych formatów, wspierany przez prawie wszystkie przeglądarki i urządzenia mobilne, więc to świetny wybór do strumieniowania. WebM, stworzony przez Google, również ma swoje miejsce i jest często używany do wideo w sieci. Wiele osób myli się myśląc, że mniej znane formaty są niekompatybilne z HTML5. Często ludzie uważają, że starsze formaty jak AVI są bardziej uniwersalne, ale to nieprawda, bo współczesne przeglądarki mają inne wymagania. Dlatego tak ważne jest, by programiści i twórcy treści znali różnorodność formatów i ich zastosowanie w multimediach w sieci.

Pytanie 19

Która z wymienionych metod umożliwia wyświetlenie komunikatu w konsoli przeglądarki internetowej przy użyciu języka JavaScript?

A. console.log("test");
B. console.print("test");
C. console.write("test");
D. console.echo("test");
Wszystkie pozostałe opcje są niepoprawne, co jest wynikiem nieznajomości metody obsługi konsoli w JavaScript. Metoda console.write nie istnieje w standardowym API JavaScript, co prowadzi do błędu, jeśli użytkownik spróbuje jej użyć. Analogicznie, console.print również nie jest zdefiniowaną metodą, co skutkuje tym, że przeglądarka nie będzie w stanie jej rozpoznać, a użytkownik nie zobaczy oczekiwanego rezultatu. W przypadku console.echo, użytkownicy mogą pomylić tę metodę z innymi językami programowania, takimi jak PHP, gdzie echo jest używane do wypisywania na ekranie. Takie pomyłki często wynikają z niepełnego zrozumienia różnic między różnymi językami oraz ich składnią. Użycie nieistniejących metod pokazuje, jak ważne jest przestrzeganie standardów i dokumentacji specyfikacji języka JavaScript, aby uniknąć frustracji i nieefektywności w pracy. Kluczowym wnioskiem jest to, że aby skutecznie korzystać z narzędzi dostępnych w danym języku, należy dobrze zrozumieć jego zasady i konwencje, a także śledzić zmiany w specyfikacji, aby być na bieżąco z aktualnymi najlepszymi praktykami w programowaniu.

Pytanie 20

Jakie polecenie pozwala na kontrolowanie oraz optymalizację bazy danych?

A. mysqlimport
B. mysqlshow
C. mysqlcheck
D. mysqldump
Odpowiedzi takie jak 'mysqlshow', 'mysqldump' i 'mysqlimport' są mylące, ponieważ nie pełnią roli narzędzi do sprawdzania i optymalizacji bazy danych. Narzędzie mysqlshow służy jedynie do wyświetlania informacji o bazach danych i tabelach, co może być użyteczne do monitorowania istniejących struktur, ale nie wpływa na ich integralność ani wydajność. Z kolei mysqldump jest wykorzystywane do tworzenia zrzutów danych z bazy, co jest kluczowe dla backupów, ale nie ma żadnych funkcji związanych z optymalizacją czy konserwacją. Wreszcie, mysqlimport jest narzędziem do importowania danych z plików zewnętrznych do bazy danych, a więc również nie odnosi się do kwestii sprawdzania czy optymalizacji. Wybierając te odpowiedzi, można dojść do błędnych wniosków, sądząc, że jedno narzędzie może pełnić wiele funkcji, podczas gdy każde z wymienionych narzędzi ma swoje specyficzne zadania. Zrozumienie różnicy między tymi narzędziami jest kluczowe dla efektywnego zarządzania bazami danych oraz stosowania najlepszych praktyk w ich administracji.

Pytanie 21

Algorytm pokazany na ilustracji można zapisać w języku JavaScript przy użyciu instrukcji

Ilustracja do pytania
A. for(i = 0; i > 10; i++)
B. var i = 0; do i = i + 2; while(i < 10)
C. var i = 0; do i++; while(i > 10)
D. var i = 0; while(i <= 10) i += 2
W przypadku odpowiedzi var i = 0; do i = i + 2; while(i < 10); błąd tkwi w zastosowaniu pętli do-while. Pętla do-while wykonuje blok kodu przynajmniej raz przed sprawdzeniem warunku, co może prowadzić do nieoczekiwanych wyników, jeśli warunek początkowy nie jest spełniony. Odpowiedź for(i = 0; i > 10; i++) zawiera niepoprawny warunek i > 10, co oznacza, że pętla nigdy się nie wykona, ponieważ warunek początkowy nie jest prawdziwy. Ostatnia odpowiedź var i = 0; do i++; while(i > 10); również wykorzystuje do-while, ale z nieprawidłowym warunkiem i > 10, przez co pętla wykona się tylko raz, gdy i zwiększy się na 1, co nie odpowiada przedstawionemu algorytmowi. Typowym błędem jest zastosowanie niewłaściwych warunków w pętlach, które mogą skutkować nieskończonymi iteracjami lub niewłaściwym zakresem przetwarzanych danych. Dobrze jest zawsze dokładnie analizować logikę warunków i struktur pętli, co pozwala na uniknięcie błędów logicznych i zapewnia poprawność działania kodu, zwłaszcza w kontekście iteracji i przetwarzania danych.

Pytanie 22

Aby właściwie skomentować podaną linię kodu w JavaScript, należy po znakach // wpisać opis

document.getElementById("napis").innerHTML = Date(); //

A. zmiana stylu atrybutu innerHTML
B. wyświetlenie daty i czasu w znaczniku o id = napis
C. nieprawidłowe dane
D. wyświetlenie tekstu "Date()" w znaczniku o id = napis
Wybór nieprawidłowych odpowiedzi w tym pytaniu może wynikać z niezrozumienia, jak działa konstrukcja innerHTML oraz funkcja Date() w języku JavaScript. Funkcja Date() zwraca aktualną datę i czas, a nie tekst Date(), dlatego twierdzenie, że kod wyświetli tekst Date() w znaczniku, jest błędne. Z kolei twierdzenie, że kod zmienia styl atrybutu innerHTML, jest mylne, ponieważ innerHTML jest używane do zmiany zawartości elementu, a nie jego stylu. Styl elementu zmienia się poprzez właściwości style w DOM. Wreszcie, odpowiedź sugerująca, że kod dotyczy nieprawidłowych danych, może być skutkiem konfuzji co do działania funkcji. Kod przekazuje wynik Date() jako ciąg znaków do innerHTML, co jest poprawną operacją w JavaScript. Często spotykanym błędem jest także nieuwzględnienie faktu, że Date() jest wywoływane jako funkcja, a nie jako typ danych czy struktura, co może prowadzić do błędnych wniosków na temat działania kodu. Dla unikania pomyłek warto dokładnie przestudiować sposób, w jaki JavaScript manipuluje DOM i jak działają jego wbudowane funkcje takie jak Date().

Pytanie 23

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

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

Pytanie 24

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. najmniejszej
B. nieparzystej
C. największej
D. parzystej
Błędne odpowiedzi wynikają z nieprawidłowego zrozumienia kodu warunkowego. Przy analizie kodu, który ma za zadanie wypisanie największej liczby spośród zmiennych a, b i c, ważne jest zrozumienie działania logicznych operatorów porównania. Odpowiedzi sugerujące, że wynik będzie liczbą nieparzystą, najmniejszą lub parzystą nie uwzględniają specyficznej logiki warunkowej kodu. Kod nie zawiera jakichkolwiek mechanizmów sprawdzających, czy liczba jest parzysta lub nieparzysta, co wymagałoby użycia dodatkowych operatorów, takich jak modulo. Myślenie, że wynik może być liczbą najmniejszą, ignoruje fakt, że warunki w kodzie są skonstruowane do wyboru największej wartości. Typowe błędy mogą wynikać z niezrozumienia jak działa operator AND w warunku czy też niepoprawnego przypisania znaczenia do kolejności sprawdzanych warunków. Dlatego ważne jest, aby dokładnie przeanalizować logikę kodu i zrozumieć, jak struktury warunkowe wpływają na wynik końcowy. W przeciwnym razie, może dojść do błędnych założeń na temat działania kodu, co prowadzi do niepoprawnych odpowiedzi i zrozumienia jego funkcji. Skuteczne wykorzystanie operatorów porównania jest kluczowe w programowaniu, a ich błędna interpretacja często prowadzi do nieprzewidzianych rezultatów.

Pytanie 25

Znacznik <pre> </pre> służy do prezentacji

A. treści polską czcionką
B. treści czcionką o stałej szerokości
C. znaku wielokropka
D. znaku przekreślenia
Interpretacja znacznika
 jako narzędzia do wyświetlania znaku przekreślenia lub wielokropka jest błędna, ponieważ te elementy nie mają związku z funkcją, jaką pełni 
. W kontekście HTML, znacznik 
 nie jest zaprojektowany do formatowania treści na podstawie stylów czcionek, takich jak 'polska czcionka', ale skupia się na zachowaniu oryginalnego formatowania tekstu. Próba zrozumienia 
 w kontekście czcionek wyłącznie ze względu na ich wygląd prowadzi do pomyłek, ponieważ nie dotyczy to głównego celu tego znacznika. Ponadto, używanie 
 dla treści, które nie wymagają stałej szerokości czcionki, może prowadzić do złożonych problemów w responsywności układu strony oraz trudności w dostosowaniu treści do różnych urządzeń. Znaki przekreślenia i wielokropka są raczej reprezentowane przez inne znaczniki HTML, takie jak  lub , które są bardziej odpowiednie do stylizacji tekstu. Właściwe zrozumienie roli każdego znacznika HTML jest kluczowe dla skutecznego projektowania stron internetowych i aplikacji, co podkreśla znaczenie edukacji w zakresie web developmentu.
                                    
                                

Pytanie 26

W relacyjnym modelu baz danych, termin krotka odnosi się do

A. liczby rekordów w danej tabeli
B. wszystkich kolumn tabeli, które zawierają atrybuty danego obiektu
C. wszystkich wierszy tabeli łącznie z wierszem nagłówkowym
D. wierszy tabeli, z wyjątkiem wiersza nagłówkowego, w którym znajdują się nazwy kolumn
W relacyjnym modelu baz danych, krotka odnosi się do jednego wiersza tabeli, który przechowuje zestaw atrybutów (kolumn) dla danego obiektu. Każda krotka jest zbiorem wartości, które są powiązane z określonymi kolumnami. Krotki stanowią fundamentalny element relacyjnych baz danych, w których dane są zorganizowane w formie tabel, co ułatwia ich przechowywanie, przetwarzanie oraz zapytania. Na przykład, w tabeli przechowującej informacje o klientach, każda krotka mogłaby zawierać dane takie jak imię, nazwisko, adres e-mail i numer telefonu. Wartości te są ze sobą powiązane i tworzą kompletny zestaw informacji dotyczący jednego klienta. Zgodnie z normami SQL, krotki są często przetwarzane za pomocą instrukcji SELECT, które umożliwiają pobieranie, modyfikację i zarządzanie danymi na poziomie pojedynczych wierszy. Krotki są nie tylko podstawą struktury danych, ale również fundamentem, na którym opierają się operacje na bazach danych, co czyni je kluczowym pojęciem w projektowaniu oraz zarządzaniu relacyjnymi bazami danych.

Pytanie 27

Zawarty kod PHP nawiązuje połączenie z serwerem bazy danych. Jakie działania powinny być umieszczone w instrukcji warunkowej w miejscu trzech kropek?

A. Informacja o udanym połączeniu z bazą
B. Obsługa danych uzyskanych z bazy
C. Zamknięcie połączenia z bazą danych
D. Obsługa błędu połączenia
Zamknięcie bazy danych w kontekście nieudanego połączenia jest koncepcją, która nie ma sensu. Jeśli połączenie się nie uda, to nie ma nawet nawiązanej sesji, która mogłaby być zamknięta. Połączenie z bazą danych powinno być zamykane tylko w momencie, gdy zostało nawiązane i jest już niepotrzebne, a nie w przypadku, gdy wystąpił błąd w trakcie łączenia. Komunikat o pomyślnym połączeniu także nie ma zastosowania w tej sytuacji, ponieważ, skoro połączenie się nie udało, nie ma podstaw do informowania użytkownika o jego powodzeniu. Obsługa danych pobranych z bazy również nie ma miejsca, jeśli połączenie nie zostało ustanowione, co czyni te odpowiedzi błędnymi. Właściwe podejście w takich sytuacjach to zawsze najpierw sprawdzenie, czy połączenie zostało nawiązane, a następnie działania w przypadku usunięcia błędu. Ignorowanie tej zasady może prowadzić do nieprzewidzianych zachowań aplikacji, a nawet do wycieków danych lub awarii serwerów.

Pytanie 28

Standard kodowania ISO-8859-2 jest używany do poprawnego wyświetlania

A. znaków specjalnych dla języka kodu strony
B. symboli matematycznych
C. znaków zarezerwowanych dla języka opisu strony
D. polskich liter, takich jak: ś, ć, ń, ó, ą
Wybór odpowiedzi dotyczący znaków specjalnych dla języka kodu strony sugeruje, że ISO-8859-2 byłoby używane do obsługi elementów związanych z kodowaniem strony, co jest mylące. Chociaż kodowanie znaków jest istotne dla wyświetlania treści, odnosi się ono głównie do sposobu, w jaki znaki są reprezentowane w kodzie komputerowym, a nie do języka kodu strony. Z kolei odpowiedź dotycząca znaków zarezerwowanych dla języka opisu strony wprowadza dodatkowy zamęt, ponieważ zarezerwowane znaki nie mają związku z kodowaniem znaków, lecz dotyczy to specyficznych symboli i elementów w języku HTML, które mogą być interpretowane przez przeglądarki. Ostatnia odpowiedź sugerująca, że ISO-8859-2 jest używane dla symboli matematycznych nie ma podstaw, ponieważ ten standard koncentruje się na znakach używanych w językach europejskich. Takie nieprawidłowe podejścia mogą wynikać z braku zrozumienia specyfikacji standardów kodowania, co prowadzi do nieporozumień w zakresie ich zastosowania w praktyce. Należy pamiętać, że w kontekście tworzenia stron internetowych kluczowe jest wykorzystanie odpowiedniego kodowania, które zapewnia prawidłowe wyświetlanie treści, a nie symboli specyficznych dla danej dziedziny. Dlatego, dla zrozumienia znaczenia kodowania znaków, niezbędne jest zapoznanie się z dokumentacją oraz standardami, które definiują, jak różne znaki są reprezentowane w różnych kodowaniach.

Pytanie 29

Jaki jest cel zapisu w języku JavaScript?

var napis1 = new napisy();

A. założenie nowej klasy napis1
B. zainicjowanie zmiennej napis1 oraz wywołanie funkcji, której argumentem jest napis1
C. stworzenie obiektu napis1 z klasy napisy
D. wykonanie metody obiektu napisy
Niepoprawne odpowiedzi wynikają z niepełnego zrozumienia procesu tworzenia obiektów w JavaScript. Propozycja zadeklarowania zmiennej i wywołania funkcji z argumentem napis1 nie odpowiada rzeczywistej funkcjonalności przedstawionego kodu. Zadeklarowanie zmiennej w JavaScript jest kluczowym krokiem, ale bez poprawnego użycia słowa kluczowego new oraz odpowiednio zdefiniowanej funkcji lub klasy nie można stworzyć instancji obiektu. Natomiast wywołanie funkcji z argumentem napis1 sugeruje, że mamy do czynienia z operacją na już istniejącym obiekcie, co nie ma miejsca w kontekście inicjalizacji obiektu. Próba wywołania metody obiektu napisy nie jest poprawna, ponieważ najpierw trzeba utworzyć instancję obiektu, a dopiero potem można wywoływać jego metody. Bez tego kroku każda próba pracy z metodami zakończy się błędem. Wreszcie, stworzenie nowej klasy napis1 byłoby sprzeczne z pokazanym kodem, ponieważ żaden element składni nie sugeruje deklaracji klasy. W języku JavaScript klasy są definiowane z użyciem słowa kluczowego class, które w analizowanym kodzie nie występuje. Zrozumienie procesu tworzenia obiektów oraz wykorzystania klas i konstruktorów w JavaScript jest fundamentalne, aby efektywnie pisać oraz zarządzać kodem w tym języku. Poprawne rozpoznanie i stosowanie tych mechanizmów pozwala na tworzenie bardziej złożonych i elastycznych aplikacji.

Pytanie 30

Funkcja zaprezentowana w PHP

function dzialania(int $x, float $y) {
  $z = $x + $y;
  return $z;
}

A. nie zwraca wyniku.
B. zwraca wynik.
C. przyjmuje dwa argumenty z wartością domyślną.
D. jest zadeklarowana z dwoma parametrami rzeczywistymi.
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 31

Wskaż funkcję JavaScript, która umożliwia obliczenie połowy kwadratu liczby podanej jako argument.

A. function wynik(a) { return a/2+a/2; }
B. function wynik(a) { return a*a/2; }
C. function wynik(a) { return 2*a/a; }
D. function wynik(a) { return a*2/2; }
W analizie niepoprawnych odpowiedzi można zauważyć kilka typowych pomyłek, które prowadzą do błędnych obliczeń. Pierwsza z odpowiedzi, 'function wynik(a) { return a/2+a/2; }', jest myląca, ponieważ ta funkcja w rzeczywistości wykonuje dodawanie dwóch połówek liczby, co prowadzi do uzyskania wartości równiej 'a', a nie połowy kwadratu. W ten sposób nie realizuje postawionego celu. Druga propozycja, 'function wynik(a) { return a*2/2; }', również nie przynosi oczekiwanego rezultatu. Ta funkcja najpierw mnoży 'a' przez 2, a następnie dzieli przez 2, co ponownie prowadzi do wartości równej 'a'. Takie podejście jest nieefektywne i nie spełnia wymogów zadania. Kolejna odpowiedź, 'function wynik(a) { return 2*a/a; }', jest całkowicie błędna, ponieważ ta funkcja po prostu zwraca wartość 2, niezależnie od wartości 'a', co jest niezgodne z definicją obliczania połowy kwadratu liczby. W każdym z przypadków dostrzegamy brak zrozumienia podstawowych operacji arytmetycznych oraz ich zastosowania w kontekście funkcji. Typowym błędem jest skupienie się na manipulacji wartością 'a', zamiast zrozumienia, że celem jest obliczenie kwadratu tej liczby, a następnie podzielenie wyniku przez 2, co jest kluczowym elementem zadania.

Pytanie 32

W języku HTML, dane dotyczące autora, opisu oraz słów kluczowych strony powinny być zamieszczone

A. pomiędzy znacznikami i , w znaczniku
B. pomiędzy znacznikami i , w znaczniku
C. pomiędzy znacznikami i , w znaczniku
D. pomiędzy znacznikami i , w znaczniku