Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 grudnia 2025 22:24
  • Data zakończenia: 8 grudnia 2025 22:26

Egzamin niezdany

Wynik: 10/40 punktów (25,0%)

Wymagane minimum: 20 punktów (50%)

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

W HTML informacje o autorze, streszczeniu oraz słowach kluczowych strony powinny być umieszczone

A. pomiędzy znacznikami <body> i </body>, w znaczniku <meta>
B. pomiędzy znacznikami <body> i </body>, w znaczniku <html>
C. pomiędzy znacznikami <head> i </head>, w znaczniku <meta>
D. pomiędzy znacznikami <head> i </head>, w znaczniku <style>
Jeśli umieścisz informacje o autorze, streszczeni czy słowach kluczowych w złych znacznikach HTML, to mogą się pojawić problemy z przeglądarką i SEO. Na przykład, wrzucenie tych dany w znacznikach <body> i </body> to błąd, bo <body> służy do treści, którą widzą użytkownicy. To tam są nagłówki, akapity i inne elementy, które tworzą interfejs. Więc wrzucanie metadanych tam to niezbyt mądra decyzja. Z drugiej strony, umieszczanie ich w <html> również nie jest odpowiednie, bo <html> to jakby kontener dla całego dokumentu. Nie można też wrzucać tych danych w <style>, bo to jest do stylu CSS, a nie do treści. Trochę myślenia jest potrzebne, żeby zrozumieć, że nie wszystkie dane mogą lądować w <body>. Dlatego tak ważne jest, żeby ogarnąć, jak działają znaczniki <head> i <meta>, bo to naprawdę ma wpływ na strukturę strony i jej efektywność w wyszukiwarkach.

Pytanie 2

W semantycznym HTML odpowiednikiem tagu <b>, który nie tylko pogrubia tekst, ale również oznacza go jako istotniejszy, jest

A. <ins>
B. <mark>
C. <em>
D. <strong>
Znacznik <strong> w języku HTML semantycznym służy do oznaczania tekstu, który ma szczególne znaczenie w kontekście treści. Oprócz stylistycznego pogrubienia czcionki, <strong> wskazuje, że dany fragment tekstu jest ważny dla zrozumienia treści dokumentu. Przykładowo, w artykule omawiającym bezpieczeństwo w Internecie, można użyć <strong> do wyróżnienia kluczowych terminów, takich jak 'szyfrowanie' czy 'firewall', co podkreśla ich znaczenie w ochronie danych. Użycie znaczników semantycznych, takich jak <strong>, jest zgodne z najlepszymi praktykami dostępności, co zapewnia lepszą interpretację treści przez technologie asystujące, takie jak czytniki ekranu. Takie podejście poprawia nie tylko nawigację po stronie, ale również SEO, ponieważ wyszukiwarki lepiej rozumieją kontekst i hierarchię treści. Warto również zauważyć, że w przeciwieństwie do <b>, który jedynie zmienia wygląd tekstu, <strong> wnosi dodatkowy sens do struktury dokumentu, co jest szczególnie istotne w kontekście tworzenia witryn internetowych, które są zarówno estetyczne, jak i funkcjonalne.

Pytanie 3

Aby w tabeli praca, tworzonej w SQL, dodać warunek w kolumnie stawka, który nakazuje przyjmowanie dodatnich wartości rzeczywistych mniejszych niż 50, należy zastosować zapis

A. ... stawka float CHECK(stawka>0 OR stawka<50.00)
B. ... stawka float CHECK(stawka IN (0, 50.00))
C. ... stawka float CHECK(stawka BETWEEN 0 AND 50.00)
D. ... stawka float CHECK(stawka>0 AND stawka<50.00)
Pierwsza z niepoprawnych odpowiedzi wykorzystuje operator IN, który nie jest odpowiedni dla tego przypadku. Operator IN służy do sprawdzania, czy wartość znajduje się w zbiorze dozwolonych wartości. W kontekście stawki, nie ma sensu ograniczać się tylko do wartości 0 i 50.00, ponieważ chcemy, by 'stawka' mogła przyjmować wiele wartości w przedziale od 0 do 50, a nie tylko te dwa. Kolejna odpowiedź stosuje operator OR, co prowadzi do błędnej interpretacji wymagań. Użycie OR oznacza, że 'stawka' mogłaby być większa od 0 lub mniejsza od 50, co w efekcie pozwalałoby na wprowadzenie wartości, które nie spełniają założonego kryterium, takich jak liczby ujemne. Ostatnia z odpowiedzi używa operatora BETWEEN, który również nie jest odpowiedni, ponieważ tworzy zakres od 0 do 50, co nie spełnia warunku, że stawka musi być większa od 0. Zatem, wszystkie trzy odpowiedzi nie zapewniają poprawnej weryfikacji danych w kolumnie 'stawka' w tabeli SQL, co jest kluczowe dla utrzymania jakości i integralności danych.

Pytanie 4

Aby strona internetowa była dostosowana do różnych urządzeń, należy między innymi ustalać

A. wielkości obrazów w procentach
B. wielkości obrazów wyłącznie w pikselach
C. tylko znane fonty, takie jak Arial
D. układ strony wyłącznie przy użyciu tabel
Aby strona WWW była responsywna, kluczowym aspektem jest definiowanie rozmiarów obrazów w procentach. Taki sposób umożliwia dynamiczne skalowanie elementów graficznych w zależności od rozmiaru ekranu urządzenia, co jest istotne w kontekście różnorodnych rozdzielczości oraz urządzeń mobilnych. Ustalając szerokość obrazów w procentach, na przykład 'width: 50%', zapewniamy, że obraz zajmuje połowę dostępnej szerokości kontenera, co pozwala na zachowanie proporcji i estetyki strony niezależnie od wielkości okna przeglądarki. Praktyczne zastosowanie takiej metody można zaobserwować w projektach wykorzystujących CSS Flexbox czy Grid, gdzie elastyczność układu jest kluczowa. Ponadto, stosowanie obrazów responsywnych wspiera standardy W3C oraz wytyczne dotyczące dostępności, co wpływa na lepsze doświadczenie użytkownika oraz poprawia SEO. W rezultacie, dobrze zaprojektowana strona responsywna przyczynia się do zwiększenia konwersji oraz zadowolenia odwiedzających, co jest niezbędne w dzisiejszym internecie.

Pytanie 5

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

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

Pytanie 6

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

A. Firebird
B. PostgreSQL
C. Oracle
D. MariaDB
Oracle, Firebird i PostgreSQL to usługi baz danych, które różnią się od MariaDB zarówno pod względem architektury, jak i zastosowania. Oracle to komercyjny system zarządzania bazą danych, który oferuje zaawansowane funkcje, jednak jest on znacznie droższy i mniej dostępny dla indywidualnych programistów lub małych firm. Wykorzystanie Oracle w projektach lokalnych nie jest typowe, ponieważ jest bardziej skierowane na duże przedsiębiorstwa i złożone aplikacje korporacyjne. Firebird to również open-source'owy system, ale nie jest tak szeroko stosowany jak MariaDB w kontekście lokalnego rozwoju aplikacji. Użytkownicy często decydują się na MariaDB ze względu na jej kompatybilność z MySQL oraz szersze wsparcie społeczności. PostgreSQL jest znany z zaawansowanych funkcji i wsparcia dla bardziej skomplikowanych operacji, jednak jego integracja z XAMPP nie jest domyślna, co może wprowadzać użytkowników w błąd, mylnie zakładając, że jest to powszechnie stosowane rozwiązanie. Typowe błędy to nieadekwatne porównanie systemów bez uwzględnienia ich kontekstu użycia, co prowadzi do mylnych wniosków o ich popularności i zastosowalności w projektach lokalnych.

Pytanie 7

Aby cofnąć uprawnienia dostępu do serwera MySQL, należy wykorzystać polecenie

