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: 10 czerwca 2026 14:48
  • Data zakończenia: 10 czerwca 2026 15:14

Egzamin niezdany

Wynik: 14/40 punktów (35,0%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Jaką wartość zwróci funkcja w języku C++, jeśli parametry wynoszą a = 4 oraz b = 3?

long int fun1(int a, int b)
{
long int wynik = 1;
for (int i = 0; i < b; i++)
wynik *= a;
return wynik;
}
A. 1
B. 12
C. 64
D. 16
Funkcja fun1 w języku C++ oblicza potęgę liczby a do b. Wykorzystuje pętlę for aby przemnożyć początkową wartość 1 przez a dokładnie b razy co daje wynik a do potęgi b. W tym przypadku gdy a = 4 i b = 3 funkcja wykonuje 3 iteracje mnożąc wynik początkowo równy 1 przez 4 daje 4 następnie 16 i ostatecznie 64. To podejście ilustruje podstawowe zastosowanie pętli for w obliczeniach iteracyjnych. Takie podejście do obliczania potęg jest efektywne dla małych potęg ale dla większych wartości można rozważyć algorytmy typu exponentiation by squaring które są optymalniejsze. W programowaniu C++ pętla for jest często stosowana do zadań o z góry określonej liczbie iteracji co czyni ją idealnym wyborem dla tego problemu. Ważne jest także zrozumienie jak zmienne takie jak wynik są wykorzystywane do przechowywania stanu w trakcie iteracji co jest kluczowe w wielu algorytmach programistycznych. Takie rozumowanie i wykorzystanie pętli for jest zgodne z dobrymi praktykami programowania.

Pytanie 2

W jaki sposób, stosując język PHP można usunąć ciasteczko o nazwie ciastko?

A. setcookie(""$ciastko"", """", 0);
B. setcookie(""ciastko"", """", time()-3600);
C. deletecookie(""ciastko"");
D. unsetcookie(""$ciastko"");
Wiele z błędnych odpowiedzi opiera się na niepoprawnych założeniach dotyczących metod usuwania ciasteczek w PHP. Przykładowo, użycie deletecookie("ciastko") jest nieprawidłowe, ponieważ w standardowej bibliotece PHP nie istnieje funkcja o takiej nazwie. PHP nie dostarcza wbudowanej funkcji do bezpośredniego usuwania ciasteczek; zamiast tego należy użyć setcookie, aby ustawić ciasteczko z przestarzałym czasem ważności. Podobnie, użycie unsetcookie("$ciastko") jest błędne, ponieważ nie ma takiej funkcji w PHP. Użytkowanie funkcji unset dotyczy zmiennych, a nie ciasteczek, co może prowadzić do konfuzji. W praktyce, aby usunąć ciasteczko, musisz wyraźnie określić jego nazwę z użyciem setcookie, a także wartość oraz czas wygaśnięcia. Ostatecznie, niewłaściwe podejścia do usuwania ciasteczek mogą prowadzić do problemów z bezpieczeństwem, na przykład w sytuacjach, gdy aplikacja niepoprawnie zarządza sesjami użytkowników, co naraża dane na nieautoryzowany dostęp. Aby skutecznie zarządzać ciasteczkami, ważne jest zrozumienie ich mechanizmów oraz stosowanie zgodnych z normami metod ich usuwania.

Pytanie 3

Deklaracja z właściwością background-attachment: scroll sprawia, że

A. tło strony zostanie zamocowane, a tekst będzie się poruszał
B. grafika tła będzie widoczna w prawym górnym rogu strony
C. tło strony będzie przesuwane razem z zawartością tekstową
D. grafika tła będzie się powtarzać (kafelki)
Właściwość CSS 'background-attachment: scroll' oznacza, że tło elementu będzie przewijane w równym tempie z treścią na stronie. Kiedy użytkownik przegląda stronę i przewija ją w dół lub w górę, tło przesuwa się razem z zawartością, co tworzy wrażenie głębokości i dynamiki. Przykładem zastosowania tej właściwości może być strona internetowa z długim tekstem, gdzie tło, takie jak kolor lub obraz, jest częścią estetyki projektu, ale nie powinno być statyczne. Warto zauważyć, że można to osiągnąć, ustawiając 'background-attachment' na 'scroll', co jest najczęściej stosowanym ustawieniem. W standardach CSS3 'background-attachment' ma cztery możliwe wartości: 'scroll', 'fixed', 'local', oraz 'inherit'. Stosowanie 'scroll' jest najbardziej intuicyjne i wspiera responsywność, ponieważ zmienia się w zależności od interakcji użytkownika z zawartością. To podejście jest zgodne z praktykami projektowania stron internetowych, które kładą nacisk na użytkownika i interaktywność.

Pytanie 4

Zaprezentowano kod tabeli o wymiarach 3x2. Jaką zmianę wprowadzić w jej drugim wierszu, aby tabela była zgodna z obrazkiem ukazującym niewidoczny wiersz?

Ilustracja do pytania
A. <tr style="display: table-cell">
B. <tr style="display: none">
C. <tr style="clear: none">
D. <tr style="visibility: hidden">
Stosowanie stylu display: none w tabeli spowodowałoby całkowite usunięcie wiersza z układu, co oznacza, że nie tylko zawartość, ale i przestrzeń, którą zajmuje wiersz, zniknęłaby. To wpływa na pozostałe elementy tabeli, zmieniając jej układ i potencjalnie zaburzając całość kompozycji. Z kolei użycie clear: none w tym kontekście jest błędne, ponieważ clear dotyczy przepływu floatów, a nie bezpośrednio ukrywania lub pokazywania elementów. Ustawienie display: table-cell jest także nieodpowiednie, gdyż odnosi się do właściwości display elementów, które powinny być traktowane jako komórki tabeli, a nie całe wiersze. Typowym błędem jest mylenie visibility: hidden z display: none; pierwsza opcja powoduje ukrycie zawartości, ale zachowanie miejsca, co jest ważne w kontekście dynamicznych układów stron. Błędne rozumienie, jak różne style wpływają na układ dokumentu, może prowadzić do problemów z responsywnością i dostępnością projektu. Dobrym zwyczajem jest dokładne testowanie efektów używanych właściwości CSS, aby zrozumieć ich praktyczny wpływ na HTML, co jest kluczowe w zaawansowanym projektowaniu stron internetowych.

Pytanie 5

Elementy <header>, <article>, <section>, <footer> są typowe dla języka

A. HTML 5
B. XHTML 1.1
C. HTML 4.01 Transitional
D. HTML 4.01 Strict
Wybór XHTML 1.1, HTML 4.01 Transitional lub HTML 4.01 Strict jako odpowiedzi na pytanie jest błędny, ponieważ te wersje języka HTML nie mają zdefiniowanych znaczników semantycznych, które są charakterystyczne dla HTML 5. XHTML 1.1, będący bardziej rygorystyczną wersją HTML, koncentruje się na zgodności z XML, co utrudnia elastyczność w projektowaniu i wprowadza dodatkowe wymagania dotyczące składni, ale nie oferuje nowych znaczników semantycznych. HTML 4.01 Transitional to wersja, która umożliwia stosowanie zarówno nowych, jak i starych technik HTML, jednak nie zawiera semantycznych elementów, które zostały wprowadzone w HTML 5. Z kolei HTML 4.01 Strict wprowadza ścisłe zasady dotyczące struktury dokumentu, ale również nie obejmuje nowych znaczników semantycznych. Istotnym błędem myślowym jest przekonanie, że wcześniejsze wersje HTML, które koncentrują się na zgodności z przeglądarkami, mogą dostarczyć takiej samej funkcjonalności jak HTML 5. Znaczniki semantyczne, takie jak <header>, <article>, <section> i <footer>, są kluczowe dla nowoczesnego podejścia do tworzenia stron internetowych, które koncentrują się na dostępności, SEO oraz lepszej organizacji treści. Wybierając nieodpowiednią wersję HTML, można nie tylko utracić na semantyce, ale również narazić projekt na problemy z przyszłą kompatybilnością i utrzymaniem.

Pytanie 6

Oprogramowaniem typowym do obróbki grafiki wektorowej jest

A. Audacity
B. Brasero
C. Paint
D. Inkscape
Wybór Paint, Brasero i Audacity jako odpowiedzi na pytanie o program do edycji grafiki wektorowej wskazuje na kilka powszechnych nieporozumień dotyczących kategorii oprogramowania oraz różnic między grafiką wektorową a rastrową. Paint to prosty edytor graficzny, który obsługuje grafikę rastrową, co oznacza, że obrazy są zbudowane z pikseli. Grafika rastrowa nie zachowuje jakości przy skalowaniu, co może prowadzić do zniekształceń i utraty detali. Brasero to program do nagrywania płyt, który nie ma żadnych funkcji związanych z edycją grafiki, co czyni go zupełnie nieodpowiednim do tego kontekstu. Audacity to natomiast oprogramowanie do edycji dźwięku, które nie ma nic wspólnego z grafiką, co dodatkowo podkreśla, jak ważne jest, aby użytkownik rozumiał podstawowe różnice między różnymi typami aplikacji. Kluczowym błędem myślowym w tym przypadku jest brak zrozumienia, że różne programy odpowiadają różnym potrzebom i zastosowaniom. Warto zwrócić uwagę na definicje i przeznaczenie poszczególnych narzędzi, ponieważ niewłaściwy wybór programu może prowadzić do frustracji oraz nieskutecznego wykorzystania czasu i zasobów. Rozumienie, że grafika wektorowa jest fundamentalnie inna od grafiki rastrowej oraz że odpowiednie narzędzia powinny wspierać konkretne techniki projektowe, jest kluczowe w branży graficznej.

Pytanie 7

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. 2 1 1
B. 1 2 2
C. 1 2 1
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 8

Zadanie polecenia w języku SQL ALTER TABLE USA ... polega na

A. modyfikacji tabeli USA
B. zamianie starej tabeli USA
C. usunięciu tabeli USA
D. stworzeniu nowej tabeli USA
Odpowiedzi wskazujące na utworzenie nowej tabeli, usunięcie istniejącej tabeli oraz nadpisanie starej tabeli są błędne, ponieważ nie odpowiadają na rzeczywistą funkcję polecenia ALTER TABLE w SQL. Utworzenie nowej tabeli wymaga użycia polecenia CREATE TABLE, które definiuje nową strukturę danych w bazie, co jest zupełnie inną operacją niż modyfikacja istniejącej tabeli. Usunięcie tabeli jest realizowane przez polecenie DROP TABLE, a nie przez ALTER TABLE, co może prowadzić do katastrofalnych skutków, jeśli nie zostanie przeprowadzone świadome i ostrożne. Nadpisanie tabeli w kontekście SQL nie jest standardowym podejściem, gdyż w praktyce, aby 'nadpisać' dane, najpierw trzeba by usunąć starą tabelę, co wiąże się z ryzykiem utraty danych. Typowe błędy myślowe wynikają z mylenia tych podstawowych operacji i nieznajomości standardów SQL. Dlatego kluczowe jest zrozumienie różnic między podstawowymi poleceniami baz danych oraz ich rzeczywistych zastosowań w kontekście zarządzania danymi. Użycie właściwych poleceń w odpowiednich sytuacjach jest fundamentalne dla efektywności i bezpieczeństwa w pracy z bazami danych.

Pytanie 9

Co się stanie po kliknięciu w link z HTML zawierający znak #?

<a href="#dane">
A. Zostanie uruchomiony skrypt o nazwie dane
B. Zostanie wybrany względny adres URL o nazwie dane
C. Strona przeskoczy do elementu o identyfikatorze równym dane
D. Otworzy się nowa karta w przeglądarce zatytułowana dane
Odpowiedź, że kliknięcie odnośnika ze znakiem # w href spowoduje wywołanie skryptu o nazwie dane, jest błędna, ponieważ atrybut href służy do określania celu hiperłącza, a nie wywoływania skryptów. Skrypty mogą być wykonywane za pomocą JavaScript, np. poprzez onclick, ale nie przez sam atrybut href z identyfikatorem. Stwierdzenie, że otworzy się osobna karta przeglądarki o nazwie dane, również jest nieprawidłowe. Atrybut href z wartością zaczynającą się od # nie otwiera nowej karty, lecz wskazuje na fragment aktualnej strony. Otwieranie nowej karty można osiągnąć przez ustawienie target="_blank", ale to wymaga pełnego URL lub ścieżki względnej bez #. Twierdzenie, że zostanie wybrany adres względny URL o nazwie dane, jest mylnym zrozumieniem nawigacji wewnętrznej. Nawigacja z użyciem # kieruje do elementu na tej samej stronie, a nie do pliku czy zewnętrznej lokalizacji. Takie błędne przekonania mogą wynikać z braku zrozumienia specyfiki nawigacji wewnętrznej w HTML i różnicy między kotwicami a tradycyjnymi linkami URL. Zrozumienie tych różnic jest kluczowe dla poprawnego tworzenia stron zgodnych ze standardami sieciowymi oraz dostępnych i przyjaznych dla użytkowników.

Pytanie 10

Jakiego protokołu trzeba użyć do przesyłania plików witryny internetowej na serwer hostingowy?

A. IRC
B. HTTP
C. SMTP
D. FTP
Wybór niewłaściwego protokołu do przesyłania plików na serwer hostingowy może prowadzić do nieefektywności oraz problemów z bezpieczeństwem. Protokół IRC (Internet Relay Chat) jest przede wszystkim używany do komunikacji i czatowania w czasie rzeczywistym, a nie do transferu plików. Chociaż istnieją metody przesyłania plików przez IRC, są one rzadko stosowane i niezalecane w kontekście przesyłania plików stron internetowych. HTTP (Hypertext Transfer Protocol) jest protokołem używanym do przesyłania stron internetowych z serwera do klienta, ale nie jest przeznaczony do przesyłania plików na serwer. W rzeczywistości, HTTP jest bardziej odpowiedni do pobierania plików niż ich przesyłania, co czyni go nieodpowiednim wyborem w tym kontekście. SMTP (Simple Mail Transfer Protocol) służy do przesyłania wiadomości e-mail, a nie do transferu plików na serwer, co czyni go również nieadekwatnym. Wybór tych protokołów często wynika z nieporozumienia co do ich zastosowania, co podkreśla znaczenie znajomości funkcji różnych protokołów sieciowych oraz ich odpowiednich zastosowań w praktyce. Właściwe dobieranie protokołów jest kluczowe dla zapewnienia efektywnego i bezpiecznego zarządzania danymi w sieciach komputerowych.

Pytanie 11

W programowaniu obiektowym proces, dzięki któremu klasa podrzędna może wykorzystywać metody z klasy nadrzędnej, określa się mianem

A. dziedziczeniem
B. polimorfizmem
C. hermetyzacją
D. wirtualizacją
Polimorfizm, hermetyzacja i wirtualizacja to pojęcia związane z programowaniem obiektowym, ale nie odnoszą się do mechanizmu współdzielenia pól i metod klasy. Polimorfizm to koncepcja, która pozwala obiektom różnych klas być traktowanymi jako obiekty jednej klasy bazowej. Umożliwia to pisanie bardziej elastycznego kodu, który może pracować z różnymi typami obiektów. Na przykład, jeśli mamy metodę, która przyjmuje jako argument obiekt klasy 'Pojazd', możemy przekazać zarówno obiekt 'Samochód', jak i 'Motocykl', a metoda zadziała poprawnie w obu przypadkach. Hermetyzacja to natomiast technika ograniczania dostępu do wewnętrznych danych klasy, co pozwala na ochronę stanu obiektu przed nieautoryzowanymi modyfikacjami. Oznacza to, że pola klasy są często oznaczane jako prywatne, a dostęp do nich uzyskuje się za pomocą metod publicznych. Wirtualizacja odnosi się do technik umożliwiających tworzenie wirtualnych instancji, co jest bardziej związane z wirtualizacją systemów operacyjnych niż z dziedziczeniem w OOP. Typowe błędy myślowe mogą wynikać z mylenia tych pojęć z dziedziczeniem, co często zdarza się osobom, które dopiero zaczynają swoją przygodę z programowaniem obiektowym. Kluczowe jest zrozumienie, że każda z tych koncepcji ma swoje unikatowe zastosowanie i nie można ich stosować zamiennie bez utraty sensu i poprawności kodu.

Pytanie 12

Podczas edytowania grafiki w programie do obróbki rastrowej należy usunąć kolory z obrazu, aby uzyskać wizualizację w odcieniach szarości. W tym celu można zastosować funkcję

A. desaturacji
B. kadrowania
C. szumu RGB
D. filtru rozmycia
Desaturacja to proces, który polega na usunięciu kolorów z obrazu, co skutkuje uzyskaniem jego wersji w odcieniach szarości. W kontekście edytorów grafiki rastrowej, takich jak Adobe Photoshop lub GIMP, desaturacja jest kluczową funkcją, umożliwiającą szybkie przekształcenie zdjęcia kolorowego w monochromatyczne. Tego typu operacje są szczególnie przydatne w fotografii czarno-białej, w grafice artystycznej oraz w projektowaniu, gdzie kolor może odwracać uwagę od kompozycji lub detali. Aby wykonać desaturację, wystarczy zastosować odpowiednią funkcję menu, co pozwala na łatwe i efektywne pozbycie się kolorów. Dobrą praktyką jest również eksploracja różnych metod desaturacji, takich jak konwersja do skali szarości lub użycie filtrów, które mogą dać różne efekty wizualne. Warto również zaznaczyć, że desaturacja nie jest tym samym co konwersja do odcieni szarości, gdyż może zachować pewne informacje o luminancji, które są istotne w kontekście dalszej obróbki obrazu.

Pytanie 13

Relacja wiele-do-wielu w bazach danych występuje pomiędzy tabelami, gdy

A. jednemu wierszowi z tabeli A przysługuje wyłącznie jeden wiersz z tabeli B
B. wielu wierszom z tabeli A przypisany jest tylko jeden wiersz z tabeli B
C. jednemu wierszowi z tabeli A odpowiada wiele wierszy z tabeli B
D. wielu wierszom z tabeli A przyporządkowane są liczne wiersze z tabeli B
Odpowiedzi mówiące, że wielu wierszom z tabeli A może odpowiadać tylko jeden wiersz w tabeli B, albo że jednemu wierszowi z tabeli A przypisany jest tylko jeden wiersz w tabeli B, dotyczą relacji jeden-do-wielu i jeden-do-jednego. W relacji jeden-do-wielu każdy rekord z tabeli A może łączyć się z wieloma rekordami w tabeli B, ale nie na odwrót, co już nie pasuje do definicji relacji wiele-do-wielu. Natomiast relacja jeden-do-jednego oznacza, że każdy rekord w jednej tabeli jest związany z jednym rekordem w drugiej tabeli, co również mija się z celem relacji wiele-do-wielu. Często mylimy te relacje i nie do końca rozumiemy, jak za pomocą tabeli pośredniczącej stworzyć bardziej złożone powiązania. Dlatego ważne jest, żeby zrozumieć, jak działają dane i jak ustalić odpowiednie relacje w modelu bazy. Dobrze zaprojektowana baza danych nie tylko przechowuje dane, ale też pozwala je efektywnie przetwarzać i analizować, co jest super istotne w wielu zastosowaniach biznesowych.

Pytanie 14

Aby przekształcić tekst „ala ma psa” na „ALA MA PSA”, jaka funkcja PHP powinna być zastosowana?

A. ucfirst ('ala ma psa');
B. strtoupper('ala ma psa');
C. strstr ('ala ma psa');
D. strtolower('ala ma psa');
Funkcje strtolower, ucfirst oraz strstr nie są właściwe w kontekście przekształcania tekstu na wielkie litery. Funkcja strtolower('ala ma psa') konwertuje wszystkie litery w ciągu na małe litery. Gdyby ciąg już zawierał małe litery, użycie tej funkcji nie przyniosłoby pożądanych efektów. Przykładowo, jeśli przekazalibyśmy ciąg z już dużymi literami, wynikiem byłby ciąg z samymi małymi literami, co jest sprzeczne z zamierzonym celem. Funkcja ucfirst('ala ma psa') natomiast zmienia tylko pierwszą literę danego ciągu na wielką, pozostawiając resztę liter w oryginalnym stanie. Z tego powodu, po zastosowaniu tej funkcji wynik byłby 'Ala ma psa', co również nie odpowiada oczekiwanemu rezultatowi. Ostatnia funkcja, strstr, służy do wyszukiwania podciągów w danym ciągu. Jej zastosowanie w tym kontekście jest nieadekwatne, ponieważ nie dokonuje żadnej konwersji liter, a jedynie sprawdza, czy dany fragment tekstu występuje w ciągu. Dlatego, mimo że wszystkie funkcje mają swoje zastosowanie w PHP, żadna z nich nie spełnia wymaganego celu przekształcenia tekstu na wielkie litery w przypadku podanego przykładu.

Pytanie 15

Definicja stylu przedstawiona w języku CSS dotyczy odnośnika, który

Ilustracja do pytania
A. posiada niepoprawny adres URL
B. ma wskaźnik myszy ustawiony nad nim
C. jeszcze nie był odwiedzany
D. był już odwiedzany
Podczas analizy CSS ważne jest rozumienie, jak działają pseudo-klasy, które umożliwiają stylizację elementów w określonych stanach. Pseudo-klasa :hover odpowiada za stan, gdy kursor myszy znajduje się nad elementem, co pozwala na dynamiczne zmiany wyglądu, takie jak podświetlenie elementu. Jest to często używane do interaktywnych efektów w interfejsach użytkownika. Tymczasem :link dotyczy linków, które jeszcze nie zostały odwiedzone przez użytkownika. Wprawdzie pozwala to na odróżnienie ich od odwiedzonych linków, ale stylizacja :link nie może zmienić się po kliknięciu, co jest kluczowe dla zachowania dostępności. Błędny adres URL nie jest związany z żadną z tych pseudo-klas i nie można go zidentyfikować ani zmodyfikować za pomocą CSS, ponieważ zarządzanie adresami URL odbywa się na poziomie HTML i JavaScript. W kontekście tworzenia stron internetowych zrozumienie tych różnic jest kluczowe, ponieważ wpływa na sposób, w jaki użytkownicy wchodzą w interakcję z treścią. Błędy w rozumieniu tych mechanizmów prowadzą do niepoprawnej nawigacji i mogą negatywnie wpływać na doświadczenie użytkownika, co jest sprzeczne z dobrymi praktykami w projektowaniu interfejsów i UX. Ważne jest, aby projektować strony zgodnie ze standardami, które umożliwiają intuicyjne korzystanie i zapewniają, że użytkownicy łatwo mogą rozpoznać odwiedzone i nieodwiedzone linki, co jest kluczowe dla ich doświadczenia i nawigacji.

Pytanie 16

Jaką formę ma kolor przedstawiony w systemie szesnastkowym jako #11FE07 w formacie RGB?

A. rgb(17,254,7)
B. rgb(17,FE,7)
C. rgb(17,255,7)
D. rgb(11,127,7)
Wszystkie trzy niepoprawne odpowiedzi odzwierciedlają błędne konwersje wartości szesnastkowych na wartości dziesiętne w systemie RGB. Pierwsza z odpowiedzi sugeruje użycie rgb(17, FE, 7), co jest niepoprawne, ponieważ 'FE' nie zostało przekształcone na wartość dziesiętną. W systemie szesnastkowym 'FE' odpowiada wartości 254, więc ta odpowiedź nie oddaje prawidłowej wartości dla koloru. W drugiej odpowiedzi, rgb(11, 127, 7), również występuje nieprawidłowa konwersja - '11' powinno być 17, a '127' nie ma odpowiadającej wartości w kolorze #11FE07, ponieważ powinno to być 254. Ostatnia odpowiedź, rgb(17, 254, 7), jest bliska prawidłowej, ale nie jest uznawana za poprawną, co może budzić wątpliwości. Kluczowe w całym procesie jest zrozumienie, że każda para szesnastkowa musi być konwertowana na odpowiednią wartość dziesiętną, a błędne konwersje prowadzą do nieprawidłowych reprezentacji kolorów. Właściwe rozumienie i precyzyjne stosowanie konwersji jest fundamentalne w pracy z kolorami w różnych projektach graficznych.

Pytanie 17

W instrukcji warunkowej w JavaScript powinno się zweryfikować sytuację, w której zmienne a oraz b są większe od zera, przy czym zmienna b jest mniejsza od 100. Taki warunek należy zapisać w następujący sposób:

A. if ( a > 0 || (b > 0 && b < 100))
B. if ( a > 0 && b > 0 && b < 100)
C. if ( a > 0 && b > 0 || b > 100)
D. if ( a > 0 || b > 0 || b > 100)
W analizowanych odpowiedziach pojawia się kilka koncepcji, które nie spełniają wymagań dotyczących sprawdzenia warunków dla zmiennych a i b. Odpowiedź if ( a > 0 || b > 0 || b > 100) jest błędna, ponieważ użycie operatora OR (||) wskazuje, że wystarczy, aby przynajmniej jeden z warunków był spełniony. Taki zapis wpłynąłby na logikę programu, prowadząc do sytuacji, w której program uznałby, że warunki są spełnione, nawet jeśli b jest większe lub równe 100, co całkowicie ignoruje kluczowy wymóg dotyczący tej zmiennej. W drugiej analizowanej opcji, if ( a > 0 && b > 0 || b > 100), znowu mamy do czynienia z niewłaściwym połączeniem operatorów, które może prowadzić do błędnych wyników. Tu z kolei program będzie mógł uznać warunek za prawdziwy, jeśli b przekroczy 100, nawet jeżeli a i b nie są dodatnie, co narusza zasady logicznego myślenia. Argumenty w if ( a > 0 || (b > 0 && b < 100)) również nie są zgodne z wymaganiami, ponieważ zastosowanie operatora OR sprawia, że program uzna warunek za prawdziwy, jeżeli tylko a jest dodatnie, co nie jest zgodne z zasadą, że obie zmienne powinny spełniać warunki. Przykładowo, w kontekście aplikacji bankowej, takie niepoprawne sprawdzenie mogłoby prowadzić do nieautoryzowanych transakcji, co byłoby poważnym zagrożeniem dla bezpieczeństwa użytkowników.

Pytanie 18

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

A. zliczyć ilość dostępnych usług w tabeli
B. wyliczyć średnią arytmetyczną cen wszystkich usług
C. zsumować wartości kosztów wszystkich usług
D. określić najwyższą cenę usług
Podane odpowiedzi sugerują różne niepoprawne interpretacje funkcji agregującej AVG. Zsumowanie kosztów wszystkich usług jest zrozumiane jako działanie, które można zrealizować za pomocą funkcji SUM, a nie AVG. SUM dodaje wartości w danej kolumnie, natomiast AVG odnosi się do średniej, co jest zupełnie inną operacją. Z kolei wskazywanie najwyższej ceny za usługi sugeruje zastosowanie funkcji MAX, która zwraca najwyższą wartość w kolumnie, co również nie ma związku z funkcją AVG. Ponadto, odpowiedź dotycząca policzenia liczby dostępnych usług w tabeli odnosi się do funkcji COUNT, która zlicza wiersze w danej kolumnie lub całej tabeli. Typowe błędy myślowe, które prowadzą do takich nieprecyzyjnych odpowiedzi, często wynikają z mylenia terminologii SQL oraz z braku zrozumienia różnic między funkcjami agregującymi. W kontekście analizy danych, ważne jest, aby zrozumieć, jak każda z tych funkcji działa i jakie są ich odpowiednie zastosowania, ponieważ błędne użycie może prowadzić do nieprawidłowych wniosków oraz decyzji biznesowych. Dlatego kluczowe jest, aby przed zastosowaniem konkretnej funkcji dobrze przemyśleć, jakie dane chcemy uzyskać oraz jak je interpretować.

Pytanie 19

W jakim bloku powinien być umieszczony warunek pętli?

Ilustracja do pytania
A. Opcja D
B. Opcja B
C. Opcja A
D. Opcja C
Wybór innego bloku niż romb dla warunku pętli jest niezgodny z ogólnie przyjętymi standardami w modelowaniu procesów Rysunek schematu blokowego powinien wyraźnie przedstawiać logikę algorytmu aby zwiększyć jego przejrzystość i zrozumienie przez innych programistów lub analityków Wybór prostokąta jako bloku warunku jak w przypadku opcji A jest błędny ponieważ prostokąt jest typowo używany do reprezentacji operacji przetwarzania czyli bloków kodu które wykonują instrukcje bez decyzyjności Wybór elipsy z opcji B także jest nieodpowiedni ponieważ elipsa służy do oznaczania początku i końca procesu w schematach blokowych nie do przedstawiania warunków decyzyjnych Blok D jest symbolem dla danych wejściowych lub wyjściowych co nie ma związku z kontrolą przepływu w pętli Stosowanie nieodpowiednich symboli dla warunków decyzyjnych może prowadzić do błędnego zrozumienia i interpretacji schematu co w konsekwencji może wpłynąć na błąd w implementacji algorytmu Dlatego ważne jest aby stosować się do uznanych standardów i dobrych praktyk w modelowaniu procesów co ułatwia współpracę i komunikację w zespołach projektowych

Pytanie 20

W języku JavaScript zapis w ramce oznacza, że

x = przedmiot.nazwa();
A. nazwa jest cechą obiektu przedmiot
B. nazwa jest atrybutem klasy przedmiot
C. zmienna x będzie zawierać wynik działania metody nazwa
D. zmienna x będzie przechowywać wynik działania funkcji przedmiot
Wyrażenie x = przedmiot.nazwa(); w JavaScripcie dość często bywa mylnie interpretowane, bo miesza się pojęcia atrybutów, cech obiektu i metod. W składni obiektowej JavaScript zapis przedmiot.nazwa oznacza odwołanie się do własności o nazwie nazwa, należącej do obiektu przedmiot. Jeśli do tej własności przypisana jest funkcja, to mówimy o metodzie obiektu. Dopiero nawiasy okrągłe () po nazwie powodują wywołanie tej funkcji. To jest istotna różnica: sama kropka nie uruchamia żadnego kodu, tylko daje dostęp do pola lub metody. Stwierdzenie, że nazwa jest atrybutem klasy przedmiot, wprowadza w błąd z dwóch powodów. Po pierwsze, w klasycznym JavaScripcie pracujemy głównie na obiektach, a nie na „klasach” w sensie znanym z Javy czy C#. Słowo „class” pojawiło się w nowszej składni, ale nadal pod spodem działają prototypy. Po drugie, w kodzie z pytania mamy konkretny obiekt przedmiot, a nie definicję klasy, więc mówienie o „atrybucie klasy” jest tutaj nietrafione. Bardziej poprawnie jest mówić o własności obiektu albo metodzie obiektu. Druga mylna interpretacja to traktowanie nazwa jako „cechy” obiektu przedmiot. Gdyby to była zwykła cecha (np. tekst), zapis wyglądałby raczej tak: x = przedmiot.nazwa; bez nawiasów. Wtedy x dostałby wartość właściwości, np. string. Dodanie () jasno sugeruje, że nazwa jest funkcją, czyli metodą, a nie prostym polem danych. To jest częsty błąd: nieuwaga na nawiasy prowadzi do złego zrozumienia, co dokładnie robi kod. Równie mylące jest zdanie, że zmienna x będzie przechowywać wynik działania funkcji przedmiot. W tym zapisie przedmiot nie jest funkcją, tylko obiektem, na którym wywołujemy metodę nazwa(). Gdyby przedmiot był funkcją, wywołanie wyglądałoby przedmiot(), a nie przedmiot.nazwa(). Z mojego doświadczenia wynika, że uczniowie mieszają obiekty z funkcjami, bo w JS funkcja też jest typem danych i można ją przypisać do zmiennej. Dlatego warto mocno utrwalić: obiekt.metoda() – wywołujesz metodę obiektu, funkcja() – wywołujesz funkcję przypisaną bezpośrednio do zmiennej. Podsumowując, poprawne rozumienie tego zapisu opiera się na zauważeniu dwóch rzeczy: przedmiot jest obiektem, nazwa jest metodą tego obiektu, a nawiasy oznaczają wywołanie metody, której wynik dopiero jest przypisywany do x. Pomyłki wynikają zwykle z ignorowania nawiasów lub z nieodróżniania własności (pól) od metod, co jest podstawą programowania obiektowego w JavaScripcie.

Pytanie 21

Którą funkcję z menu Kolory programu GIMP użyto, w celu uzyskania efektu przedstawionego w filmie?

A. Barwienie.
B. Progowanie.
C. Inwersja.
D. Krzywe.
Wiele osób myli w GIMP-ie różne narzędzia z menu Kolory, bo na pierwszy rzut oka kilka z nich „mocno zmienia” obraz. Jednak efekt pokazany na filmie, gdzie obraz staje się dwuwartościowy (czarno-biały, bez półtonów), jest typowym działaniem funkcji Progowanie. Kluczowe jest tu zrozumienie, czym różnią się od siebie dostępne operacje. Krzywe służą do zaawansowanej korekcji tonalnej i kontrastu. Można nimi mocno przyciemnić lub rozjaśnić wybrane zakresy jasności, robić tzw. efekt kontrastu „S”, korygować prześwietlenia itd. Ale nawet przy bardzo agresywnych ustawieniach krzywych obraz nadal zawiera półtony – pojawiają się stopniowe przejścia między odcieniami, a nie ostre odcięcie na zasadzie czarne/białe. To świetne narzędzie do retuszu zdjęć, ale nie do uzyskania efektu progowania. Inwersja (Kolory → Inwersja) po prostu odwraca wartości kolorów lub jasności: jasne staje się ciemne, czerwony zmienia się na cyjan, zielony na magentę itd. To jak negatyw fotograficzny. Struktura szczegółów pozostaje identyczna, zmienia się tylko ich „biegun”. Nie pojawia się żadne odcięcie progowe, więc obraz wciąż ma pełne spektrum odcieni. W praktyce inwersja przydaje się np. przy przygotowaniu masek lub pracy z materiałami skanowanymi, ale nie generuje typowego, „plakatowego” efektu czerni i bieli jak progowanie. Barwienie z kolei (Kolory → Barwienie) służy do nadania całemu obrazowi jednolitego odcienia, zwykle po wcześniejszym sprowadzeniu go do skali szarości. Można w ten sposób uzyskać np. sepię, niebieski ton nocny albo dowolny kolorystyczny „filtr”. Jasność i kontrast lokalny pozostają bardzo podobne, zmienia się dominująca barwa. To zupełnie inna kategoria operacji niż progowanie, które pracuje na poziomie progów jasności, a nie na poziomie koloru. Typowym błędem jest patrzenie tylko na to, że „obraz bardzo się zmienił” i przypisywanie tego narzędziom takim jak krzywe czy inwersja. W pracy z grafiką warto zawsze zadać sobie pytanie: czy efekt polega na zmianie rozkładu jasności, na odwróceniu kolorów, czy na twardym podziale na dwa poziomy? Jeśli widzisz brak półtonów i ostre granice, praktycznie zawsze chodzi o progowanie, które zostało wskazane jako poprawna funkcja.

Pytanie 22

W języku PHP predefiniowana zmienna $_SESSION przechowuje

A. listę zarejestrowanych sesji na serwerze WWW
B. zmienne przesyłane do skryptu przez formularz
C. zmienne zarejestrowane w aktualnej sesji
D. zmienne przesyłane do skryptu przy pomocy ciastek (cookie)
Zrozumienie działania zmiennej $_SESSION jest kluczowe w kontekście zarządzania stanem aplikacji webowych. Wiele osób mylnie utożsamia $_SESSION z innymi mechanizmami takimi jak ciasteczka czy formularze, co prowadzi do nieporozumień. Ciasteczka, czyli małe pliki przechowywane na komputerze użytkownika, są używane do przechowywania danych po stronie klienta, a więc różnią się od $_SESSION, która działa po stronie serwera. Odpowiedzi sugerujące, że $_SESSION zawiera spis zarejestrowanych sesji na serwerze WWW są również błędne, ponieważ ta zmienna przechowuje dane tylko dla konkretnej sesji użytkownika, a nie dla wszystkich użytkowników. Ponadto zmienne przesyłane do skryptu za pomocą formularza są dostępne w superglobalnej tablicy $_POST lub $_GET, a nie w $_SESSION. Typowym błędem myślowym jest utożsamianie sesji z innymi mechanizmami przechowywania danych, co może prowadzić do nieefektywnego kodowania i problemów z bezpieczeństwem. Kluczowym elementem jest zrozumienie, że $_SESSION jest dedykowana do przechowywania danych sesji w trakcie interakcji użytkownika z aplikacją, a nie do zarządzania innymi formami danych przesyłanych przez użytkownika.

Pytanie 23

Aby stworzyć relację jeden do wielu, w tabeli po stronie wiele, co należy zdefiniować?

A. klucz obcy wskazujący na klucz obcy tabeli po stronie jeden
B. klucz podstawowy wskazujący na klucz podstawowy tabeli po stronie jeden
C. klucz sztuczny odnoszący się do kluczy podstawowych obu tabel
D. klucz obcy wskazujący na klucz podstawowy tabeli po stronie jeden
W kontekście relacji jeden do wielu w bazach danych, każda z podanych niepoprawnych opcji wprowadza w błąd odnośnie do zasady funkcjonowania kluczy obcych i ich roli w modelowaniu danych. Klucz obcy wskazujący na klucz obcy tabeli po stronie jeden jest konceptualnie błędny, ponieważ klucz obcy zawsze odnosi się do klucza podstawowego innej tabeli, a nie do innego klucza obcego. Taki układ narusza zasady referencyjności i integralności danych, co może prowadzić do trudności w utrzymaniu spójności w bazie. Kolejną niepoprawną opcją jest klucz sztuczny odnoszący się do kluczy podstawowych obu tabel. Klucze sztuczne, choć mogą być użyteczne w pewnych kontekstach, nie powinny być używane jako sposób tworzenia relacji, ponieważ nie odzwierciedlają naturalnych powiązań między danymi. Klucz podstawowy wskazujący na klucz podstawowy tabeli po stronie jeden również jest mylny, ponieważ w relacji jeden do wielu klucz podstawowy tabeli 'jeden' musi być referencjonowany przez klucz obcy w tabeli 'wiele', a nie odwrotnie. Te nieporozumienia mogą prowadzić do błędów projektowych w bazach danych, co w efekcie utrudnia ich rozwój i zarządzanie, szczególnie w dużych systemach, gdzie spójność danych jest kluczowa dla funkcjonowania aplikacji.

Pytanie 24

Jaki typ mechanizmu zapewnienia bezpieczeństwa podczas uruchamiania aplikacji jest zawarty w środowisku .NET Framework?

A. Mechanizm wykonywania aplikacji dla bibliotek klas
B. Mechanizm wykonywania aplikacji realizowany przez funkcję Windows API (Application Programming Interface)
C. Mechanizm wykonywania aplikacji realizowany przez frameworki aplikacji webowych (ASP.NET)
D. Mechanizm wykonywania aplikacji oparty na uprawnieniach kodu (CAS - Code Access Security) oraz na rolach (RBS - Role-Based Security)
Mechanizmy bezpieczeństwa w .NET Framework obejmują różne podejścia, ale odpowiedzi odnoszące się do frameworków aplikacji internetowych, bibliotek klas czy funkcji Windows API nie są stosowane jako główne metody kontroli bezpieczeństwa aplikacji. Frameworki aplikacji internetowych, takie jak ASP.NET, zapewniają pewne funkcjonalności bezpieczeństwa, ale nie są one mechanizmami kontroli dostępu samodzielnie. Kluczowym błędem jest mylenie frameworków z mechanizmami bezpieczeństwa; same frameworki to zestawy narzędzi do budowy aplikacji, które mogą implementować różne mechanizmy, ale bezpieczeństwo nie jest ich jedyną funkcją. Z kolei mechanizmy dla bibliotek klas wiążą się głównie z udostępnianiem kodu i zarządzaniem jego użyciem, a nie z jego bezpieczeństwem. Co więcej, odwoływanie się do funkcji Windows API jako mechanizmu wykonywania aplikacji jest mylące, ponieważ API to zestaw funkcji umożliwiających interakcję z systemem operacyjnym, a nie środowisko uruchomieniowe. Rozumienie różnicy między tymi pojęciami jest istotne, aby nie wprowadzać się w błąd co do zabezpieczeń aplikacji i ich implementacji. Prawidłowe podejście do bezpieczeństwa wymaga znajomości zarówno standardów, jak i najlepszych praktyk związanych z zarządzaniem uprawnieniami oraz monitorowaniem dostępu, co jest kluczowe w kontekście tworzenia trudnych do przełamania aplikacji.

Pytanie 25

Instrukcja w języku SQL GRANT ALL PRIVILEGES ON klienci TO pracownik

A. przeniesie uprawnienia z grupy klienci do użytkownika pracownik
B. przyznaje uprawnienie grupie klienci dla tabeli pracownik
C. przyznaje wszystkie uprawnienia do tabeli klienci użytkownikowi pracownik
D. cofa wszystkie uprawnienia pracownikowi do tabeli klienci
Wybór odpowiedzi, która nie odpowiada na pytanie, zazwyczaj wynika z błędnych założeń dotyczących działania polecenia GRANT w SQL. Odpowiedź, która sugeruje, że polecenie skopiuje uprawnienia z grupy klienci na użytkownika pracownik, jest błędna, ponieważ GRANT nie działa na zasadzie kopiowania uprawnień, ale bezpośrednio przydziela określone uprawnienia do wskazanego obiektu. W SQL nie istnieje konstrukcja, która automatycznie przenosi uprawnienia z jednej grupy na inny użytkownik, co czyni to zrozumienie niewłaściwym. Inną nieprawidłową koncepcją jest myślenie, że komenda nadaje uprawnienia grupie klienci do tabeli pracownik. To zrozumienie myli pojęcie grupy z użytkownikiem, co jest podstawowym błędem w interpretacji polecenia SQL. Ostatnia wskazana odpowiedź, która sugeruje, że odbiera wszystkie uprawnienia pracownikowi do tabeli klienci, jest również błędna, ponieważ polecenie GRANT nie jest używane do odbierania uprawnień, a do ich przydzielania. Powoduje to nieporozumienia co do funkcji i zastosowania polecenia w kontekście zarządzania dostępem do danych. Aby poprawnie zrozumieć te koncepcje, ważne jest, aby zapoznać się z dokumentacją SQL oraz najlepszymi praktykami zarządzania uprawnieniami, co przyczyni się do efektywnego i bezpiecznego zarządzania danymi w bazach danych.

Pytanie 26

Zmienna o typie integer lub int jest w stanie przechowywać

A. liczbę rzeczywistą
B. znak
C. łańcuch znaków
D. liczbę całkowitą
Odpowiedzi niepoprawne wskazują na mylne zrozumienie typów danych oraz ich zastosowania w programowaniu. Zmienna typu znakowego, która może przechowywać pojedynczy znak, nie jest odpowiednia dla wartości całkowitych, ponieważ nie reprezentuje liczby, lecz symbol. Przechowywanie znaków wymaga innego podejścia, które obejmuje typy danych takie jak char. Z kolei ciąg znaków, reprezentujący zestaw znaków, również nie nadaje się do przechowywania liczb całkowitych. Takie podejście prowadzi do nieporozumień dotyczących zarządzania danymi, ponieważ programy operujące na ciągach muszą konwertować te wartości do formatu liczbowego przed przeprowadzeniem kalkulacji, co wprowadza dodatkowe komplikacje i obniża wydajność. Ponadto, zmienne typu liczba rzeczywista, takie jak float czy double, są używane do przechowywania wartości z częścią dziesiętną, co również nie pasuje do definicji zmiennej integer, która ma na celu wyłącznie reprezentację liczb całkowitych. Tego typu pomyłki mogą wynikać z niepełnego zrozumienia struktury danych oraz podstawowych koncepcji programowania, co podkreśla znaczenie solidnej edukacji w zakresie typów danych i ich zastosowań w praktyce. Właściwe dobieranie typów danych jest kluczowe dla efektywności aplikacji oraz unikania błędów podczas ich działania.

Pytanie 27

Po uruchomieniu poniższego kodu PHP na ekranie ukaże się bieżąca data w formacie:

echo date("Y-m");
A. dzień, miesiąc, rok
B. rok oraz miesiąc
C. dzień oraz rok
D. tylko 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 28

W HTML-u, aby połączyć w poziomie dwie sąsiednie komórki w danym wierszu tabeli, należy wykorzystać atrybut

A. rowspan
B. cellpadding
C. cellspacing
D. colspan
Atrybut colspan w języku HTML jest kluczowym narzędziem do scalania komórek w tabeli w poziomie. Umożliwia on połączenie dwóch lub więcej sąsiednich komórek w jednym wierszu, co pozwala na bardziej elastyczne i estetyczne układanie danych. Przykładowo, jeśli mamy tabelę z informacjami o produktach, a jeden z produktów ma długą nazwę, możemy użyć atrybutu colspan, aby ta nazwa zajmowała miejsce w dwóch lub więcej komórkach, co poprawia czytelność tabeli. Dobre praktyki w projektowaniu tabel wskazują, że należy unikać nadmiarowych komórek i skomplikowanych układów, gdyż obniża to przejrzystość danych. Zamiast tego, właściwe użycie atrybutów takich jak colspan pozwala na lepsze zorganizowanie informacji. Warto również pamiętać, że poprawne stosowanie atrybutu colspan powinno być zgodne z ogólnymi zasadami projektowania responsywnego, co oznacza, że tabela powinna dobrze się prezentować na różnych urządzeniach. Dodatkowo, atrybut colspan ma swoje zastosowanie także w kontekście dostępności, gdyż odpowiednie użycie tej funkcji pozwala na lepszą nawigację i zrozumienie struktury tabeli przez osoby korzystające z technologii asystujących.

Pytanie 29

Zdefiniowana jest tabela o nazwie wycieczki z atrybutami nazwa, cena oraz miejsca (jako liczba dostępnych miejsc). Aby wyświetlić jedynie nazwy tych wycieczek, dla których cena jest mniejsza niż 2000 złotych i które mają co najmniej cztery wolne miejsca, należy użyć zapytania

A. SELECT nazwa FROM wycieczki WHERE cena<2000 OR miejsca>4;
B. SELECT nazwa FROM wycieczki WHERE cena<2000 AND miejsca>3;
C. SELECT * FROM wycieczki WHERE cena<2000 OR miejsca>3;
D. SELECT * FROM wycieczki WHERE cena<2000 AND miejsca>4;
Przyglądając się pozostałym odpowiedziom, można zauważyć, że nie spełniają one wymagań stawianych przez pytanie, co czyni je błędnymi. Pierwsza z nich zawiera operator OR, co oznacza, że przynajmniej jeden z warunków musi być spełniony. W związku z tym, możliwe jest uzyskanie wyników, w których cena jest niższa niż 2000 zł, ale liczba wolnych miejsc wynosi tylko 4 lub mniej, co nie odpowiada wymogowi przynajmniej czterech wolnych miejsc. Dodatkowo, operator AND przed warunkiem miejsc >4 jest niewłaściwy, ponieważ nie zapewnia, że liczba wolnych miejsc będzie co najmniej cztery. Trzecia odpowiedź z kolei wykorzystuje operator * w klauzuli SELECT, co powoduje, że zwrócone zostaną wszystkie kolumny tabeli wycieczki zamiast tylko nazw. Ostatecznie, ostatnia odpowiedź również błędnie używa operatora OR zamiast AND, co prowadzi do sytuacji, w której system może zwrócić wycieczki z ceną powyżej 2000 zł, jeśli chociaż jedno z kryteriów jest spełnione, co nie jest zgodne z zamiarem użytkownika. Te błędy ilustrują istotę precyzyjnego formułowania zapytań SQL, aby uzyskać dokładne i zgodne z wymaganiami wyniki.

Pytanie 30

W HTML znacznik tekst będzie wyświetlany przez przeglądarkę w taki sam sposób jak znacznik

A. <big>tekst</big>
B. <b>tekst</b>
C. <sub>tekst</sub>
D. <h1>tekst</h1>
Znacznik <sub> służy do wyświetlania tekstu jako dolny indeks, co oznacza, że jego zastosowanie jest całkowicie inne niż w przypadku <strong> i <b>. Dolny indeks jest często używany w kontekście chemii lub matematyki, gdzie wyrażenia muszą być prezentowane w sposób zrozumiały dla specjalistów, co nie ma związku z semantyką wyróżnienia tekstu. Podobnie, <big> zmienia rozmiar tekstu, jednak nie nadaje mu żadnej dodatkowej wartości semantycznej. Użycie <big> w celu wyróżnienia tekstu jest nieefektywne, ponieważ nie przekazuje żadnej konkretnej informacji o znaczeniu tekstu. Znacznik <h1> oznacza nagłówek najwyższego poziomu, co jest całkowicie innym zastosowaniem niż w przypadku <strong>. Zastosowanie <h1> dla tekstu, który nie jest nagłówkiem, może wprowadzać w błąd zarówno użytkowników, jak i wyszukiwarki, co jest sprzeczne z zasadami SEO. Typowe błędy myślowe prowadzące do tych błędnych wyborów to nieodróżnianie semantyki od stylizacji wizualnej oraz brak zrozumienia, jak znaczniki HTML wpływają na dostępność i interpretację treści przez maszyny. Warto zaznaczyć, że stosowanie semantycznych znaczników HTML w odpowiedni sposób jest kluczowe dla tworzenia dostępnych i zrozumiałych stron internetowych.

Pytanie 31

Jakie zapytanie SQL będzie odpowiednie do odnalezienia w podanej tabeli tylko imion oraz nazwisk pacjentów, którzy przyszli na świat przed rokiem 2002?

Ilustracja do pytania
A. SELECT * FROM Pacjenci WHERE rok_urodzenia <= 2002
B. SELECT imie, nazwisko FROM Pacjenci WHERE data_ostatniej_wizyty < 2002
C. SELECT * FROM Pacjenci WHERE rok_urodzenia LIKE 2002
D. SELECT imie, nazwisko FROM Pacjenci WHERE rok_urodzenia < 2002
W tym zapytaniu zastosowałeś składnię SELECT imie, nazwisko FROM Pacjenci WHERE rok_urodzenia < 2002, co jest super, bo pozwala wyciągnąć tylko te imiona i nazwiska pacjentów, którzy urodzili się przed rokiem 2002. Użycie konkretnych kolumn jak imie i nazwisko zamiast znaku * to niezła sprawa, bo ogranicza wyniki do tego, co naprawdę potrzebujesz. To z kolei może znacząco zwiększyć wydajność przesyłania danych. No i to WHERE rok_urodzenia < 2002 – świetny ruch! Fajnie, że potrafisz filtrować dane według konkretnego warunku. Bez tego miałbyś wszystkie osoby, nie tylko te sprzed 2002 roku. To jest właśnie selekcja warunkowa w SQL, a jej znajomość to podstawa przy analizie danych. Zgadzam się również, że uniknięcie znaków wieloznacznych jak LIKE w tej sytuacji to dobre podejście, bo używasz bezpośrednich porównań liczbowych, co generalnie działa lepiej i daje jaśniejsze wyniki.

Pytanie 32

W HTML atrybut alt elementu img służy do określenia

A. parametrów grafiki, takich jak wymiary, ramka, wyrównanie
B. treści, która zostanie pokazana, gdy grafika nie może być załadowana
C. lokalizacji i nazwy pliku źródłowego grafiki
D. opisu, który pojawi się pod grafiką
Atrybut <b>alt</b> znacznika <b>img</b> w języku HTML jest niezwykle istotnym elementem, który ma na celu zapewnienie dostępności treści wizualnych dla użytkowników. Gdy obrazek nie może zostać załadowany (np. z powodu problemów z siecią lub błędnej ścieżki do pliku), tekst zawarty w atrybucie <b>alt</b> zostaje wyświetlony zamiast obrazu. W praktyce oznacza to, że osoba korzystająca z technologii asystujących, takich jak czytniki ekranu, będzie miała możliwość zrozumienia, co miało się pojawić w danym miejscu na stronie. Zgodnie z wytycznymi WCAG (Web Content Accessibility Guidelines), stosowanie atrybutu <b>alt</b> jest kluczowe dla zapewnienia dostępności stron internetowych. Przykładem może być sytuacja, w której na stronie internetowej znajduje się obrazek przedstawiający produkt. Atrybut <b>alt</b> powinien zawierać opis tego produktu, co pozwoli użytkownikom, którzy nie widzą obrazu, zrozumieć jego znaczenie. Prawidłowe użycie atrybutu <b>alt</b> nie tylko poprawia dostępność, ale także może wpłynąć na SEO strony, ponieważ wyszukiwarki traktują ten atrybut jako dodatkowy kontekst dla treści wizualnych.

Pytanie 33

Z przedstawionych tabel Artykuly i Autorzy należy wybrać jedynie nazwiska autorów i tytuły ich artykułów, które zostały ocenione na 5. Kwerenda wybierająca te dane ma postać

Ilustracja do pytania
A. SELECT nazwisko, tytul FROM autorzy, artykuly WHERE ocena == 5;
B. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id;
C. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = artykuly.id;
D. SELECT nazwisko, tytul FROM autorzy JOIN artykuly ON autorzy.id = autorzy_id WHERE ocena = 5;
Zdaje się, że doszło do pewnej pomyłki. Wszystkie niepoprawne odpowiedzi zawierają błędy w zapytaniach SQL. Niektóre z nich łączą tabele 'autorzy' i 'artykuly' za pomocą niewłaściwych kolumn, co prowadzi do błędnych wyników. W zapytaniach SQL, łączenie tabel powinno odbywać się za pomocą odpowiednich kluczy obcych i głównych, aby zapewnić integralność danych. Inne zapytania pomijają warunek 'WHERE ocena = 5', co skutkuje wyświetleniem wszystkich artykułów, niezależnie od ich oceny. Pamiętaj, że filtr 'WHERE' jest kluczowym elementem zapytań SQL, pozwalającym na wyświetlanie tylko tych rekordów, które spełniają określone kryteria. W przypadku tego pytania, chcemy wybrać tylko te artykuły, które mają ocenę 5. Proszę upewnij się, że zrozumiałeś zasady pisania zapytań SQL, gdyż są one istotne w analizie i manipulacji danych.

Pytanie 34

Które spośród poniższych zdań dotyczących definicji funkcji umieszczonej w ramce jest prawidłowe?

function czytajImie(){
var imie=null;
do{
imie=prompt("podaj imie: ");
if(imie.length<3) alert("wprowadzony tekst jest niepoprawny");
}while(imie.length<3);
}
A. Wczytywanie tekstu zakończy się, gdy tekst będzie się składał przynajmniej z 3 znaków
B. Tekst będzie odczytywany do chwili, gdy podana zostanie liczba większa niż 3
C. Funkcja zawiera pętlę, która powtarza się 3 razy
D. Pętla wykona się tylko jeden raz
Prawidłowa odpowiedź odnosi się do warunku zakończenia pętli do while w języku JavaScript. Pętla ta wykonuje się co najmniej raz, ponieważ najpierw wykonuje blok kodu, a dopiero potem sprawdza warunek. W tym przypadku, użytkownik jest proszony o wprowadzenie tekstu reprezentującego imię. Instrukcja if sprawdza, czy wprowadzone imię ma mniej niż 3 znaki. Jeśli tak, pojawia się komunikat, że tekst jest nieprawidłowy, a pętla ponownie prosi o podanie imienia. Proces ten powtarza się, dopóki użytkownik nie wprowadzi imienia o długości co najmniej 3 znaków. Jest to typowa technika walidacji danych wejściowych, zapewniająca, że użytkownik wprowadzi wartości spełniające określone kryteria. Taki sposób walidacji jest stosowany w aplikacjach wymagających dokładności danych wejściowych, zwłaszcza w formularzach internetowych, gdzie poprawność danych jest kluczowa. Praktyka ta pomaga w zapewnieniu, że dane są kompletne i zgodne z wymaganiami biznesowymi, co jest istotne w programowaniu front-end.

Pytanie 35

Jakiego języka skryptowego ogólnego zastosowania powinno się użyć do tworzenia aplikacji internetowych, które są zintegrowane z HTML i działają na serwerze?

A. C#
B. PHP
C. JavaScript
D. Perl
PHP (Hypertext Preprocessor) to język skryptowy ogólnego przeznaczenia, który został zaprojektowany do tworzenia dynamicznych stron internetowych, co czyni go idealnym rozwiązaniem do budowy aplikacji webowych. Jako język uruchamiany po stronie serwera, PHP generuje HTML, który jest następnie przesyłany do przeglądarki użytkownika, co pozwala na interakcję z bazami danych, sesjami użytkowników i innymi elementami. Dzięki bogatej bibliotece funkcji oraz rozbudowanej społeczności, PHP jest często wykorzystywany w aplikacjach takich jak WordPress, Drupal czy Joomla. Ponadto, PHP wspiera różnorodne bazy danych, w tym MySQL, co umożliwia tworzenie zaawansowanych aplikacji zintegrowanych z danymi. Przykładem dobrych praktyk w PHP jest stosowanie wzorców projektowych, takich jak MVC (Model-View-Controller), które zwiększają czytelność i modularność kodu. Dzięki temu, programiści mogą łatwiej utrzymywać i rozwijać aplikacje, co jest kluczowe w dynamicznie zmieniającym się świecie technologii webowych.

Pytanie 36

W wyniku wykonania przedstawionego poniżej kodu JavaScript zmienna x ma wartość:

<script>
    var x = 10;
    x++;
    console.log(x);
</script>
A. 10 i zostanie wypisana w dokumencie HTML.
B. 11 i zostanie wypisana w konsoli przeglądarki internetowej.
C. 11 i zostanie wypisana w oknie pop-up.
D. 10 i zostanie wypisana w głównym oknie przeglądarki internetowej.
Kod w ramce to prosty przykład operacji na zmiennej i użycia konsoli w JavaScript: <script> var x = 10; x++; console.log(x); </script> Najpierw deklarowana jest zmienna `x` z użyciem słowa kluczowego `var` i przypisana jest do niej wartość 10. Następnie operator `x++` to tzw. inkrementacja postfiksowa – zwiększa wartość zmiennej `x` o 1. Po wykonaniu tej instrukcji `x` nie jest już równe 10, tylko 11. Ostatnia linia `console.log(x);` wypisuje aktualną wartość zmiennej do konsoli deweloperskiej przeglądarki, a nie do okna strony czy do popupu. Z mojego doświadczenia w pracy z JavaScript, `console.log()` to podstawowe narzędzie debugowania. W praktyce, gdy testujesz np. działanie pętli, obsługę formularzy, komunikację AJAX czy manipulację DOM, bardzo często wypisujesz dane właśnie do konsoli, żeby nie zaśmiecać interfejsu użytkownika. To jest zgodne z dobrymi praktykami front-endu: logi techniczne trafiają do konsoli, a nie do użytkownika końcowego. Warto też zauważyć różnicę między `x++` i `++x`. W tym konkretnym kodzie nie ma znaczenia, bo wartość jest tylko zwiększana i potem logowana, ale w wyrażeniach z przypisaniem kolejność ma już znaczenie. Operator `++` jest typowym elementem składni wielu języków (C, C++, Java, JavaScript), więc dobrze go rozumieć. W nowoczesnym kodzie częściej używa się `let` lub `const` zamiast `var`, ale mechanizm inkrementacji i logowania do konsoli pozostaje taki sam. Podsumowując: po inkrementacji `x` ma wartość 11 i ta wartość jest wyświetlana w konsoli przeglądarki przez `console.log()` – dokładnie tak, jak wskazuje poprawna odpowiedź.

Pytanie 37

Który z poniższych formatów plików graficznych wspiera przejrzystość?

A. JPG
B. NEF
C. PNG
D. BMP
Format PNG (Portable Network Graphics) jest jednym z najpopularniejszych formatów plików graficznych obsługujących przezroczystość. Jego główną zaletą jest możliwość zachowania kanału alfa, który umożliwia tworzenie obrazów z przezroczystymi elementami. PNG wykorzystuje bezstratną kompresję, co oznacza, że jakość obrazu nie ulega pogorszeniu podczas zapisywania i otwierania pliku. Format ten jest szczególnie ceniony w aplikacjach internetowych, ponieważ pozwala na uzyskanie estetycznych efektów, takich jak cienie, przezroczystość i delikatne przejścia kolorów. Warto również zauważyć, że PNG obsługuje głębię kolorów do 48 bitów, co umożliwia uzyskanie bogatych i szczegółowych obrazów. Standard PNG został opracowany w 1996 roku jako alternatywa dla formatu GIF, który był ograniczony do 256 kolorów oraz nie obsługiwał przezroczystości w sposób, który byłby zadowalający dla projektantów. Dzięki swoim właściwościom, PNG jest szeroko stosowany w grafice komputerowej, w tym w tworzeniu logo, ikon oraz w elementach interfejsów użytkownika, a także w fotografii cyfrowej, gdzie zachowanie jakości jest kluczowe.

Pytanie 38

Która z podanych funkcji w języku PHP zwraca sumę połowy wartości a oraz połowy wartości b?

A. function licz($a,$b){return $a/2+$b/2; }
B. function licz($a,$b){return 2/$a+2/$b; }
C. function licz($a,$b){return $a/2+$b; }
D. function licz($a,$b){return ($a/2+$b)/2; }
Poprawna odpowiedź to funkcja, która zwraca sumę połowy wartości a oraz połowy wartości b. W przypadku wybranej odpowiedzi, funkcja 'licz($a, $b)' oblicza zarówno $a/2, jak i $b/2, a następnie sumuje te dwie wartości, co jest zgodne z wymaganym działaniem. Przykładowo, dla $a=4 i $b=6, obliczenia wyglądają następująco: (4/2) + (6/2) = 2 + 3 = 5. Tego rodzaju operacje są powszechnie stosowane w programowaniu, zwłaszcza w kontekście obliczeń matematycznych. Zrozumienie, jak dzielić wartości i następnie je sumować, jest kluczowe w wielu aplikacjach, które wymagają przetwarzania danych liczbowych, jak na przykład w analizach statystycznych czy w algorytmach optymalizacyjnych. Warto dążyć do pisania funkcji, które są nie tylko poprawne, ale również przejrzyste i łatwe do zrozumienia, co jest zgodne z najlepszymi praktykami w programowaniu, takimi jak zasada KISS (Keep It Simple, Stupid).

Pytanie 39

Która z komend w języku JavaScript pozwala na zmianę koloru tekstu na niebieski w akapicie określonym w pliku HTML?

A. document.getElementById("jeden").background-color = "blue";
B. document.getElementById("jeden").style.background-color = "blue";
C. document.getElementById("jeden").style.color = "blue";
D. document.getElementById("jeden").color = "blue";
Twoja odpowiedź document.getElementById("jeden").style.color = "blue" jest jak najbardziej trafna. Tu wykorzystujesz metodę document.getElementById, co pozwala na dotarcie do konkretnego elementu HTML, który ma identyfikator "jeden". To akurat odnosi się do tego akapitu <p id="jeden">. Później, używając właściwości style.color, zmieniasz kolor tekstu tego elementu na niebieski. To całkiem standardowy sposób, żeby dynamicznie zmieniać style CSS za pomocą JavaScript. W interaktywnych aplikacjach internetowych tak się często robi, bo zmiany kolorów na stronie są potrzebne, kiedy użytkownik klika w różne rzeczy. Na przykład, w takich aplikacjach zmiany kolorów elementów w odpowiedzi na działania użytkowników są mega ważne. Właściwie, korzystanie z metod DOM (Document Object Model) w taki sposób jest kluczowe dla tworzenia interaktywnych i responsywnych interfejsów, co jest bardzo istotne przy budowaniu stron internetowych.

Pytanie 40

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

A. em
B. px
C. pt
D. in
Poprawna jest jednostka „em”, bo w CSS jest to jednostka względna, która odnosi się do aktualnego rozmiaru czcionki elementu. Mówiąc prościej: 1em to 100% bieżącego font-size. Jeśli na przykład dla body ustawisz font-size: 16px, to 1em w środku body będzie równe 16px, 2em to 32px, 0.75em to 12px itd. Co ważne, w wielu projektach stosuje się em właśnie po to, żeby interfejs był elastyczny i skalował się razem z tekstem. Dzięki temu, gdy użytkownik zwiększy rozmiar czcionki w przeglądarce, odstępy, marginesy czy wcięcia oparte na em też się proporcjonalnie zmienią. To jest zgodne z dobrymi praktykami dostępności (WCAG) i ogólnie z nowoczesnym podejściem do RWD. Moim zdaniem em jest szczególnie wygodne do definiowania np. paddingów i line-height w komponentach, które mają być spójne wizualnie niezależnie od miejsca użycia. Na przykład: przycisk może mieć font-size: 1rem, padding: 0.5em 1em; wtedy gdy zmienisz rozmiar tekstu w tym przycisku, jego wewnętrzne odstępy automatycznie się dostosują. To dość eleganckie i bardzo często spotykane w profesjonalnych arkuszach stylów. W odróżnieniu od jednostek absolutnych, takich jak px, pt czy in, em zawsze patrzy na kontekst – czyli na bieżący element lub jego rodzica, w zależności od właściwości. W efekcie projekt jest bardziej responsywny, a kod CSS łatwiej utrzymać i ponownie wykorzystać w różnych miejscach serwisu.