A. DELETE
B. USAGE
C. GRANT
D. REVOKE
Polecenie USAGE w MySQL nie przyznaje ani nie odbiera żadnych praw dostępu. Jest to typ uprawnienia, które de facto oznacza brak uprawnień do wykonywania jakichkolwiek operacji na danym obiekcie. Użycie USAGE nie ma zastosowania w kontekście odbierania praw, a jedynie w definiowaniu minimalnego poziomu dostępu. Z kolei GRANT to polecenie służące do przyznawania uprawnień, a nie do ich odbierania. GRANT pozwala administratorom na udzielanie użytkownikom różnych poziomów dostępu do zasobów, co czyni je odwrotnością REVOKE. Wreszcie DELETE jest to polecenie SQL, które służy do usuwania danych z tabel, a nie do zarządzania uprawnieniami dostępu. Używanie DELETE w kontekście odbierania praw dostępu jest całkowicie niewłaściwe, ponieważ nie odnosi się ono do autoryzacji użytkowników w systemie. Wszelkie te trzy odpowiedzi są niepoprawne w kontekście pytania, ponieważ nie spełniają celu zarządzania dostępem do bazy danych, jakim jest odebranie praw dostępu, co precyzyjnie realizuje polecenie REVOKE.

Pytanie 8

W CSS wartości takie jak: underline, overline, line-through oraz blink odnoszą się do właściwości

A. text-align
B. text-decoration
C. font-style
D. font-decoration
Właściwość 'text-align' dotyczy ustawienia wyrównania tekstu w obrębie kontenera. Jej zastosowanie koncentruje się na takich wartościach jak 'left', 'right', 'center' czy 'justify', które wpływają na układ tekstu na stronie, ale nie mają związku z jego dekoracją. Z kolei 'font-style' odnosi się do stylu czcionki, umożliwiając taką manipulację jak kursywa lub normalny styl, jednak nie kontroluje dekoracji tekstu. Z kolei 'font-decoration' nie jest standardową właściwością CSS; błędne jej wykorzystanie może wynikać z nieznajomości konwencji CSS. Właściwości takie jak 'text-decoration' są zdecydowanie bardziej odpowiednie do osiągania zamierzonych efektów wizualnych na tekście. Często początkujący programiści mylą te różne właściwości, co prowadzi do niepoprawnego stylizowania elementów tekstowych. Warto zwrócić uwagę, że każda z wymienionych właściwości ma swoje unikalne zastosowanie i wymagania, dlatego kluczowe jest zrozumienie ich specyfiki oraz kontekstu użycia w projekcie stron internetowych. Prawidłowe stosowanie właściwości CSS jest niezbędne dla zapewnienia estetyki oraz funkcjonalności strony, co jest fundamentalne w nowoczesnym web designie.

Pytanie 9

Kod

$liczba2 = &$liczba1;
wskazuje, że zmienna $liczba2 jest
A. referencją do $liczba1
B. negacją logiczną zmiennej $liczba1
C. iloczynem logicznym ze zmienną $liczba1
D. wskaźnikiem do $liczba1
Wskaźnik to pojęcie obecne w językach takich jak C/C++, ale w PHP wskaźniki nie są bezpośrednio używane. W PHP mówimy o referencjach, które działają na wyższym poziomie abstrakcji, pozwalając na współdzielenie wartości między zmiennymi bez użycia wskaźników. Twierdzenie, że zmienna \$liczba2 jest wskaźnikiem do \$liczba1, jest błędne, ponieważ PHP nie obsługuje wskaźników w klasycznym rozumieniu. Negacja logiczna oznaczałaby wykorzystanie operatora negacji (!) i zmienienie wartości logicznej zmiennej. W kontekście kodu PHP negacją byłoby użycie wyrażenia typu \"\$liczba2 = !\$liczba1\", co oznacza konwersję wartości na jej przeciwność logiczną. Wreszcie, iloczyn logiczny wymaga użycia operatora koniunkcji (&&) dla dwóch wartości logicznych i nie odnosi się do referencji. Iloczyn logiczny zwraca prawdę tylko wtedy, gdy oba operand są prawdziwe, co w opisie kodu nie ma zastosowania. Każda z tych błędnych interpretacji wynika z mylnego zrozumienia podstawowych mechanizmów języka PHP, które koncentrują się na referencjach jako sposobie efektywnego zarządzania pamięcią i współdzielenia danych.

Pytanie 10

Jaki jest cel poniższego fragmentu funkcji w JavaScript?

wynik = 0;
for (i = 0; i < tab.length; i++)
{
    wynik += tab[i];
}
A. dodać stałą wartość do każdego elementu tablicy
B. wyświetlić wszystkie pozycje w tablicy
C. przypisać do każdego elementu tablicy bieżącą wartość zmiennej i
D. obliczyć sumę wszystkich elementów tablicy
Podczas analizowania niepoprawnych odpowiedzi warto skupić się na zrozumieniu działania pętli oraz operatora przypisania dodającego +=. Pierwsza z omawianych odpowiedzi sugeruje że kod dodaje do każdego elementu tablicy stałą wartość. Jest to błędne rozumienie operatora += który po lewej stronie ma zmienną a po prawej wartość którą dodajemy do tej zmiennej. W tym przypadku tab[i] jest dodawane do zmiennej wynik co wskazuje na zliczanie a nie modyfikację elementów tablicy. Druga odpowiedź sugeruje że kod wyświetla elementy tablicy. Jednak brak tutaj jakiejkolwiek funkcji wyjściowej takiej jak console.log() która mogłaby wyświetlić wartości w konsoli. Kod skupia się na operacji wewnętrznej a nie na interakcji wyjściowej. Trzecia odpowiedź sugeruje że do każdego elementu tablicy jest wprowadzana aktualna wartość zmiennej i. Jest to również błędne ponieważ nie ma tutaj żadnej operacji przypisania wartości do tablicy. Zmienna i jest jedynie indeksem używanym do iteracji i nie wpływa na zmianę wartości tablicy. Wszystkie te nieporozumienia wynikają z błędnej interpretacji działania pętli oraz operacji arytmetycznych w kodzie. Kluczowe jest zrozumienie jak pętla działa aby poprawnie przypisać operację do odpowiedniego kontekstu w programie.

Pytanie 11

Jaką postać ma kolor zdefiniowany w formacie szesnastkowym jako #11FE07 w modelu RGB?

A. rgb(17, 254, 7)
B. rgb(17, 255, 7)
C. rgb(17, FE, 7)
D. rgb(ll, 127, 7)
Odpowiedzi rgb(ll, 127, 7), rgb(17, 255, 7) i rgb(17, FE, 7) mają błędy, które wynikają z niewłaściwego zrozumienia konwersji szesnastkowych na dziesiętne. W pierwszej odpowiedzi 'll' to w ogóle nie jest poprawna wartość w kontekście kolorów RGB. W systemie RGB musimy używać całkowitych liczb od 0 do 255, a 'll' to żaden numer. W drugiej odpowiedzi, zmiana 'FE' na '255' to błąd, bo 'FE' w szesnastkowym to 254 w dziesiętnym, więc tu jest niezgodność. A w odpowiedzi 'rgb(17, FE, 7)' znowu nie przeliczono 'FE', przez co staje się to nieczytelne i niezgodne ze standardami RGB. Często ludzie mylą różne systemy liczbowe przy konwertowaniu kolorów i to jest zwyczajny błąd. Fajnym pomysłem na naukę jest zabawa z narzędziami do kolorów w programach graficznych, bo to pomaga lepiej zrozumieć te przeliczenia i ogarnąć różnice między systemami liczbowymi.

Pytanie 12

Jakie będzie działanie podanych instrukcji JavaScript?

var elementy = document.getElementsByClassName("styl1");
  for(var i = 0; i < elementy.length; i++)
    elementy[i].style.fontWeight = "bolder";
A. Jedynie dla elementu o id równym styl1 będzie przypisany styl pogrubienia tekstu na bolder
B. Dla wszystkich elementów na stronie zostanie zastosowany styl pogrubienia tekstu na bolder
C. Dla wszystkich elementów przypisanych do klasy styl1 zostanie nadany styl pogrubienia tekstu bolder
D. Wyłącznie dla pierwszego elementu przypisanego do klasy styl1 zostanie nadany styl pogrubienia tekstu bolder
Instrukcje JavaScript w pytaniu wykorzystują metodę getElementsByClassName aby pobrać kolekcję wszystkich elementów na stronie które posiadają przypisaną klasę styl1. Metoda ta zwraca obiekt typu HTMLCollection który przypomina tablicę i zawiera odniesienia do elementów DOM posiadających określoną klasę. Następnie za pomocą pętli for przechodzimy przez każdy z tych elementów i zmieniamy ich styl na bolder przypisując nową wartość do właściwości style.fontWeight. Dzięki temu każdy element w kolekcji zostaje zmodyfikowany i wyświetlany z pogrubioną czcionką. Takie podejście jest zgodne z dobrymi praktykami w zakresie manipulacji DOM w JavaScript gdyż jest to sposób efektywny i bezpośredni. Użycie klas do grupowania elementów HTML pozwala na jednoczesne stosowanie stylów i operacji na grupach elementów co jest kluczowe w dynamicznym modelu tworzenia stron internetowych. Warto zwrócić uwagę na fakt że nazwy klas są czułe na wielkość liter co oznacza że styl1 i Styl1 byłyby traktowane jako różne klasy.

Pytanie 13

W języku JavaScript potrzebne jest odwołanie się do elementu znajdującego się w pierwszym paragrafie danego fragmentu kodu HTML. Można to osiągnąć przy użyciu funkcji

<body>
<p>pierwszy paragraf</p>
<p>drugi paragraf</p>
<p>trzeci paragraf</p>
A. getElementsByClassName('p.1')[0]
B. getElement('p')
C. getElementsByTagName('p')[0]
D. getElementById('p1')
Odpowiedź getElementsByTagName("p")[0]; jest poprawna, ponieważ metoda getElementsByTagName zwraca kolekcję wszystkich elementów o danym tagu, w tym przypadku "p". Wywołując tę metodę, otrzymujemy tablicę wszystkich paragrafów na stronie, co pozwala na łatwy dostęp do pierwszego z nich, korzystając z indeksu [0]. Jest to standardowy sposób uzyskiwania dostępu do elementów w DOM w JavaScript. Zastosowanie tej metody jest zgodne z dobrą praktyką, umożliwiającą selekcję elementów w sposób dynamiczny i elastyczny. Przykładowo, jeśli chcemy zmienić tekst pierwszego paragrafu, możemy wykorzystać: document.getElementsByTagName("p")[0].innerText = 'Nowy tekst';. Dzięki temu możemy skutecznie manipulować zawartością stron internetowych, co jest kluczowe w rozwoju front-endu. Dodatkowo, metody takie jak getElementsByTagName są dobrze wspierane przez wszystkie nowoczesne przeglądarki, co zapewnia ich niezawodność w codziennej pracy programisty.

Pytanie 14

Na zakończenie dnia w bazie danych sklepu spożywczego generowany jest raport, który pokazuje produkty wraz z ich dostawcami, dla których liczba sztuk w magazynie jest poniżej 10. Do stworzenia tego raportu użyto kwerendy

A. UPDATE
B. INSERT INTO
C. SELECT
D. CHECK TABLE
Wybór instrukcji UPDATE, INSERT INTO oraz CHECK TABLE jako metod do generowania raportu w bazie danych jest niepoprawny. Instrukcja UPDATE służy do modyfikacji istniejących danych w tabeli, co oznacza, że nie można jej użyć do wyświetlania informacji. Gdyby użytkownik spróbował użyć UPDATE do generowania raportu, mógłby nieumyślnie zmienić wartości w bazie danych, co jest sprzeczne z zamierzeniem uzyskania jedynie informacji. Z kolei INSERT INTO jest używane do dodawania nowych rekordów do bazy danych i również nie ma zastosowania w kontekście generowania raportów. Ta instrukcja nie tylko nie udostępnia żadnych informacji o istniejących danych, ale także może prowadzić do nieporozumień, gdyż wprowadza nowe dane zamiast ich przeszukiwać. Natomiast CHECK TABLE jest instrukcją używaną do sprawdzania integralności tabeli w bazie danych i nie ma związku z pobieraniem danych ani ich wyświetlaniem. Z tego powodu, wszystkie te trzy odpowiedzi są nieodpowiednie w kontekście tworzenia raportu w bazie danych, ponieważ każda z nich działa na zupełnie innych zasadach niż SELECT, który jest właściwym narzędziem do przeszukiwania i wyświetlania danych.

Pytanie 15

W języku HTML, aby stworzyć pole do wprowadzania hasła, w którym wpisywany tekst będzie ukrywany (zastępowany kropkami), należy zastosować znacznik

A. <form input type="password" />
B. <form="password" type="password" />
C. <input type="password" />
D. <input name="password" />
W przypadku odpowiedzi <input name="password" /> brakuje kluczowego atrybutu 'type', co uniemożliwia prawidłowe zdefiniowanie pola do wprowadzania hasła. Standard HTML wymaga, aby każdy input miał określony typ, aby przeglądarka wiedziała, jak ma obsługiwać dane wejściowe. Użycie tylko 'name' bez 'type' sprawia, że przeglądarka interpretuje to pole jako standardowe pole tekstowe, co nie maskuje wprowadzanych danych i naraża hasło na nieautoryzowany dostęp. W przypadku zastosowania <form="password" type="password" /> oraz <form input type="password" /> zawężamy logikę do niewłaściwego użycia znaczników formularzy. 'form' jest elementem kontenerowym dla grupy inputów, a jego atrybuty powinny odnosić się do dodatkowych informacji, ale nie pozwalają na umieszczenie inputa wewnątrz samego formularza w taki sposób. Te błędne konstrukcje mogą prowadzić do nieczytelności kodu i problemów z interpretacją przez przeglądarki, co jest szczególnie niekorzystne w kontekście dostępności i użyteczności. Warto przy projektowaniu formularzy przestrzegać standardów HTML oraz praktyk takich jak semantyczne użycie elementów, aby poprawić zarówno SEO, jak i UX.

Pytanie 16

W kodzie HTML kolor biały można reprezentować przy użyciu wartości

A. rgb (FF, FF, FF)
B. rgb(255, 255, 255)
C. #000000
D. #255255
Wartości #000000 i #255255 oraz rgb(FF, FF, FF) są nieprawidłowe w kontekście definiowania koloru białego. Zaczynając od pierwszej, #000000 to kod szesnastkowy odpowiadający czarnemu, gdzie wszystkie składniki koloru (czerwony, zielony, niebieski) mają wartość 0, co skutkuje brakiem światła i widzeniem czerni. Typowym błędem jest myślenie, że składniki koloru muszą być wyrażane w systemie szesnastkowym, a nie w zakresie od 0 do 255, co wprowadza w błąd w kontekście RGB. Z kolei #255255 nie jest poprawnym kodem szesnastkowym, ponieważ wartości kolorów w systemie szesnastkowym muszą być w zakresie od 00 do FF dla każdego z kolorów, co oznacza, że każda para cyfr szesnastkowych musi mieścić się w tym zakresie. Zresztą, nie można mieć wartości powyżej 255 w modelu RGB. Przy odpowiedzi rgb(FF, FF, FF) również pojawia się problem, ponieważ wartości w funkcji rgb() powinny być wartościami liczbowymi, a nie szesnastkowymi. Często błędne jest mylenie zapisów szesnastkowych z zapisami liczbowymi, co prowadzi do nieprawidłowych wniosków. Dlatego tak istotne jest zrozumienie różnic w sposobie reprezentacji kolorów oraz stosowanie odpowiednich praktyk przy definiowaniu kolorów w HTML i CSS.

Pytanie 17

Aby skorzystać z relacji w zapytaniu, trzeba użyć słowa kluczowego

A. UNION
B. JOIN
C. IN
D. GROUP BY
Wybór słów kluczowych takich jak UNION, IN oraz GROUP BY w kontekście łączenia danych z różnych tabel jest nieprawidłowy i opiera się na błędnym zrozumieniu funkcji tych instrukcji. UNION jest używane do łączenia wyników dwóch lub więcej zapytań, ale nie łączy danych z różnych tabel na podstawie relacji. Umożliwia ono zestawienie wyników, które mają tę samą strukturę, co oznacza, że wszystkie zapytania muszą zwracać tę samą liczbę kolumn i odpowiadające im typy danych. IN z kolei służy do porównywania wartości w jednej kolumnie z zestawem wartości, ale nie operuje na relacjach między tabelami. Ta instrukcja jest bardziej przydatna w filtracji wyników, a nie w ich łączeniu. GROUP BY jest używane do grupowania wyników na podstawie określonych kolumn, co jest niezbędne w przypadku agregacji danych, ale również nie odnosi się bezpośrednio do łączenia tabel. Zrozumienie tych różnic jest kluczowe, aby unikać typowych błędów w projektowaniu zapytań SQL. Zamiast tego, należy skupić się na technikach łączenia danych przy użyciu JOIN, co jest zgodne z najlepszymi praktykami w zakresie zarządzania danymi w systemach baz danych.

Pytanie 18

Jakie narzędzie jest używane do organizowania oraz przedstawiania danych z wielu rekordów w celu ich wydruku lub dystrybucji?

A. raport
B. formularz
C. kwerenda
D. makropolecenie
Makropolecenie, formularz oraz kwerenda to narzędzia o różnych zastosowaniach, które często mylnie utożsamiane są z raportem. Makropolecenie to zestaw instrukcji, które automatyzują powtarzalne zadania w programach komputerowych, szczególnie w arkuszach kalkulacyjnych. Chociaż mogą one służyć do generowania raportów, same w sobie nie są narzędziem do grupowania informacji, lecz raczej do automatyzacji procesów. Formularz służy do zbierania danych od użytkowników, ale nie jest przeznaczony do ich analizy ani prezentacji w formie zrozumiałych zestawień. Kwerenda natomiast to zapytanie skierowane do bazy danych, które umożliwia wydobycie specyficznych informacji, ale ponownie, nie jest to narzędzie do ich prezentacji. Użytkownicy mogą mylić te narzędzia z raportem, co prowadzi do nieporozumień w zakresie ich funkcjonalności. Kluczowe jest zrozumienie, że raporty są podsumowaniem danych, które były wcześniej przetworzone, podczas gdy makropolecenia, formularze i kwerendy są narzędziami do działania na danych, ale nie do ich ostatecznego przedstawienia. Ważne jest, aby potrafić rozróżnić te pojęcia i stosować je zgodnie z ich przeznaczeniem w praktyce biznesowej.

Pytanie 19

Określ rezultat działania podanego kodu PHP, jeśli zmienna tab jest tablicą. ```$tab = explode(",","jelenie,sarny,dziki,lisy,borsuki"); echo $tab[1]." ".$tab[2];```

A. lisy borsuki
B. dziki lisy
C. sarny dziki
D. jelenie sarny
Patrząc na błędne odpowiedzi, widzę, że były one wynikiem mylnego zrozumienia, jak działa funkcja explode w PHP oraz indeksowanie tablic. Na przykład, odpowiedź 'jelenie sarny' pomieszała pierwszy i drugi element tablicy, przez co wyszło coś nie tak. W PHP ważne jest, żeby pamiętać, że tablice zaczynają się od zera, czyli pierwszy element to tablica[0], a drugi to tablica[1]. Kolejna błędna odpowiedź, 'lisy borsuki', też nie brała pod uwagę tego faktu, odwołując się do elementów na końcu tablicy, co jest sprzeczne z kodem. A odpowiedź 'dziki lisy' to już całkowite zignorowanie porządku elementów w tablicy, co ma kluczowe znaczenie, gdy je wywołujemy. Żeby uniknąć takich pomyłek, programiści powinni zwracać uwagę na indeksy tablic i wiedzieć, jak działa funkcja explode. Zrozumienie tych podstawowych zasad w PHP jest istotne dla skutecznego przetwarzania danych i unikania typowych błędów w kodzie.

Pytanie 20

Warunek zapisany w PHP wyświetli liczbę, jeśli

if ($liczba % 2 == 0)
{
    echo $liczba;
}
A. wynik dzielenia liczby przez 2 wynosi 0
B. jest ona parzysta
C. jest ona dodatnia
D. jest ona liczbą pierwszą
Wybór odpowiedzi błędnych może wynikać z nieprawidłowego rozumienia operatora modulo i jego zastosowania w języku PHP. Operator ten zwraca resztę z dzielenia dwóch liczb więc wynik dzielenia liczby przez 2 nigdy nie może być bezpośrednio równy 0 co oznacza że odpowiedź dotycząca wyniku dzielenia liczby przez 2 jest niewłaściwie zrozumiana. Również koncepcja dodatnich liczb jako kryterium jest niepoprawna w kontekście przedstawionego kodu ponieważ dodatność liczby nie jest sprawdzana przez operator modulo. Liczby pierwsze to te które mają tylko dwa dzielniki: 1 i samą siebie co nie jest związane z warunkiem w kodzie PHP pokazanym w pytaniu. Typowym błędem jest mieszanie pojęć matematycznych i logicznych co może prowadzić do błędnych konkluzji na temat działania konkretnego fragmentu kodu. Aby uniknąć tego typu pomyłek ważne jest zrozumienie jak działają podstawowe operatory w językach programowania i jakie są ich praktyczne zastosowania w kontekście rozwiązywania problemów logicznych w programowaniu. Rozpoznanie właściwego wykorzystania operatorów takich jak modulo pozwala na bardziej precyzyjne formułowanie warunków w kodzie co jest istotne w kontekście efektywnego programowania i utrzymania wysokiej jakości kodu w projektach informatycznych.

Pytanie 21

W katalogu www znajdują się podkatalogi html oraz styles, w których umieszczone są pliki o rozszerzeniu html oraz pliki z rozszerzeniem css. Aby dołączyć styl.css do pliku HTML, należy zastosować

A. <link rel="Stylesheet" type="text/css" href="/style/styl.css" />
B. <link rel="Stylesheet" type="text/css" href="../style/styl.css" />
C. <link rel="Stylesheet" type="text/css" href="styl.css" />
D. <link rel=" Stylesheet" type="text/css" href="www/style/styl. css" />
Poprawna odpowiedź to <link rel="Stylesheet" type="text/css" href="../style/styl.css" />. Użycie tej ścieżki względnej jest kluczowe, ponieważ wskazuje na lokalizację pliku styl.css w stosunku do pliku HTML, w którym jest osadzony. Folder 'www' zawiera podfoldery 'html' oraz 'style', a aby poprawnie zaadresować plik styl.css, który jest w folderze 'style', musimy wyjść z folderu 'html' (stąd '../') i następnie wejść do folderu 'style', gdzie znajduje się plik styl.css. W praktyce jest to zgodne z dobrą praktyką organizacji plików w projektach webowych, ponieważ ułatwia zarządzanie i lokalizowanie zasobów. Warto również zauważyć, że poprawne wskazanie ścieżki do plików CSS jest niezbędne dla prawidłowego renderowania stylów na stronie, co wpływa na jej wygląd i użytkowalność. Wszyscy deweloperzy front-end powinni być świadomi znaczenia dokładnego wskazywania ścieżek oraz stosować się do konwencji dotyczących organizacji struktur plików w projekcie.

Pytanie 22

W jakim formacie powinien być zapisany obraz, aby mógł być wyświetlany na stronie internetowej z zachowaniem przezroczystości?

A. JPG
B. PNG
C. BMP
D. CDR
Wybór formatu JPG, BMP i CDR do zapisu obrazów na stronach internetowych, zwłaszcza w kontekście przezroczystości, może prowadzić do poważnych ograniczeń i problemów. Format JPG (JPEG) to kompresowany format stratny, co oznacza, że podczas zapisywania zdjęć dochodzi do utraty jakości, a także nie obsługuje przezroczystości. To sprawia, że nie nadaje się do grafik wymagających transparentnych obszarów. W praktyce, obrazy JPG są najczęściej używane do zdjęć, gdzie pełna gama kolorów jest istotna, a przezroczystość nie jest potrzebna. BMP (Bitmap) to format zapisu obrazów, który również nie wspiera przezroczystości, a ponadto generuje duże pliki, co jest nieefektywne w kontekście ładowania stron internetowych. Grafiki w formacie BMP są zwykle zbyt ciężkie, by być praktycznymi w środowisku webowym, gdzie priorytetem są szybkość ładowania i optymalizacja zasobów. Z kolei CDR to format pliku używany głównie w oprogramowaniu do grafiki wektorowej CorelDRAW. Chociaż może on być użyteczny w projektowaniu, nie jest standardowym formatem do publikacji w Internecie i nie obsługuje przezroczystości w sposób, który jest wymagany przez nowoczesne standardy webowe. Użytkownicy często popełniają błąd, zakładając, że każdy format obrazu nadaje się do wykorzystania w sieci, mimo że różne formaty mają różne zastosowania i ograniczenia. Wybór niewłaściwego formatu może skutkować gorszą jakością wizualną, dłuższymi czasami ładowania oraz niezgodnością z wymaganiami użytkowników i przeglądarek internetowych.

Pytanie 23

Które z poniższych stwierdzeń dotyczy skalowania obrazu?

A. Łączy bądź pozbywa się kształtów
B. Skutkuje wycięciem z oryginalnego obrazu konkretnego fragmentu, aby uzyskać lepszy widok
C. Opiera się na modyfikacji formatu zapisu obrazu w celu zmiany metody kompresji
D. Prowadzi do zmiany wielkości obrazu bez zmiany istotnej zawartości wizualnej
Wybór odpowiedzi, które nie odnosi się do poprawnego zrozumienia procesu skalowania obrazu, często wynika z zamieszania z innymi technikami przetwarzania obrazu. Na przykład, pierwsza odpowiedź sugeruje operacje na kształtach, co jest bardziej związane z wektoryzacją lub przekształceniem geometrycznym niż z samym skalowaniem. Skalowanie nie łączy ani nie odejmuje kształtów, lecz dostosowuje rozmiar istniejącego obrazu. Kolejna odpowiedź sugeruje, że skalowanie obrazu polega na zmianie sposobu zapisu, co dotyczy bardziej kompresji lub formatu pliku, a nie samego rozmiaru obrazu. Kompresja obrazu to proces zmniejszania rozmiaru pliku, ale nie zmienia fizycznych wymiarów obrazu. Ostatnia błędna odpowiedź koncentruje się na wycinaniu fragmentów obrazu, co jest zupełnie inną operacją, znaną jako kadrowanie. Kadrowanie zmienia sposób, w jaki obraz jest prezentowany, ale nie przekształca jego rozmiaru w kontekście jego rozdzielczości. Typowe błędy myślowe, które mogą prowadzić do takich nieprawidłowych wniosków, to mylenie terminów i zamienność pojęć związanych z przetwarzaniem obrazów. Kluczem do właściwego zrozumienia skalowania jest świadomość, że chodzi o zmianę wymiarów przy zachowaniu integralności wizualnej, co jest istotne w wielu aplikacjach cyfrowych.

Pytanie 24

Jaką wartość przyjmie zmienna $a po wykonaniu poniższej sekwencji poleceń w języku PHP?

$a = 1; $a++; $a += 10; --$a;
A. 12
B. 10
C. 11
D. 1
Gratulacje, Twoja odpowiedź jest prawidłowa. Instrukcje wykonane w kodzie PHP prowadzą do osiągnięcia wartości 11 przez zmienną 'a'. Proces ten jest realizowany w czterech krokach. Najpierw zmienna 'a' jest inicjowana wartością 1. Następnie wartość ta jest zwiększana o 1, co daje nam 2. Do tej wartości dodawane jest 10, co daje nam łącznie 12. Na końcu, wartość ta jest zmniejszana o 1, co daje nam ostateczną wartość 11. Warto przypomnieć, że w języku programowania PHP, tak jak w większości języków, operacje są wykonywane od lewej do prawej. To jest ważne do zapamiętania, gdy mamy do czynienia z bardziej skomplikowanymi sekwencjami operacji.

Pytanie 25

Jeżeli zmienna $x zawiera dowolną dodatnią liczbę naturalną, to przedstawiony kod źródłowy PHP ma na celu wyświetlenie:

$licznik = 0;
while ($licznik != $x)
{
    echo $licznik;
    $licznik++;
}
A. losowych liczb z zakresu (0, x)
B. liczb wprowadzanych z klawiatury, aż do momentu wprowadzenia wartości x
C. kolejnych liczb od x do 0
D. kolejnych liczb od 0 do x-1
Kod źródłowy przedstawiony w pytaniu implementuje prostą pętlę while w języku PHP która ma za zadanie wyświetlić kolejne liczby począwszy od 0 aż do liczby mniejszej od wartości zmiennej $x. Inicjalizowana jest zmienna $licznik z wartością 0 i pętla wykonuje się tak długo jak długo $licznik jest różny od $x. W każdym przebiegu pętli zmienna $licznik jest wyświetlana, a następnie zwiększana o 1. Dzięki temu wyświetlane są wartości od 0 do x-1 co jest zgodne z drugą odpowiedzią w pytaniu. Jest to klasyczna struktura sterująca która pozwala na iterację po skończonej liczbie elementów. Takie podejście jest zgodne ze standardami pisania kodu, gdzie pętle sterowane są warunkami zależnymi od zmiennych kontrolnych. W praktyce zastosowanie takiej pętli może obejmować iterację po tablicach w celu przetwarzania danych. Ważne jest aby dobrze określić warunek zakończenia pętli by uniknąć błędów nieskończonych pętli które mogą prowadzić do przestoju aplikacji. Dla optymalizacji i czytelności kodu ważne jest też stosowanie odpowiednich nazw zmiennych co ułatwia zrozumienie ich funkcji w kodzie.

Pytanie 26

Baza danych MySQL została uszkodzona. Które z poniższych działań nie przyczyni się do jej naprawy?

A. Wykonanie replikacji bazy danych
B. Utworzenie nowej bazy i przeniesienie do niej tabel
C. Próba naprawy za pomocą polecenia REPAIR
D. Odtworzenie bazy z kopii zapasowej
Próba naprawy bazy danych za pomocą polecenia REPAIR może wydawać się sensownym rozwiązaniem, jednak nie zawsze jest skuteczna. REPAIR działa jedynie na tabelach, które są w formacie MyISAM, a w przypadku tabel InnoDB, które są bardziej powszechne w nowoczesnych aplikacjach, to polecenie jest bezsilne. Działania związane z naprawą w przypadku uszkodzeń bazy powinny skupiać się na odpowiednich narzędziach i procedurach specyficznych dla silnika bazy danych. Odtworzenie bazy z kopii bezpieczeństwa to proces, który jest kluczowy w zarządzaniu danymi. Jeśli mamy aktualną kopię zapasową, możemy szybko wrócić do stanu sprzed uszkodzenia, co jest najskuteczniejszym sposobem na wyeliminowanie problemów z danymi. Stworzenie nowej bazy i przeniesienie do niej tabel również nie rozwiązuje problemu, jeżeli tabele te zawierają uszkodzone dane. Tylko przeniesienie struktury tabeli nie naprawi błędów, które już występują w danych. W każdym przypadku, kluczowym krokiem przed podjęciem jakiejkolwiek akcji powinna być analiza przyczyn uszkodzenia oraz zabezpieczenie istniejących danych, zanim podejmie się dalsze kroki.

Pytanie 27

Powszechnie stosowanym narzędziem SZBD do tworzenia zestawień danych, które można wydrukować, jest

A. raport
B. formularz
C. kwerenda UPDATE
D. makro
Kwerenda UPDATE jest używana do modyfikacji istniejących danych w bazie danych. Głównym celem kwerendy jest aktualizacja wartości pól w określonych rekordach, co jest zupełnie innym zadaniem niż generowanie zestawień danych. Użytkownicy, którzy mylnie uważają, że kwerenda UPDATE może służyć do tworzenia raportów, mogą nie rozumieć podstawowego podziału funkcji w systemach bazodanowych. Z kolei formularz jest interfejsem użytkownika, który umożliwia wprowadzanie danych do bazy, ale nie jest narzędziem do generowania zestawień, co sprawia, że jego zastosowanie jest także niewłaściwe w kontekście tego pytania. Makro, z drugiej strony, to zestaw instrukcji automatyzujących różne operacje w bazie danych, ale także nie jest dedykowane do tworzenia raportów. Kluczowym błędem myślowym jest utożsamianie narzędzi do modyfikacji lub wprowadzania danych z narzędziami do ich analizy i raportowania. Warto zrozumieć, że każdy z tych elementów ma swoje specyficzne zastosowanie w systemach zarządzania bazami danych, a ich pomylenie może prowadzić do nieskutecznego wykorzystania zasobów oraz obniżenia jakości analizy danych.

Pytanie 28

W języku PHP zapisano fragment kodu działającego na bazie MySQL. Jego zadaniem jest wypisanie

$z = mysqli_query($db, "SELECT ulica, miasto, kod_pocztowy FROM adresy");
$a = mysqli_fetch_row($z);
echo "$a[1], $a[2]";
A. miasta i kodu pocztowego z pierwszego zwróconego rekordu.
B. ulicy i miasta z pierwszego zwróconego rekordu.
C. miasta i kodu pocztowego ze wszystkich zwróconych rekordów.
D. ulicy i miasta ze wszystkich zwróconych rekordów.
Brawo, wybrałeś prawidłową odpowiedź. Twój fragment kodu PHP wykonuje zapytanie SQL, które wybiera kolumny 'ulica', 'miasto', 'kod_pocztowy' z tabeli 'adresy'. Następnie używasz funkcji mysqli_fetch_row(), która pobiera pierwszy zwrócony rekord jako indeksowaną tablicę. Funkcja echo wyświetla drugi i trzeci element tej tablicy (indeksy 1 i 2), które odpowiadają kolumnom 'miasto' i 'kod pocztowy'. To jest standardową praktyką w PHP, aby uzyskać dane z pierwszego zwróconego rekordu. Możesz zastosować tę wiedzę do tworzenia skomplikowanych zapytań SQL lub do tworzenia różnego rodzaju aplikacji webowych, które potrzebują interakcji z bazą danych.

Pytanie 29

W CSS zapis w postaci ```h1::first-letter{color:red;}``` spowoduje, że kolor czerwony będzie dotyczył

A. pierwszej litery nagłówka pierwszego poziomu
B. pierwszej linii akapitu
C. pierwszej litery nagłówka drugiego poziomu
D. tekstów nagłówka pierwszego poziomu
Pierwsza linia paragrafu nie jest poprawną odpowiedzią, ponieważ selektor h1::first-letter odnosi się konkretnie do nagłówków, a nie do paragrafów. W CSS każdy element HTML ma swoje unikalne selektory, a h1 odnosi się do nagłówka pierwszego stopnia. Z kolei tekst nagłówka pierwszego stopnia jest także niepoprawny, gdyż odnosi się do całego tekstu w elemencie h1, a nie tylko do pierwszej litery. Pseudo-element first-letter działa wyłącznie na tej pierwszej literze, a nie na całym nagłówku. Ostatnia odpowiedź, dotycząca pierwszej litery nagłówka drugiego stopnia, jest również błędna, gdyż selektor h1::first-letter nie ma zastosowania do h2, a jedynie do h1. Aby zmienić styl pierwszej litery w nagłówku drugiego stopnia, należałoby użyć selektora h2::first-letter. Różnice te są kluczowe w zrozumieniu jak działają selektory CSS oraz jak przypisane są style do konkretnych elementów w dokumentach HTML.

Pytanie 30

Jaką funkcję w edytorze grafiki rastrowej trzeba wykorzystać, żeby przygotować rysunek do publikacji na stronie tak, aby widoczne było jedynie to, co znajduje się w obrębie ramki?

Ilustracja do pytania
A. Skalowanie
B. Perspektywa
C. Kadrowanie
D. Odbicie
Odbicie w edytorze grafiki rastrowej zmienia kierunek obrazu w pionie lub poziomie co jest użyteczne gdy chcemy uzyskać lustrzane odbicie elementów grafiki. Choć jest to przydatne narzędzie nie spełnia ono funkcji wybiórczego wyświetlania części obrazu tak jak kadrowanie. Skalowanie natomiast polega na zmianie rozmiaru obrazu poprzez zwiększenie lub zmniejszenie jego wymiarów przy jednoczesnym zachowaniu proporcji lub ich modyfikacji. Skalowanie jest istotne w kontekście dostosowywania obrazów do różnych rozdzielczości ekranów i formatów jednak nie eliminuje niechcianych fragmentów obrazu tak jak kadrowanie. Z kolei perspektywa odnosi się do zmiany kąta widzenia obrazu co pozwala na symulowanie widoku z różnych punktów obserwacji. Narzędzie perspektywy umożliwia tworzenie efektów przestrzennych ale nie ogranicza treści obrazu do konkretnego obszaru. Wszystkie te funkcje mają swoje zastosowanie w edycji grafiki lecz żadne z nich nie oferuje możliwości selektywnego wycinania fragmentu obrazu w celu jego dalszego wykorzystania co jest kluczową cechą kadrowania. Kadrowanie pozostaje narzędziem podstawowym do przygotowania obrazów do publikacji gdzie istotne jest skoncentrowanie uwagi odbiorcy na najważniejszych elementach grafiki eliminując zbędne szczegóły.

Pytanie 31

Jakie oprogramowanie służy do obróbki dźwięku?

A. RealPlayer
B. Audacity
C. Brasero
D. Winamp
Wybór Brasero, Winampa czy RealPlayera jako programów do edycji dźwięku jest błędny, ponieważ każdy z nich pełni inną funkcję, która nie obejmuje zaawansowanej edycji audio. Brasero to program do nagrywania płyt, który umożliwia użytkownikom tworzenie obrazów dysków oraz nagrywanie danych na nośnikach optycznych. Jego głównym celem jest zarządzanie danymi, a nie edytowanie dźwięku, co czyni go nieodpowiednim w kontekście tego pytania. Winamp, z kolei, był popularnym odtwarzaczem multimedialnym, który skoncentrował się na odtwarzaniu plików audio i wideo, a jego funkcje ograniczały się do podstawowej obsługi dźwięku, bez zaawansowanych możliwości obróbczych. RealPlayer również skupia się głównie na odtwarzaniu materiałów wideo i audio, a jego funkcje edycyjne są bardzo ograniczone, co sprawia, że nie jest to narzędzie odpowiednie do poważnej edycji dźwięku. Użytkownicy mogą mylić te aplikacje z programami do edycji dźwięku z uwagi na ich popularność, jednak kluczowe jest zrozumienie różnicy między odtwarzaniem a edytowaniem audio. Właściwe podejście do wyboru narzędzi audio wymaga znajomości specyfikacji i zastosowania danego programu, co jest fundamentem w branży audio oraz w świecie produkcji dźwięku.

Pytanie 32

Jakie wartości zostaną wypisane po wykonaniu poniższego skryptu?

var x = 1;
var y;
/*0*/ ++y;
/*1*/ document.write(++x);
/*2*/ document.write(" ");
/*3*/ document.write(x--);
/*4*/ document.write(" ");
/*5*/ document.write(x);
A. 1 2 1
B. 2 1 1
C. 1 2 2
D. 2 2 1
Analizując wyniki działania skryptu, warto zwrócić uwagę na różnice wynikające z użycia operatorów preinkrementacji i postdekrementacji. Wiele osób mylnie interpretuje, jak te operatory wpływają na zmienną w danej kolejności operacji. Preinkrementacja (++x) zwiększa wartość zmiennej o 1 przed jej użyciem w wyrażeniu, co oznacza, że każda operacja wykonywana później będzie bazować na już zwiększonej wartości. Z kolei postdekrementacja (x--) najpierw używa bieżącej wartości zmiennej, a dopiero potem ją zmniejsza, co może prowadzić do błędnych założeń, jeśli nie jest się świadomym tej różnicy. Częstym błędem jest założenie, że obie operacje działają jednocześnie, co nie jest prawdą. Różnica ta jest kluczowa, ponieważ ma znaczący wpływ na kolejność wykonania operacji i rezultat końcowy. Przy programowaniu w JavaScript należy zatem nie tylko znać różnice między tymi operatorami, ale także dokładnie rozumieć, jak wpływają one na przepływ sterowania w kodzie. Znajomość tego mechanizmu pozwala unikać typowych błędów, które prowadzą do nieoczekiwanych wyników i problemów z debugowaniem kodu. Jest to nieodzowna wiedza w inżynierii oprogramowania, szczególnie przy optymalizacji i pisaniu efektywnego kodu.

Pytanie 33

Debugger to aplikacja przeznaczona do

A. weryfikacji wydajności programu
B. optymalizacji pamięci używanej przez program
C. identyfikacji błędów w kodzie aplikacji
D. analizowania właściwości oprogramowania
Wybór odpowiedzi dotyczących badania właściwości programu oraz sprawdzania szybkości programu wskazuje na pewne nieporozumienia dotyczące roli, jaką pełni debugger. Badanie właściwości programu może obejmować analizę jego wydajności, bezpieczeństwa czy zgodności z wymaganiami, co nie jest bezpośrednio związane z identyfikowaniem błędów w kodzie. Takie podejście sugeruje, że debugger pełni rolę narzędzia do monitorowania różnych aspektów działania aplikacji, a nie skupia się na problemach związanych z kodowaniem. Z kolei sprawdzanie szybkości programu to aspekt, który bardziej odnosi się do profilera – narzędzia służącego do analizy wydajności aplikacji, a nie do lokalizacji błędów w kodzie. Ostatnia koncepcja, związana z optymalizowaniem pamięci używanej przez aplikację, również nie ma bezpośredniego związku z główną funkcją debugggera. Optymalizacja pamięci to proces, który zazwyczaj wykonuje się po zakończeniu fazy debugowania, kiedy to programista dąży do poprawy efektywności działania aplikacji. Niewłaściwe zrozumienie, czym jest debugger i jakie ma zastosowanie, może prowadzić do nieefektywnego rozwiązywania problemów z kodem oraz wydłużenia czasu potrzebnego na dostarczenie gotowego oprogramowania. Warto pamiętać, że skuteczne debugowanie jest kluczowym etapem w cyklu życia oprogramowania i powinno być traktowane z należytą powagą oraz jako integralna część procesu developmentu.

Pytanie 34

Które z komend przyznaje najniższy poziom uprawnień dla użytkownika uczen w zakresie modyfikacji danych oraz struktury tabeli?

A. GRANT ALTER, SELECT ON szkola.przedmioty TO uczen
B. DRANT DROP ON szkola.przedmioty TO uczen
C. GRANT SELECT ON szkola.przedmioty TO uczen
D. GRANT INSERT, DROP ON szkola.przedmioty TO uczen
Wszystkie pozostałe polecenia przyznają użytkownikowi uczeń szerszy zakres uprawnień, co prowadzi do większego ryzyka nieautoryzowanej modyfikacji danych. Polecenie DRANT DROP ON szkola.przedmioty TO uczen jest nieprawidłowe, ponieważ DRANT nie jest poprawnym poleceniem SQL, co czyni jego interpretację niemożliwą. W kontekście administracji bazami danych, DROP oznacza usunięcie całej tabeli, co w przypadku użytkownika uczeń może prowadzić do katastrofalnych skutków, gdyż może on przypadkowo lub celowo usunąć istotne dane. Kolejne polecenie GRANT INSERT, DROP ON szkola.przedmioty TO uczen przyznaje prawo do wstawiania nowych danych oraz usuwania tabeli. Takie uprawnienia są zdecydowanie nieodpowiednie dla użytkownika uczeń. Umożliwiają one nie tylko dodawanie nieautoryzowanych rekordów, ale także ich usuwanie, co narusza zasady bezpieczeństwa i integralności danych. Podobnie, GRANT ALTER, SELECT ON szkola.przedmioty TO uczen przyznaje prawo do modyfikacji struktury tabeli, co oznacza, że uczeń mógłby zmieniać kolumny, dodawać nowe oraz wprowadzać zmiany, które mogą wpływać na funkcjonowanie całej bazy danych. Prawo do ALTER jest jednym z najszerszych uprawnień w SQL i nie powinno być przyznawane użytkownikom, którzy nie są administratorami, aby zapewnić pełną kontrolę nad bazą danych.

Pytanie 35

Na ilustracji ukazano rezultat stylizacji za pomocą CSS oraz kod HTML generujący ten przykład. Zakładając, że marginesy wewnętrzne wynoszą 50 px, a zewnętrzne 20 px, jak wygląda styl CSS dla tego obrazu?

Ilustracja do pytania
A. D.
B. C.
C. A.
D. B.
Wybór niewłaściwej odpowiedzi może wynikać z niepełnego zrozumienia zastosowania poszczególnych właściwości CSS. Pierwsza możliwość sugeruje użycie dotted border zamiast solid co może być mylące w kontekście estetyki i czytelności projektu. Dotted border wprowadza przerywaną linię obramowania, co nie zawsze jest pożądane w profesjonalnym wyglądzie strony. Kolejna błędna konfiguracja zmienia marginesy i padanie co wpływa na ogólny układ i spójność wizualną. Błędne ustawienie marginesów zewnętrznych na 50px przy zmniejszeniu padania do 20px może zaburzyć proporcje i układ elementów wpływając na czytelność. Stylowanie z niewłaściwymi wartościami prowadzi do nieprzewidywalnych rezultatów zwłaszcza na urządzeniach o różnych rozdzielczościach. Ważne jest zrozumienie jak CSS wpływa na model boxu i jak poszczególne właściwości oddziałują na siebie co jest kluczowe w tworzeniu responsywnych i estetycznie spójnych interfejsów. Zrozumienie tych koncepcji jest kluczowe w unikaniu typowych pułapek projektowych i budowaniu stron zgodnych z nowoczesnymi standardami.

Pytanie 36

Ile razy zostanie wykonana pętla przedstawiona w języku PHP, zakładając, że zmienna kontrolna nie jest zmieniana w jej wnętrzu?
for($i = 0; $i <= 10; $i++) { ...... }

A. 11 razy
B. 10 razy
C. 0 razy
D. Nieskończoność
Pętla for w języku PHP, jak w przedstawionym przykładzie, ma na celu wykonanie bloku kodu wielokrotnie, w zależności od stanu zmiennej sterującej. W tym przypadku, początkowa wartość zmiennej $i wynosi 0, a warunek kontynuacji pętli to $i <= 10. Oznacza to, że pętla będzie kontynuować swoje działanie, dopóki zmienna $i będzie mniejsza lub równa 10. W każdym przebiegu pętli wartość $i jest inkrementowana o 1 za pomocą operatora ++, co oznacza, że przy każdym przejściu przez pętlę $i przyjmuje wartości 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 i 10. Ostatecznie, pętla wykonuje się, gdy $i osiąga wartość 10, a następnie po wykonaniu bloku kodu następuje inkrementacja, co sprawia, że $i staje się 11, co narusza warunek $i <= 10. Zatem pętla wykonuje się 11 razy, co czyni odpowiedź 11 poprawną. Przykładem zastosowania takiej pętli może być iteracja po elementach tablicy lub generowanie sekwencji liczb. Zgodnie z najlepszymi praktykami programistycznymi, ważne jest, aby zawsze kontrolować zmienne sterujące w pętli, aby uniknąć sytuacji takich jak nieskończone pętle, co jest szczególnie istotne w kontekście wydajności aplikacji.

Pytanie 37

Tablica tab[] jest wypełniona losowymi liczbami całkowitymi. Jaka będzie wartość zmiennej zm2 po wykonaniu poniższego fragmentu kodu?

int tab[10];
int zm1 = 0;
double zm2 = 0;

for (int i=0; i < 10; i++)
{
    zm1 = zm1 + tab[i];
}
zm2 = zm1 / 10;
A. Suma liczb od 1 do 10
B. Średnia geometryczna liczb od 0 do 9
C. Suma elementów z tablicy
D. Średnia arytmetyczna liczb z tablicy
W tym kodzie jest trochę do zrozumienia, zwłaszcza w kontekście pętli for i operacji matematycznych. Mylisz się, myśląc, że zm2 to średnia geometryczna liczb od 0 do 9, bo w tym kodzie nie ma ani mnożenia, ani pierwiastkowania, które są konieczne do obliczenia średniej geometrycznej. Zmienna zm2 odnosi się do liczb w tablicy tab[], a nie do tych od 0 do 9. Ponadto, twierdzenie, że zm2 to suma liczb od 1 do 10, jest błędne, bo kod nie operuje na takich liczbach. Sumowanie dotyczy tylko wartości w tablicy. Mylna jest też informacja, że zm2 to suma z tablicy – to zm1 przechowuje tę sumę, a zm2 to średnia po podzieleniu przez 10. Błędy takie mogą wynikać z braku zrozumienia działania pętli i operacji matematyk. Ważne, żeby zawsze śledzić, co się dzieje z danymi w kodzie i jakie operacje są wykonywane, bo to klucz do rozwiązywania problemów w programowaniu. Warto dokładnie zrozumieć strukturę kodu i rolę zmiennych, aby unikać błędów logicznych.

Pytanie 38

Element

<meta charset="utf-8">
definiuje metadane dotyczące strony internetowej, odnosząc się do
A. języka witryny
B. opisu witryny
C. kodowania znaków
D. słów kluczowych
Wybór odpowiedzi na temat opisu strony czy słów kluczowych pokazuje, że nie do końca złapałeś, o co chodzi z elementem <meta charset="utf-8">. Opis strony definiuje się przez <meta name="description">, a to jest istotne do SEO i tego, jak strona wygląda w wynikach wyszukiwania. Co do języka, to ustalamy go poprzez atrybut 'lang' w tagu <html>, co jest ważne dla dostępności. Słowa kluczowe to inna sprawa, bo kiedyś były istotne, ale teraz to jakby mniej się liczy. Twoja odpowiedź nie uwzględnia tego, że <meta charset> ma głównie za zadanie dbać o poprawne wyświetlanie znaków, a nie opisywać treść. Jak użyjesz złego kodowania, to tekst może być zniekształcony, a to zniechęca ludzi do korzystania z Twojej strony. Tak że warto zrozumieć, jak każdy z tych tagów meta działa w kontekście tworzenia stron.

Pytanie 39

W języku PHP w konstrukcji switch powinno się znajdować

A. instrukcja default
B. konstrukcja switch(wyrażenie)
C. instrukcja break po każdej instrukcji case
D. przynajmniej dwie instrukcje case
Wybór odpowiedzi, która sugeruje, że instrukcja default jest wymagana w konstrukcji switch, jest błędny z kilku powodów. Po pierwsze, instrukcja default jest opcjonalna, a jej obecność jest uzasadniona tylko w przypadku, gdy chcemy zdefiniować domyślne działanie, gdy żaden z przypadków nie pasuje do wartości wyrażenia. Brak default nie wpływa na poprawność działania switch. Co więcej, wiele programistów decyduje się na pominięcie tej instrukcji, gdyż nie ma takiej potrzeby. Kolejną niepoprawną odpowiedzią jest twierdzenie, że w switch musi występować przynajmniej dwie instrukcje case. W rzeczywistości konstrukcja switch może składać się z jednego przypadku, co oznacza, że programista ma pełną swobodę w definiowaniu liczby użytych case'ów, w zależności od potrzeb aplikacji. Ostatni błędny wybór odnosi się do konieczności użycia instrukcji break po każdej instrukcji case. Choć stosowanie break jest dobrą praktyką, ponieważ zapobiega 'spadaniu' do kolejnych case'ów, jego brak nie czyni całej konstrukcji switch nieważną. Gdy break nie jest użyty, kod przechodzi do kolejnych instrukcji case, co może prowadzić do niezamierzonych wyników, ale nie wpływa na samą poprawność konstrukcji switch. Dlatego wszystkie te odpowiedzi są niepoprawne w kontekście wymagań dotyczących stosowania instrukcji switch w PHP.

Pytanie 40

W HTML znacznik <i> wywołuje taki sam efekt wizualny jak znacznik

A. <pre>
B. <em>
C. <strong>
D. <u>
Zastosowanie znaczników <u>, <pre> oraz <strong> w kontekście odwzorowania efektu znacznika <i> jest mylące ze względu na różnice w semantyce i wizualizacji. Znacznik <u> (underline) stosowany jest do podkreślenia tekstu, ale nie wprowadza on żadnych aspektów znaczeniowych. Używanie <u> zazwyczaj jest odradzane w nowoczesnym HTML, ponieważ może zostać zinterpretowane przez użytkowników jako link, co wprowadza w błąd. Znacznik <strong> (strong emphasis) wskazuje na szczególne znaczenie tekstu, co również nie odpowiada efektowi kursywy, a wręcz przeciwnie – ma na celu przyciągnięcie uwagi odbiorcy do ważnych informacji. Warto zauważyć, że <pre> (preformatted text) służy do wyświetlania tekstu w stałym formacie, co nie ma związku z efektem kursywy. Wprowadzenie do dokumentu HTML takich znaczników, które nie odpowiadają zamierzonym funkcjom, wprowadza chaos w strukturę semantyczną i może prowadzić do problemów z dostępnością. Przykładowe błędy myślowe obejmują mylenie efektów wizualnych z ich semantycznym znaczeniem, co jest kluczowe dla prawidłowego używania HTML. Zrozumienie różnic między tymi znacznikami jest istotne dla twórców stron internetowych, aby zapewnić, że ich treść jest nie tylko estetycznie przyjemna, ale również funkcjonalna i dostępna.