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: 18 maja 2025 20:06
  • Data zakończenia: 18 maja 2025 20:40

Egzamin zdany!

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

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Jakie polecenie należy zastosować, aby wysłać dane przy pomocy funkcji mysqli_query() w skrypcie PHP, który dodaje informacje z formularza umieszczonego na stronie internetowej do bazy danych?

A. INSERT INTO
B. UPDATE
C. ALTER
D. SELECT
Odpowiedź 'INSERT INTO' jest poprawna, ponieważ jest to standardowa kwerenda SQL używana do wstawiania nowych rekordów do tabel w bazie danych. W kontekście PHP i funkcji mysqli_query(), wstawianie danych z formularza zazwyczaj obejmuje przygotowanie kwerendy, która zawiera instrukcję INSERT INTO wraz z nazwą tabeli oraz danymi, które mają zostać dodane. Na przykład, jeśli mamy formularz z polami 'imie' i 'nazwisko', kwerenda mogłaby wyglądać następująco: 'INSERT INTO uzytkownicy (imie, nazwisko) VALUES (?, ?)'. Użycie znaków zapytania (?) jest zgodne z najlepszymi praktykami, ponieważ pozwala na bezpieczne wprowadzenie danych, chroniąc aplikację przed atakami SQL Injection. Dobrą praktyką jest również używanie PDO lub MySQLi z przygotowanymi zapytaniami, co zwiększa bezpieczeństwo oraz efektywność kodu. W ten sposób można skutecznie wstawiać dane do bazy danych, zachowując przy tym standardy programistyczne.

Pytanie 2

Instrukcja SQL przedstawiona w formie graficznej

ALTER TABLE 'miasta'
ADD 'kod' text;

A. w tabeli miasta zmienia nazwę kolumny kod na nazwę text
B. dodaje do tabeli kolumnę o nazwie kod typu text
C. zmienia nazwę tabeli miasta na nazwę kod
D. wprowadza do tabeli dwie kolumny o nazwach: kod i text
Polecenie ALTER TABLE w SQL to naprawdę przydatne narzędzie, które pozwala na modyfikowanie struktury tabeli w bazie danych. W Twoim przypadku dodajesz nową kolumnę o nazwie 'kod' typu text do tabeli 'miasta'. To słowo kluczowe ADD oznacza, że chcemy coś dorzucić do tej tabeli. Typ text jest fajny, bo jest używany do przechowywania różnych dłuższych tekstów, co sprawia, że idealnie nadaje się do takich danych jak opisy czy kody pocztowe. Pamiętaj, że przed robieniem zmian w tabelach warto pomyśleć, jak to wpłynie na całe działanie aplikacji i procesów w firmie. Na przykład, jeśli musisz przechować dodatkowe info o miastach, jak właśnie kody pocztowe, to dodanie tego jest super pomysłem. Znajomość ALTER TABLE jest mega przydatna w zarządzaniu bazami danych, bo pozwala na elastyczne dostosowanie tabel do zmieniających się potrzeb. To naprawdę może zwiększyć efektywność systemu, jeśli dobrze to ogarniesz.

Pytanie 3

Dla dowolnego a z przedziału (0, 99) zadaniem funkcji zapisanej w języku JavaScript jest

function fun1(a)
{
    for (n = a; n <= 100; n++)
        document.write(n);
    return n;
}

A. wypisanie liczb z przedziału a .. 100 i zwrócenie wartości zmiennej n
B. wypisanie wartości zmiennej a oraz zwrócenie wartości zmiennej n
C. zwrócenie liczb z przedziału a .. 99
D. wypisanie liczb z przedziału a .. 99 i zwrócenie wartości 100
Twoja odpowiedź jest poprawna. Funkcja fun1(a) w języku JavaScript przyjmuje argument a i za pomocą pętli for wypisuje liczby od a do 100 włącznie - a więc pętla jest iterowana tyle razy, ile wynosi różnica między 100 a wartością argumentu a. Po każdej iteracji pętli, wartość zmiennej n jest zwiększana o 1, co jest typowym zachowaniem dla pętli for w JavaScript. Funkcja zwraca wartość zmiennej n po zakończeniu pętli. Tak więc funkcja zwraca 101, ponieważ to właśnie wartość o 1 większa niż warunek kończący pętlę (100) spowoduje jej zakończenie. Ta funkcja to przykładowe zastosowanie pętli for w JavaScript, pokazujące praktyczne zastosowanie tego elementu składni. Pętla for jest standardem w branży i jest powszechnie stosowana do iterowania przez elementy tablicy, obiekty, liczby i inne struktury danych.

Pytanie 4

W aplikacjach webowych tablice asocjacyjne to struktury, w których

A. w każdej komórce tablicy znajduje się inna tablica
B. posiadają co najmniej dwa wymiary
C. elementy tablicy zawsze są indeksowane od 0
D. indeks ma postać łańcucha znakowego
W kontekście tablic asocjacyjnych, nie jest prawdą, że muszą one mieć przynajmniej dwa wymiary. Tablice asocjacyjne są zazwyczaj jednowymiarowe, gdzie każdy klucz odnosi się do jednej wartości. Możliwe jest oczywiście zagnieżdżanie tablic asocjacyjnych, tworząc struktury wielowymiarowe, ale sama definicja tablicy asocjacyjnej nie wymaga tego. Dodatkowo, stwierdzenie, że elementy tablicy są zawsze indeksowane od 0, odnosi się głównie do tradycyjnych tablic indeksowanych liczbami całkowitymi, gdzie pierwszy element ma indeks 0. W przypadku tablic asocjacyjnych, klucze mogą być dowolnymi łańcuchami tekstowymi, co oznacza, że nie ma jednolitego sposobu indeksowania. Ostatnia niepoprawna odpowiedź sugeruje, że każda komórka tablicy przechowuje inną tablicę, co jest mylące. W rzeczywistości, w tablicach asocjacyjnych każda komórka może przechowywać dowolny typ danych, w tym liczby, łańcuchy tekstowe, obiekty czy inne tablice. Ostatecznie, w tablicach asocjacyjnych klucze są używane do dostępu do wartości, a nie do indeksowania jak w tradycyjnych tablicach.

Pytanie 5

Która operacja nie wpłynie na wielkość zajmowanej pamięci przez plik graficzny?

A. Modyfikacja rozdzielczości obrazu
B. Zmiana rozmiaru obrazu z użyciem atrybutów HTML
C. Kompresja
D. Interpolacja
Zmiana rozdzielczości obrazu, interpolacja oraz kompresja to operacje, które w istotny sposób wpływają na rozmiar pliku graficznego, co często jest mylone z ich funkcjami wizualnymi. Zmiana rozdzielczości obrazu to proces, w którym liczba pikseli w obrazie jest modyfikowana, co prowadzi do mniejszej lub większej ilości danych do zapisania w pliku. Na przykład, zmniejszenie rozdzielczości z 300 DPI do 72 DPI znacząco redukuje rozmiar pliku, ponieważ zmniejsza liczbę informacji, które muszą być zapisane. Interpolacja natomiast jest techniką, która służy do obliczania wartości pikseli w nowych rozmiarach obrazu. W tym procesie generowane są nowe piksele, co często skutkuje zwiększeniem rozmiaru pliku, jeśli obraz jest powiększany. Kompresja to kolejny kluczowy element wpływający na rozmiar pliku. Kompresja stratna i bezstratna zmieniają sposób, w jaki dane obrazów są przechowywane, co może znacznie obniżyć wagę pliku. Typowe błędy myślowe związane z tymi operacjami polegają na założeniu, że manipulacje na poziomie wyświetlania nie mają wpływu na rzeczywiste parametry pliku graficznego. Ważne jest, aby zrozumieć, że każda z tych operacji ma swoje zastosowanie i wpływ na jakość oraz rozmiar pliku, co powinno być starannie rozważane podczas pracy z grafiką.

Pytanie 6

Wskazana jest tabela ocen zawierająca kolumny id, nazwisko, imię oraz ocena. Przykładowe zapytanie ilustruje

Ilustracja do pytania
A. łączenie.
B. rekurencję.
C. sumę.
D. selekcję.
Zapytanie SQL przedstawione w pytaniu jest przykładem selekcji ponieważ wykorzystuje klauzulę WHERE do filtrowania danych. Selekcja w kontekście baz danych oznacza wybieranie konkretnych wierszy z tabeli które spełniają określone kryteria. W tym przypadku kryterium to ocena większa niż 2. Takie podejście jest bardzo powszechne i użyteczne w analizie danych pozwalając na uzyskanie tylko istotnych informacji spośród dużych zbiorów danych. Klauzula WHERE jest jednym z podstawowych narzędzi SQL wykorzystywanym w praktycznie każdym systemie zarządzania bazami danych jak MySQL PostgreSQL czy Oracle. Umożliwia ona tworzenie elastycznych i złożonych zapytań które mogą zawierać różnorodne warunki logiczne takie jak porównania czy wyrażenia regularne. Dobre praktyki w zakresie projektowania baz danych zalecają używanie selekcji do ograniczania ilości przetwarzanych danych co zwiększa wydajność systemów. Zrozumienie mechanizmu selekcji jest kluczowe dla skutecznego zarządzania i optymalizacji baz danych szczególnie w projektach o dużej skali.

Pytanie 7

Grafika, która ma być umieszczona na stronie, powinna mieć przezroczyste tło. Jakim formatem graficznym powinien być zapisany taki plik?

A. PNG
B. CDR
C. JPEG
D. BMP
Format PNG (Portable Network Graphics) jest szczególnie ceniony w kontekście grafiki internetowej, ponieważ obsługuje przezroczystość, co czyni go idealnym wyborem dla obrazów, które wymagają tła transparentnego. Przezroczystość w formacie PNG jest realizowana poprzez zastosowanie kanału alfa, co pozwala na uzyskanie różnorodnych efektów wizualnych, takich jak cienie, gradienty czy delikatne przejścia między kolorami. Przykłady zastosowania to ikony, logo, grafiki na stronach internetowych, które muszą harmonizować z różnymi kolorami tła. W przeciwieństwie do formatów takich jak JPEG, który nie obsługuje przezroczystości i używa kompresji stratnej, PNG oferuje kompresję bezstratną, co oznacza, że jakość obrazu nie ulega pogorszeniu po zapisaniu. W kontekście praktyk webowych, użycie PNG jest zgodne z zaleceniami dotyczącymi optymalizacji obrazów w sieci, co przyczynia się do szybszego ładowania stron i lepszej jakości wizualnej.

Pytanie 8

W języku JavaScript zapis ```x = przedmiot.nazwa();``` oznacza, że

A. zmienna x będzie przechowywać wynik działania funkcji przedmiot.
B. nazwa jest właściwością obiektu przedmiot.
C. zmienna x będzie przechowywać wynik działania metody nazwa.
D. nazwa jest polem klasy przedmiot.
Twoja odpowiedź jest poprawna. W języku JavaScript, zapis 'x = przedmiot.nazwa();' oznacza wywołanie metody 'nazwa' na obiekcie 'przedmiot' i przypisanie zwróconego przez nią wyniku do zmiennej 'x'. Metoda to funkcja zdefiniowana w kontekście obiektu. Ten zapis jest stosowany, gdy chcesz wykonać określone działanie na obiekcie i przechować wynik dla dalszego użycia. Jest to zgodne ze standardami i dobrymi praktykami JavaScript, które zalecają wykorzystywanie metod obiektów do manipulacji ich stanem. Dzięki temu, kod jest bardziej zorganizowany, czytelny i łatwiejszy do utrzymania.

Pytanie 9

Kiedy zakończy się wykonanie poniższego fragmentu kodu w języku C/C++, do zmiennej zwanej zmienna2 zostanie przypisane:

...
int zmienna1 = 158;
int *zmienna2 = &zmienna1;

A. przypisany adres zmiennej o nazwie zmienna1
B. przypisana ta sama wartość, co przechowywana w zmienna1
C. przypisana zamieniona na łańcuch wartość przechowywana w zmienna1
D. przypisana liczba w kodzie binarnym odpowiadająca wartości przechowywanej w zmienna1
Wskaźniki w językach C/C++ są jednymi z fundamentalnych koncepcji, które pozwalają na efektywne zarządzanie pamięcią oraz manipulację danymi na niskim poziomie. Błędne rozumienie przypisania wskaźników może prowadzić do nieporozumień. Kiedy przypisujemy zmienną typu wskaźnikowego, jak w int *zmienna2 = &zmienna1, przypisywany jest adres, a nie wartość. Odpowiedzi sugerujące przypisanie bezpośredniej wartości, jej binarnej reprezentacji lub konwersji do łańcucha są niepoprawne, ponieważ ignorują działanie operatora '&' oraz specyfikę wskaźników. Operator '&' zawsze zwraca adres pamięci, co umożliwia wskaźnikowi przechowywanie tego adresu. Pomijanie tego faktu jest częstym błędem, wynikającym z braku zrozumienia mechanizmów pamięci i wskaźników. Zrozumienie różnicy między wskaźnikiem a zwykłą zmienną jest kluczowe. Wskaźniki nie przechowują wartości zmiennych, lecz ich adresy, co pozwala na manipulację danymi w ich oryginalnym miejscu w pamięci. Ignorowanie tego aspektu prowadzi do logicznych błędów w programach i potencjalnych problemów z zarządzaniem pamięcią.

Pytanie 10

Która z wymienionych grup znaczników HTML zawiera elementy przeznaczone do grupowania oraz tworzenia struktury dokumentu?

A. div, article, header
B. table, tr, td
C. span, strong, em
D. br, img, hr
Odpowiedź 'div, article, header' jest poprawna, ponieważ te znaczniki HTML są kluczowymi elementami umożliwiającymi grupowanie i organizację treści w dokumentach webowych. Znacznik 'div' jest uniwersalnym kontenerem, który można wykorzystać do grupowania innych elementów w celu lepszej strukturyzacji strony. 'article' jest przeznaczony do oznaczania niezależnych fragmentów treści, takich jak posty na blogach, które mogą być samodzielnie dystrybuowane. Z kolei 'header' zazwyczaj zawiera nagłówki i elementy wprowadzające dla sekcji strony. Zastosowanie tych znaczników zgodnie z wytycznymi W3C sprzyja poprawnej hierarchii dokumentu, co z kolei zwiększa użyteczność strony oraz jej dostępność dla technologii asystujących. Przykładowo, użycie 'article' pozwala wyszukiwarkom i czytnikom ekranu lepiej zrozumieć strukturę treści, co może pozytywnie wpłynąć na SEO oraz doświadczenia użytkowników.

Pytanie 11

W systemie baz danych wykonano następujące operacje dotyczące uprawnień użytkownika adam: GRANT ALL PRIVILEGES ON klienci To adam REVOKE SELECT, INSERT, UPDATE ON klienci FROM adam. Jakie prawa będzie miał użytkownik adam po zrealizowaniu tych operacji?

A. tworzenia tabeli klienci oraz wprowadzania do niej danych
B. usunięcia tabeli lub jej danych
C. aktualizowania danych oraz przeglądania tabeli klienci
D. przeglądania tabeli klienci i dodawania do niej rekordów
Użytkownik adam po wykonaniu poleceń GRANT i REVOKE nie będzie miał wszystkich przywilejów na tabeli klienci, co wymaga szczegółowej analizy. Gdy polecenie GRANT ALL PRIVILEGES ON klienci TO adam zostało wykonane, użytkownik zyskał pełne prawa do tabeli klienci, w tym usuwania, aktualizowania, wstawiania, a także przeglądania danych. Następnie, polecenie REVOKE SELECT, INSERT, UPDATE ON klienci FROM adam odebrało mu możliwość przeglądania (SELECT), wstawiania (INSERT) oraz aktualizowania (UPDATE) danych w tej tabeli. Jednakże, usunięcie (DELETE) nie zostało wymienione w poleceniu REVOKE, co oznacza, że użytkownik adam wciąż ma prawo do usunięcia rekordów w tabeli klienci. To zjawisko jest zgodne z zasadami zarządzania uprawnieniami w systemach baz danych SQL, gdzie uprawnienia mogą być przyznawane i odbierane niezależnie, co pozwala na precyzyjne zarządzanie dostępem do danych. W praktyce, sytuacja ta może prowadzić do niebezpieczeństw związanych z bezpieczeństwem danych, dlatego ważne jest, aby administratorzy baz danych dokładnie analizowali przyznawane i odbierane uprawnienia.

Pytanie 12

W bazie danych księgarni znajduje się tabela ksiazki, która zawiera pola: id, idAutor, tytul, ileSprzedanych, oraz tabela autorzy z polami: id, imie, nazwisko. Jak można utworzyć raport sprzedanych książek zawierający tytuły oraz nazwiska autorów?

A. konieczne jest stworzenie kwerendy, która wyszukuje tytuły książek
B. należy zdefiniować relację 1..1 pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
C. trzeba utworzyć dwie oddzielne kwerendy: pierwsza do wyszukiwania tytułów książek, druga do wyszukiwania nazwisk autorów
D. należy zdefiniować relację l..n pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
Jak się przyjrzysz innym odpowiedziom, to zauważysz, że zdefiniowanie relacji 1..1 dla tabel 'ksiazki' i 'autorzy' to trochę nieporozumienie. Takie założenie sugeruje, że każdy autor mógłby napisać tylko jedną książkę, co jest mało prawdopodobne w rzeczywistości. Przecież jeden autor może mieć na swoim koncie wiele tytułów, więc prawidłowa relacja to l..n. Kwerenda, która tylko wyszukuje tytuły książek, nie bierze pod uwagę autorów, co sprawia, że nie dostajemy pełnych informacji o książkach. Dwie osobne kwerendy na tytuły i nazwiska autorów to jakieś nieporozumienie – jest to nieefektywne i nie pozwala na zebranie wyników w jednej, sensownej formie. Często w takich sytuacjach ludzie mylą się, bo nie rozumieją zasad relacyjnych baz danych i nie mają dobrego podejścia do projektowania schematu. To prowadzi później do problemów z zarządzaniem danymi i ich analizą.

Pytanie 13

W formularzu wartości z pola input o typie number zostały przypisane do zmiennej a, a następnie przetworzone w skrypcie JavaScript w sposób następujący: ```var x = parseInt(a);``` Jakiego typu będzie zmienna x?

A. zmiennoprzecinkowego
B. Nan
C. liczbowego, całkowitego
D. napisowego
Zmienna x, przypisana w wyniku zastosowania funkcji parseInt na zmiennej a, będzie typu liczbowego, całkowitego. Funkcja parseInt jest używana w JavaScript do konwersji wartości na liczbę całkowitą. Jeśli a jest wartością wprowadzoną przez użytkownika w polu input o typie number, to parseInt(a) zwróci wartość liczbową, eliminując wszelkie znaki niebędące cyframi. Wartością return będzie liczba całkowita, ponieważ parseInt zwraca tylko całkowite części liczb. Wartością zwróconą będzie NaN, jeśli a nie zawiera żadnych cyfr, co w tym kontekście nie ma miejsca, zakładając, że użytkownik wprowadził poprawne dane. Przykład: jeśli użytkownik wprowadzi '42.5', to parseInt('42.5') zwróci 42, eliminując część dziesiętną. Warto zaznaczyć, że parseInt może przyjąć drugi argument, który określa system liczbowy (bazę), w jakim liczba ma być interpretowana, co jest zgodne z wytycznymi ECMAScript. Poznanie możliwości i ograniczeń funkcji parseInt jest kluczowe w pracy z danymi liczbowymi w JavaScript, szczególnie w kontekście walidacji danych wejściowych.

Pytanie 14

Przedstawiona jest tabela pracownicy, w której umieszczono rekordy widoczne obok. Jaką wartość zwróci wykonanie umieszczonej w ramce kwerendy SQL?

SELECT MAX(pensja) FROM pracownicy WHERE pensja < 3000;
idimienazwiskopensja
1AnnaKowalska3400
2MonikaNowak1300
3EwelinaNowakowska2600
4AnnaPrzybylska4600
5MariaKowal2200
6EwaNowacka5400

A. 5400
B. 2200
C. 1300
D. 2600
Kwerenda SQL SELECT MAX(pensja) FROM pracownicy WHERE pensja < 3000; służy do znalezienia maksymalnej wartości w kolumnie pensja z rekordów spełniających warunek pensja mniejsza niż 3000. Przeszukując tabelę pracownicy widzimy że wartości spełniające ten warunek to 1300 2600 i 2200. Najwyższą z tych wartości jest 2600 co czyni tę odpowiedź poprawną. Zrozumienie tego typu kwerend SQL jest kluczowe w pracy z bazami danych ponieważ pozwala na wyciąganie konkretnych informacji z dużych zbiorów danych. W praktyce takie zapytania mogą być używane do analizowania danych pracowniczych w firmach gdzie na przykład chcemy zidentyfikować pracowników z wynagrodzeniem poniżej określonego progu. Jest to zgodne z dobrymi praktykami w branży gdzie używa się agregacji danych do celów analitycznych. Zrozumienie jak działa funkcja MAX() w połączeniu z klauzulą WHERE umożliwia efektywne filtrowanie i przetwarzanie danych co jest niezbędne w wielu aplikacjach biznesowych.

Pytanie 15

Które ze znaczników HTML umożliwią wyświetlenie na stronie tekstu w jednym wierszu, jeżeli żadne formatowanie CSS nie zostało zdefiniowane?

Dobre strony mojej strony

A. Dobre stronymojej strony
B.

Dobre strony

mojej strony

C.
Dobre strony
mojej strony
D.

Dobre strony

mojej strony

Gratulacje, Twoja odpowiedź jest prawidłowa. Wybrałeś znacznik , który jest znacznikiem liniowym w HTML. Znaczniki liniowe nie zaczynają nowego wiersza po swoim zakończeniu, co oznacza, że tekst zawarty w kolejnych znacznikach będzie wyświetlany w jednym wierszu, o ile nie zdefiniowano inaczej za pomocą CSS. Jest to bardzo ważne, kiedy chcemy utworzyć strukturę strony, która nie zależy od domyślnych formatowań. Przykładowo, używając , możemy skonstruować skomplikowane layouty, które są niemożliwe do osiągnięcia za pomocą samych znaczników blokowych. Pamiętaj jednak, że odpowiednie stosowanie znaczników liniowych i blokowych jest ważnym elementem tworzenia semantycznie poprawnych stron internetowych, co może pomóc w poprawie SEO i dostępności Twojej strony.

Pytanie 16

Jak określa się element, który został oznaczony znakiem zapytania w strukturze platformy .NET, a który pozwala na tworzenie indywidualnych aplikacji z wykorzystaniem frameworków oraz na przekształcanie kompilowanego kodu pośredniego na kod maszynowy procesora znajdującego się w komputerze?

Ilustracja do pytania
A. Biblioteka klas bazowych (BCL)
B. Wspólne środowisko programistyczne (CLP)
C. Wspólne środowisko uruchomieniowe (CLR)
D. Infrastruktura językowa (CLI)
Wspólne środowisko uruchomieniowe (CLR) jest kluczowym komponentem platformy .NET, który odpowiada za zarządzanie wykonywaniem programów napisanych w różnych językach programowania. CLR działa jako wirtualna maszyna i umożliwia uruchamianie aplikacji poprzez kompilację kodu pośredniego (CIL) do kodu maszynowego właściwego dla danego procesora. Jednym z głównych zadań CLR jest zarządzanie pamięcią, w tym automatyczne zarządzanie zasobami oraz usuwanie nieużywanych obiektów za pomocą mechanizmu garbage collection. Ponadto CLR zapewnia bezpieczeństwo typów i izolację, co pozwala na lepszą kontrolę nad integralnością aplikacji. Dzięki takiemu podejściu, deweloperzy mogą skupić się na logice aplikacyjnej, nie martwiąc się o niskopoziomowe szczegóły związane z zarządzaniem pamięcią. CLR wspiera także interoperacyjność między różnymi językami, co oznacza, że komponenty napisane w jednym języku mogą być używane w aplikacjach napisanych w innym języku, co zwiększa elastyczność i możliwości wielokrotnego użycia kodu. Dzięki CLR deweloperzy mogą tworzyć stabilne i wydajne aplikacje w sposób efektywny i zgodny z nowoczesnymi standardami programistycznymi.

Pytanie 17

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. 0 razy
B. 10 razy
C. 11 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 18

Hermetyzacja to zasada programowania obiektowego, która wskazuje, że

A. klasy i obiekty mogą mieć zdefiniowane metody wirtualne, które są realizowane w klasach lub obiektach pochodnych.
B. typy pól w klasach i obiektach mogą być zmieniane dynamicznie w zależności od przypisywanych danych.
C. pola oraz metody, które są używane wyłącznie przez daną klasę lub obiekt, są ograniczane zasięgiem private lub protected.
D. klasy i obiekty mogą dzielić się funkcjonalnością.
Pierwsza z zaproponowanych odpowiedzi, dotycząca współdzielenia funkcjonalności przez klasy i obiekty, odnosi się bardziej do dziedziczenia i polimorfizmu, a nie hermetyzacji. W programowaniu obiektowym, dziedziczenie pozwala klasom na wykorzystanie metod i właściwości innych klas, co nie jest bezpośrednio związane z hermetyzacją, która koncentruje się na ograniczaniu dostępu do wewnętrznych komponentów obiektu. Kolejna odpowiedź, mówiąca o metodach wirtualnych, dotyczy koncepcji polimorfizmu, gdzie klasy dziedziczą po sobie i mogą nadpisywać metody. Choć jest to istotny element programowania obiektowego, nie ma związku z hermetyzacją, która skupia się na prywatności danych wewnętrznych. Ostatnia odpowiedź, dotycząca dynamicznej zmiany typów pól w klasach, odnosi się do dynamicznego typowania, co również nie jest związane z hermetyzacją. Hermetyzacja koncentruje się na bezpieczeństwie i izolacji danych, a zmiana typów pól dotyczy raczej sposobu przechowywania danych i ich przetwarzania w czasie działania programu. Te niepoprawne odpowiedzi pokazują różnorodność koncepcji w programowaniu obiektowym, ale żadna z nich nie odnosi się bezpośrednio do istoty hermetyzacji.

Pytanie 19

CAPTCHA to metoda zabezpieczeń stosowana na stronach WWW, która umożliwia

A. przyspieszenie logowania do aplikacji internetowej
B. potwierdzenie, że informacje z formularza są przesyłane przez człowieka
C. automatyczne wypełnienie formularza logowania danymi użytkownika
D. ominięcie procesu autoryzacji w aplikacji internetowej
CAPTCHA, czyli Completely Automated Public Turing test to tell Computers and Humans Apart, to technika zabezpieczeń powszechnie stosowana na stronach internetowych, której celem jest rozróżnienie użytkowników ludzkich od automatycznych programów (botów). Mechanizm ten działa poprzez prezentację wyzwań, które są trudne do rozwiązania przez maszyny, ale relatywnie proste dla ludzi. Przykłady obejmują rozpoznawanie tekstu zniekształconego w obrazach, wybieranie obrazków pasujących do podanych kategorii, czy rozwiązywanie prostych zagadek logicznych. CAPTCHA jest bardzo istotnym narzędziem w ochronie przed spamem, atakami typu brute-force oraz innymi formami nadużyć, które mogą zagrażać bezpieczeństwu aplikacji internetowych. Zastosowanie CAPTCHA stało się standardem w branży IT i jest szeroko wspierane przez organizacje, takie jak Google, które opracowały popularny reCAPTCHA, integrujący technologię uczenia maszynowego do dalszego poprawienia skuteczności i użyteczności testów. Wdrożenie CAPTCHA w formularzach rejestracyjnych czy logowania znacząco zwiększa poziom bezpieczeństwa, jednocześnie zmniejszając ryzyko nadużyć oraz ochroniając dane użytkowników.

Pytanie 20

Kolor określony kodem RGB, mający wartość rgb(255, 128, 16) w przedstawieniu szesnastkowym, przyjmie jaką wartość?

A. #ff8011
B. #ff8010
C. #ff0fl0
D. #008010
Alternatywne odpowiedzi mają kilka błędów, jeśli chodzi o kolory w formacie szesnastkowym. Pierwsza opcja, #008010, nie pasuje w ogóle do wartości RGB, które dostaliśmy w pytaniu. Nic tu nie łączy wartości rgb(255, 128, 16) z #008010. Druga opcja, #ff0fl0, ma błąd, bo zawiera nieprawidłowy znak 'l', który w ogóle nie powinien się tam znaleźć. To czyni ją zupełnie niepoprawną. Ostatnia odpowiedź, #ff8011, zmienia wartość niebieską z '10' na '11', co też psuje kolor. Takie pomyłki często zdarzają się, bo ludzie nie pamiętają lub nie znają podstaw konwersji kolorów. Dlatego dobrze jest znać te zasady i umieć sprawdzić, czy wartości są poprawne. W praktyce projektanci i programiści mogą korzystać z różnych narzędzi, jak palety kolorów, które ułatwiają ten proces i zmniejszają ryzyko błędów.

Pytanie 21

Z którego z pól klasy ```class Dane { public $a; private $b; protected $c; }``` będzie można uzyskać dostęp z zewnątrz przy użyciu obiektu stworzonego jako instancja tej klasy?

A. Do pola $b.
B. Do pola $c.
C. Do wszystkich pól.
D. Do pola $a.
Odpowiedź 'Do pola $a' jest prawidłowa, ponieważ pole $a jest zdefiniowane jako publiczne, co oznacza, że jest dostępne z zewnątrz dla instancji klasy oraz dla kodu, który jest poza tą klasą. W praktyce, gdy tworzysz obiekt klasy Dane, możesz łatwo uzyskać dostęp do tego pola, na przykład za pomocą $obiekt->a. Zastosowanie publicznych pól jest typowe, gdy chcesz, aby dane były szeroko dostępne, na przykład w interfejsach API lub podczas tworzenia prostych klas modelujących dane. W przypadku pól prywatnych oraz chronionych, dostęp do nich jest ograniczony. Pole $b jest prywatne, co oznacza, że może być używane tylko wewnątrz tej samej klasy, a pole $c, będące chronionym, może być używane przez klasę i jej podklasy, ale nie przez kod zewnętrzny. Warto zaznaczyć, że dobre praktyki programowania obiektowego sugerują ograniczanie dostępu do pól, co sprzyja enkapsulacji i ochronie integralności danych, a publiczne pola należy stosować z ostrożnością, aby nie naruszyć zasad projektowania systemów oprogramowania.

Pytanie 22

Jakie polecenie należy zastosować, aby utworzyć klucz obcy na wielu kolumnach przy tworzeniu tabeli?

A. CONSTRAINT (nazwisko, imie) FOREIGN KEY REFERENCES osoby (nazwisko, imie)
B. CONSTRAINT fk_osoba_uczen FOREIGN KEY ON(nazwisko, imie) REFERENCES osoby (nazwisko, imie)
C. CONSTRAINT (nazwisko, imie) FOREIGN REFERENCES KEY osoby (nazwisko, imie)
D. CONSTRAINT fk_soba_uczen FOREIGN KEY(nazwisko, imie) REFERENCES osoby (nazwisko, imie)
Odpowiedź "CONSTRAINT fk_soba_uczen FOREIGN KEY(nazwisko, imie) REFERENCES osoby (nazwisko, imie)" jest poprawna, ponieważ precyzyjnie definiuje klucz obcy składający się z dwóch kolumn: 'nazwisko' oraz 'imie'. W SQL, tworzenie klucza obcego na wielu kolumnach wymaga użycia słowa kluczowego 'FOREIGN KEY' w odpowiedniej składni. Użycie 'CONSTRAINT' pozwala na nadanie unikalnej nazwy dla tego ograniczenia, co jest dobrą praktyką, gdyż ułatwia późniejsze zarządzanie schematem bazy danych. Klucz obcy jest istotnym elementem w modelowaniu relacji między tabelami, zapewniając integralność danych i umożliwiając odniesienia do powiązanych rekordów. Na przykład, przy tworzeniu systemu do zarządzania szkołą, tabele 'uczniowie' i 'osoby' mogą być połączone, gdzie klucz obcy w tabeli 'uczniowie' wskazuje na unikalne rekordy w tabeli 'osoby' na podstawie ich nazwisk i imion. Używanie kluczy obcych wspiera relacyjny charakter baz danych i zapobiega wprowadzaniu danych, które są niezgodne z innymi tabelami.

Pytanie 23

Za pomocą zapytania SQL trzeba uzyskać z bazy danych nazwiska pracowników, którzy pełnią funkcję kierownika, a ich wynagrodzenie mieści się w przedziale jednostronnie domkniętym (3000, 4000>. Która klauzula sprawdza ten warunek?

A. WHERE kierownik = true AND pensja => 3000 OR pensja < 4000
B. WHERE kierownik = true AND pensja > 3000 AND pensja <= 4000
C. WHERE kierownik = true AND pensja => 3000 AND pensja <= 4000
D. WHERE kierownik = true OR pensja > 3000 OR pensja <= 4000
Odpowiedź WHERE kierownik = true AND pensja > 3000 AND pensja <= 4000 jest poprawna, ponieważ precyzyjnie definiuje warunki, które muszą być spełnione, aby zwrócić odpowiednich pracowników. Klauzula WHERE jest fundamentalnym elementem zapytań SQL, który pozwala na filtrację wyników na podstawie określonych kryteriów. W tym przypadku, warunek 'kierownik = true' zapewnia, że tylko pracownicy pełniący rolę kierowników zostaną uwzględnieni w wynikach. Dodatkowo, użycie operatorów porównania '>' oraz '<=' dla pensji umożliwia dokładne zdefiniowanie przedziału, w którym pensja musi się mieścić. W praktyce, w kontekście baz danych, taka filtracja pozwala na efektywne zarządzanie danymi oraz generowanie raportów zgodnych z wymaganiami analizy. Stosowanie tego typu warunków w zapytaniach SQL jest zgodne z najlepszymi praktykami, gdyż umożliwia precyzyjne i wydajne wyszukiwanie danych, co jest kluczowe w zarządzaniu informacjami w złożonych systemach bazodanowych.

Pytanie 24

W aplikacji PHP, która zarządza bazą danych, aby uzyskać numer błędu oraz jego opis po dokonaniu jakiejkolwiek operacji, jakie funkcje powinny być wykorzystane?

A. funkcje mysqli_error i mysqli_error_number
B. funkcje mysqli_error i mysqli_connect_errno
C. funkcje mysqli_error i mysqli_errno
D. tylko funkcję mysqli_error
Wybór funkcji mysqli_error i mysqli_connect_errno nie jest właściwy, ponieważ mysqli_connect_errno jest funkcją przeznaczoną do uzyskiwania numeru błędu połączenia z bazą danych, a nie błędu SQL. Użycie tej funkcji w kontekście operacji na bazie danych prowadzi do mylnego wniosku, że jej zastosowanie jest uniwersalne dla wszystkich błędów. W rzeczywistości, mysqli_connect_errno powinno być stosowane głównie podczas nawiązywania połączenia, natomiast dla błędów związanych z zapytaniami SQL właściwe są inne funkcje. Z kolei wskazanie tylko na funkcję mysqli_error nie jest wystarczające, ponieważ sama dostarcza jedynie opisu błędu, a nie jego numeru, co ogranicza możliwości analizy i diagnostyki. Użytkownicy często popełniają błąd myślowy, zakładając, że pojedyncza funkcja może spełnić wszystkie potrzeby związane z obsługą błędów. W prawidłowym procesie zarządzania błędami w programowaniu, kluczowe jest użycie zestawu funkcji, które dostarczają zarówno opisy, jak i kody błędów, co pozwala na bardziej wszechstronną reakcję na różne sytuacje awaryjne. Ignorowanie tej zasady może prowadzić do nieefektywnego debugowania i długotrwałych problemów w działaniu aplikacji.

Pytanie 25

W bazie danych sklepu internetowego, w tabeli klienci znajdują się m.in. pola całkowite: punkty, liczbaZakupow oraz pole ostatnieZakupy o typie DATE. Klauzula WHERE dla zapytania wybierającego klientów, którzy mają ponad 3000 punktów lub dokonali zakupów więcej niż 100 razy, a ich ostatnie zakupy miały miejsce co najmniej w roku 2022, przyjmuje postać

A. WHERE punkty > 3000 AND liczbaZakupow > 100 AND ostatnieZakupy >= '2022-01-01'
B. WHERE punkty > 3000 OR liczbaZakupow > 100 OR ostatnieZakupy >= '2022-01-01'
C. WHERE (punkty > 3000 OR liczbaZakupow > 100) AND ostatnieZakupy >= '2022-01'
D. WHERE punkty > 3000 AND liczbaZakupow > 100 OR ostatnieZakupy >= '2022-01-01'
Odpowiedź ta jest poprawna, ponieważ zastosowano w niej właściwą logikę warunków w klauzuli WHERE. Aby wybrać klientów, którzy spełniają co najmniej jeden z dwóch pierwszych warunków (posiadają więcej niż 3000 punktów lub wykonali więcej niż 100 zakupów), używamy operatora OR. Z kolei ostatni warunek, dotyczący daty ostatnich zakupów, musi łączyć się z poprzednimi za pomocą operatora AND. Oznacza to, że aby klient został uwzględniony w wynikach, musi spełniać przynajmniej jeden z warunków dotyczących punktów lub liczby zakupów, a równocześnie musi mieć ostatnie zakupy dokonane w roku 2022 lub później. Takie podejście jest zgodne z dobrymi praktykami w SQL, w których operator OR jest wykorzystywany do łączenia warunków alternatywnych, a AND do warunków koniecznych. Na przykład, jeśli chcemy analizować dane klientów w kontekście programów lojalnościowych, takie zapytanie pozwoliłoby nam na wyodrębnienie najbardziej aktywnych klientów, co może być przydatne przy planowaniu kampanii marketingowych.

Pytanie 26

Według zasad walidacji HTML5, jakie jest prawidłowe użycie znacznika hr?

A. </hr?>
B. <hr>
C. </ hr>
D. </ hr />
Znacznik
to taki prosty element w HTML5, który robi poziomą linię na stronie. Używa się go często do oddzielania różnych sekcji w tekście, co sprawia, że wszystko wygląda bardziej przejrzyście. Co ciekawe, to znacznik samodzielny, więc nie potrzebuje zamknięcia, a dodatkowo w HTML5 nie musimy dodawać znaku '/' na końcu, co czyni go lżejszym w użyciu. Jak użyjemy
, to przeglądarki wiedzą, co z tym zrobić, a to ważne, żeby strona wyglądała spójnie. Moim zdaniem, świetnie działa w artykułach, bo gdy oddziela różne części, to czytelnik łatwiej się w tym odnajduje. No i nie zapominajmy o dostępności – ludzie, którzy korzystają z technologii wspomagających, też lepiej zrozumieją, co się dzieje na stronie dzięki takim znacznikom.

Pytanie 27

W CSS wartości: underline, overline, blink są powiązane z atrybutem

A. font-weight
B. text-style
C. text-decoration
D. font-style
Atrybut text-style to w zasadzie fikcja w CSS, bo takiego czegoś po prostu nie ma w specyfikacji. Owszem, CSS daje nam różne opcje do stylizacji tekstu, ale text-style to nie jest jedna z nich. Lepiej skupić się na text-decoration, font-style czy font-weight, bo to już są realne właściwości. Na przykład, font-style pozwala wybrać styl czcionki, jak normal, italic albo oblique, ale nie zrobisz tym efektów dekoracyjnych, takich jak podkreślenie czy nadkreslenie. Z kolei font-weight dotyczy grubości czcionki, ale też nie ma nic wspólnego z dekoracją tekstu. Wartości, które tam znajdziesz, jak normal, bold czy bolder, odnoszą się raczej do samego kroju pisma. Więc jeśli chodzi o dekorację, to musisz używać text-decoration, bo to właśnie do tego zostało stworzone, a inne właściwości mają zupełnie inne zastosowania.

Pytanie 28

Wśród technik rozwiązywania problemów w przedsiębiorstwie znajdują się: ignorowanie, separacja, arbitraż oraz kompromis. Wskaż metodę, która szczególnie może być niebezpieczna i prowadzić do zaostrzenia konfliktu w firmie?

A. ignorowanie
B. separacja
C. kompromis
D. arbitraż
Odpowiedzią, która wskazuje na technikę szczególnie ryzykowną, jest ignorowanie. Ignorowanie problemów w firmie może prowadzić do ich eskalacji, ponieważ nie podejmowanie działań w sytuacjach konfliktowych często prowadzi do narastających napięć. Przykładowo, jeśli zespół projektowy ma niezgodności co do metodologii pracy, a kierownik postanowi to zignorować, różnice mogą się pogłębiać, prowadząc do braku współpracy i obniżenia morale. W praktyce, ignorowanie konfliktów jest jednym z najczęstszych błędów w zarządzaniu, co potwierdzają standardy zarządzania projektami, takie jak PMBOK, które zalecają aktywne podejście do rozwiązywania konfliktów. Ignorowanie problemów nie tylko wpływa na dynamikę zespołu, ale także może wpłynąć na wyniki finansowe organizacji, ponieważ niewłaściwe zarządzanie konfliktami może prowadzić do opóźnień w projektach oraz zwiększonych kosztów. Z tego względu kluczowe jest, aby menedżerowie i liderzy nie bagatelizowali konfliktów, lecz podejmowali działania w celu ich rozwiązania oraz wprowadzenia kultury otwartej komunikacji w zespole.

Pytanie 29

Znacznik

 
służy do prezentacji

A. znaku przekreślenia
B. znaku wielokropka
C. treści polską czcionką
D. treści czcionką o stałej szerokości

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Znacznik
 
jest używany w HTML do wyświetlania tekstu w formacie preformatowanym, co oznacza, że zawartość wewnątrz tego znacznika jest wyświetlana czcionką o stałej szerokości, gdzie wszystkie białe znaki, w tym spacje i nowe linie, są zachowywane tak, jak zostały wpisane. To sprawia, że jest on niezwykle przydatny przy prezentacji kodu źródłowego, skryptów oraz innych danych, gdzie zachowanie dokładnego formatowania jest kluczowe. Przykładem może być kod HTML, JavaScript czy CSS, który można umieścić wewnątrz znacznika
 w celu poprawienia czytelności i umożliwienia użytkownikom łatwego skopiowania. Ponadto, znaczniki 
 są często stosowane w dokumentacji technicznej, gdzie precyzyjne odwzorowanie formatowania jest istotne dla zrozumienia. Ważne jest również, aby zwrócić uwagę na to, że domyślnie tekst w elemencie 
 nie jest łamany, co pozwala zachować jego oryginalny kształt i układ.
                                    

Pytanie 30

Prostokątne zniekształcenia obrazu, które występują przy zapisie pliku graficznego, są typowe dla formatu

Ilustracja do pytania
A. BMP bez kompresji
B. JPEG z dużym stopniem kompresji stratnej
C. PNG z kompresją bezstratną LZ77
D. GIF z kompresją bezstratną LZW
Format JPEG jest powszechnie używany do kompresji obrazów fotograficznych z uwagi na jego zdolność do znacznego zmniejszania rozmiaru pliku przy zachowaniu akceptowalnej jakości obrazu. JPEG wykorzystuje kompresję stratną, opartą na odrzucaniu niektórych informacji wizualnych, które są mniej zauważalne dla ludzkiego oka. Przy wysokim stopniu kompresji, nadmierna utrata danych może prowadzić do wyraźnych zniekształceń obrazu, często w postaci prostokątnych artefaktów zwanych blokowaniem. Wynika to z podziału obrazu na bloki 8x8 pikseli, które są kompresowane niezależnie. W praktyce, JPEG jest szeroko stosowany w środowiskach, gdzie istotna jest oszczędność miejsca na dysku, na przykład w fotografiach internetowych czy archiwizacji zdjęć cyfrowych. Jednak dla profesjonalnej fotografii, gdzie jakość jest kluczowa, zaleca się zachowanie oryginalnych plików w formatach bezstratnych do dalszej edycji. Standard JPEG jest jednym z najważniejszych w branży graficznej i jest poparty międzynarodowymi standardami, takimi jak ISO/IEC 10918, co czyni go niezawodnym wyborem w wielu zastosowaniach komercyjnych.

Pytanie 31

Aby prawidłowo udokumentować linię kodu języka JavaScript, należy po znakach // wpisać komentarz

x = Math.max(a, b, c);  //

A. wybór losowej wartości ze zmiennych a, b i c
B. w zmiennej x maksymalna wartość ze zmiennych a, b, c
C. w zmiennej x minimalna wartość ze zmiennych a, b, c
D. nieprawidłowe dane.
Odpowiedź "w zmiennej x maksymalna wartość ze zmiennych a, b, c" jest poprawna, ponieważ odzwierciedla działanie funkcji Math.max() w języku JavaScript, która zwraca największą wartość spośród podanych argumentów. W kontekście tej linii kodu, przypisanie wartości do zmiennej x jest kluczowym elementem programowania, gdyż pozwala na dynamiczne ustalanie największej wartości zmiennych a, b i c w różnych scenariuszach. W praktyce, odpowiednia dokumentacja kodu, w tym komentarze, jest niezbędna do utrzymania czytelności i zrozumiałości kodu, zwłaszcza w większych projektach. Komentarze pomagają innym programistom (lub nawet samym autorom kodu w przyszłości) szybko zrozumieć, co dany fragment kodu robi. Używanie komentarzy w odpowiednich miejscach, szczególnie po operatorze "//", jest uznawane za dobrą praktykę w programowaniu. Dlatego ważne jest, aby jasno określić funkcję danej linii kodu, co czyni tę odpowiedź trafną.

Pytanie 32

Wskaż, które z poniższych zdań jest prawdziwe w odniesieniu do definicji stylu: ``````

A. Jest to styl zasięg lokalny
B. Akapit będzie przekształcany na małe litery
C. Odnośnik będzie napisany czcionką o rozmiarze 14 punktów
D. Zdefiniowano dwie klasy
Pierwsza odpowiedź sugeruje, że styl jest lokalny, ale tak naprawdę to nie jest do końca prawda. Definicje stylów w tym kodzie są globalne, więc nie możesz mówić o stylach lokalnych, które odnosiłyby się tylko do konkretnego elementu. Klasy w arkuszu stylów są dostępne w całym dokumencie, więc to są style globalne. Następna odpowiedź mówi, że akapit będzie transponowany na małe litery, co też nie jest prawdą, bo w CSS nie ma zdefiniowanej transformacji tekstu dla elementu P. Element A ma natomiast zastosowaną transformację, która zmienia tekst na małe litery, więc nie można tego przypisać do akapitu. Ostatnia błędna odpowiedź sugeruje, że odnośnik będzie miał czcionkę 14 punktów i to również jest mylne. W rzeczywistości odnośnik A ma czcionkę 16 punktów, co sprawia, że jest lepiej widoczny niż akapit. Wydaje mi się, że te błędne odpowiedzi wynikają z niepełnego zrozumienia, jak działają klasy CSS i jakie style można przypisać różnym elementom HTML.

Pytanie 33

Co należy zrobić, gdy rozmiar pliku graficznego jest zbyt duży do umieszczenia w Internecie?

A. dodać kanał alfa
B. zwiększyć jego głębię kolorów
C. zapisać w formacie BMP
D. zmniejszyć jego rozdzielczość
Zmniejszenie rozdzielczości pliku graficznego to jedna z najskuteczniejszych metod redukcji jego rozmiaru, co jest kluczowe przy publikacji w Internecie. Rozdzielczość odnosi się do ilości pikseli, które tworzą obraz, a jej zmniejszenie prowadzi do mniejszej ilości danych do przechowania. Przykładowo, zamiast publikować obraz o rozdzielczości 4000x3000 pikseli, można zmniejszyć go do 1920x1080, co drastycznie zmniejszy wielkość pliku bez zauważalnej utraty jakości wizualnej na ekranach komputera czy urządzeń mobilnych. Zmniejszenie rozdzielczości jest zgodne z najlepszymi praktykami w zakresie optymalizacji zasobów internetowych, w tym zasadami dotyczącymi czasu ładowania strony i wydajności. Dodatkowo, odpowiednia rozdzielczość może poprawić doświadczenia użytkowników, zmniejszając czas ładowania i zwiększając responsywność witryn. Warto również pamiętać o formatowaniu plików graficznych, gdzie JPEG jest często preferowanym formatem dla zdjęć, a PNG dla obrazów z przezroczystością. Stosowanie technologii takich jak responsywne obrazy również przyczynia się do efektywnej prezentacji graficznej w sieci, co ma kluczowe znaczenie w dzisiejszym świecie online.

Pytanie 34

Mamy do czynienia z tablicą o nazwie tab, która zawiera liczby całkowite różniące się od zera. Zawarty w języku PHP kod ma na celu:

foreach ($tab as &$liczba)
    $liczba = $liczba * (-1);
unset($liczba);

A. zmienić wszystkie elementy tablicy na liczby o przeciwnym znaku
B. obliczyć wartość bezwzględną elementów tej tablicy
C. przekształcić elementy tablicy na wartości zapisane w zmiennej liczba
D. wyliczenie iloczynu wszystkich wartości w tablicy
Analizując przedstawione odpowiedzi, ważne jest zrozumienie, dlaczego pozostałe opcje są nieprawidłowe w kontekście podanego kodu PHP. Pierwsza z nich sugeruje, że kod oblicza iloczyn wszystkich liczb w tablicy. Jednakże, kod ten nie prowadzi do żadnej operacji akumulacji wartości, nie jest stosowana zmienna do przechowywania wyniku, a operacja wykonywana w pętli to jedynie zmiana znaku każdej liczby. Druga odpowiedź, mimo że błędna jako wybór, w rzeczywistości jest poprawną odpowiedzią zgodnie z pytaniem egzaminacyjnym. Trzecia sugeruje, że elementy tablicy zostaną zastąpione wartością przechowywaną w zmiennej liczba. Kod, który by tego dokonywał, musiałby inicjalizować zmienną z konkretną wartością i przypisywać ją każdemu elementowi tablicy, co nie jest realizowane przez przedstawiony fragment kodu. Czwarta odpowiedź mówi o obliczaniu wartości bezwzględnej elementów tablicy. Aby to osiągnąć, w PHP należałoby użyć funkcji abs(), której tutaj nie zastosowano. Typowym błędem prowadzącym do takich niepoprawnych wniosków jest nieprawidłowe zrozumienie działania operatorów i funkcji w kontekście języka PHP. Kluczowe jest, aby rozumieć, że kod bezpośrednio modyfikuje wartości w tablicy przez mnożenie przez -1, a nie wykonuje żadnych innych operacji matematycznych czy przypisania wartości.

Pytanie 35

Algorytm przedstawiony dla tablicy n-elementowej ```t[n]``` ma na celu obliczenie sumy ```K1: i = 0; wynik = 0; K2: Dopóki i < n wykonuj K3 .. K4 K3: wynik ← wynik + t[i] K4: i ← i + 2 K5: wypisz wynik```

A. elementów tablicy, których wartości są nieparzyste.
B. n-elementów tablicy.
C. co drugi element tablicy.
D. wszystkie elementy tablicy.
Algorytm sumuje co drugi element tablicy. W kroku K2 warunek i < n kontroluje, że iteracje odbywają się w granicach tablicy, a w kroku K4 indeks i zwiększany jest o 2, co powoduje, że algorytm pomija elementy znajdujące się na indeksach nieparzystych. Algorytm nie sumuje wszystkich elementów tablicy ani tylko elementów o nieparzystych wartościach. Działanie algorytmu ogranicza się do sumowania elementów o indeksach parzystych, co oznacza, że oblicza sumę co drugiego elementu tablicy.

Pytanie 36

Jakie imiona spełniają warunki klauzuli LIKE w zapytaniu: ```SELECT imie FROM mieszkancy WHERE imie LIKE '_r%'; ```?

A. Krzysztof, Krystyna, Romuald
B. Gerald, Jarosław, Marek, Tamara
C. Arleta, Krzysztof, Krystyna, Tristan
D. Rafał, Rebeka, Renata, Roksana
Zapytanie SQL wykorzystuje klauzulę LIKE, która pozwala na wyszukiwanie wzorców w danych tekstowych. W tym przypadku wzór '_r%' oznacza, że szukamy imion, które mają na drugiej pozycji literę 'r' i mogą mieć dowolne znaki po tej literze. W analizowanych imionach, Arleta, Krzysztof, Krystyna oraz Tristan spełniają ten warunek, ponieważ: Arleta ma 'r' na drugiej pozycji, Krzysztof również, Krystyna także, a Tristan ma 'r' na drugiej pozycji. Przykład użycia klauzuli LIKE jest szczególnie przydatny w systemach, gdzie często zachodzi potrzeba filtrowania danych tekstowych na podstawie określonych wzorców. W praktyce, stosowanie klauzuli LIKE w zapytaniach SQL powinno być zgodne z najlepszymi praktykami, takimi jak optymalizacja indeksów i unikanie nadmiernego używania znaków wieloznacznych, które mogą prowadzić do spadku wydajności. Warto również pamiętać, że w wielu systemach baz danych klauzula LIKE jest czuła na wielkość liter, co może wpływać na wyniki zapytań.

Pytanie 37

W przypadku przedstawionego fragmentu kodu walidator HTML zgłosi błąd, ponieważ

<img src="kwiat.jpg alt="kwiat">

A. użyto niewłaściwego znacznika do wyświetlenia obrazu
B. wprowadzono nieznany atrybut alt
C. nie zamknięto cudzysłowu
D. nie odnaleziono pliku kwiat.jpg
Poprawna odpowiedź to nie domknięto cudzysłowu ponieważ w kodzie HTML atrybuty muszą być poprawnie zamknięte aby poprawnie interpretować ich wartości. W przedstawionym fragmencie kodu dla znacznika img brakuje końcowego cudzysłowu po wartości src co stanowi błąd składniowy. Tego typu błędy mogą prowadzić do nieprawidłowego działania strony ponieważ przeglądarka nie jest w stanie jednoznacznie określić końca wartości atrybutu co może skutkować nieprawidłowym renderowaniem danych. Zgodnie z najlepszymi praktykami każde otwarte cudzysłowie powinno być zamknięte aby zapewnić poprawną interpretację kodu. Ponadto stosowanie poprawnego zamykania cudzysłowów zwiększa czytelność kodu co jest istotne przy współpracy zespołowej i ułatwia jego utrzymanie. Warto także korzystać z walidatorów HTML które automatycznie wykrywają takie błędy pomagając w ich szybkim usunięciu. Tego rodzaju narzędzia są kluczowe w procesie tworzenia stron internetowych ponieważ umożliwiają weryfikację zgodności kodu z obowiązującymi standardami co ma bezpośredni wpływ na jego wydajność i kompatybilność z różnymi przeglądarkami.

Pytanie 38

W języku Javascript obiekt typu array służy do przechowywania

A. wielu wartości lub funkcji
B. wielu wartości różnego rodzaju
C. wielu wartości tylko liczbowych
D. wielu wartości tylko tekstowych
Przy wyborze niepoprawnych odpowiedzi, można zauważyć kilka typowych nieporozumień dotyczących funkcji obiektów typu array w JavaScript. Odpowiedź sugerująca, że tablice służą wyłącznie do przechowywania wartości liczbowych, jest błędna, ponieważ w praktyce tablice te mogą zawierać różnorodne typy danych. Ograniczenie się tylko do liczb wyklucza możliwość przechowywania obiektów, tekstów, a nawet funkcji, co jest jedną z kluczowych cech tablic w JavaScript. Wybór odpowiedzi, która krępuje tablice do przechowywania jedynie wartości tekstowych, również jest mylny, ponieważ, podobnie jak w przypadku liczb, tablice mogą przechowywać wiele różnych typów, co czyni je bardziej uniwersalnymi. Kolejnym błędem myślowym jest przyjęcie, że tablice mogą przechowywać wyłącznie wartości lub funkcje. W rzeczywistości tablice mogą zawierać mieszankę różnych typów danych, co otwiera szereg możliwości w zakresie tworzenia bardziej złożonych struktur danych. JavaScript jako język programowania oferuje dużą elastyczność, co jest kluczowe w nowoczesnym rozwoju aplikacji. Zrozumienie, że tablice w JavaScript są dynamicznymi obiektami, które mogą przechowywać różnorodne dane, jest fundamentalne dla każdego programisty, który chce efektywnie wykorzystać ten język w projektach programistycznych.

Pytanie 39

Jakie informacje można uzyskać na temat normalizacji tej tabeli?

Ilustracja do pytania
A. Tabela jest w drugiej postaci normalnej
B. Tabela nie jest znormalizowana
C. Tabela znajduje się w pierwszej postaci normalnej
D. Tabela znajduje się w trzeciej postaci normalnej
Tabela przedstawiona w pytaniu nie spełnia wymogów żadnej z trzech podstawowych postaci normalnych co oznacza że nie jest znormalizowana. Pierwsza postać normalna wymaga aby wszystkie wartości w tabeli były atomowe co oznacza że kolumna Adres powinna być podzielona na kilka kolumn takich jak ulica miasto i kod pocztowy. Druga postać normalna wymaga że wszystkie atrybuty niekluczowe muszą być deterministycznie zależne od całego klucza głównego co w tym przypadku nie ma zastosowania ponieważ tabela zawiera tylko dwa atrybuty i brak jest klucza złożonego. Trzecia postać normalna eliminuje wszelkie przejściowe zależności funkcyjne pomiędzy atrybutami niekluczowymi co również nie ma zastosowania w tej prostej strukturze. Typowe błędy myślowe prowadzące do niewłaściwych wniosków mogą obejmować niepełne zrozumienie zasad atomowości danych oraz błędne założenie że nieskomplikowana struktura tabeli automatycznie spełnia zasady normalizacji. Dlatego kluczowe jest aby dokładnie rozumieć i identyfikować zależności między danymi oraz jak te zależności wpływają na integralność i efektywność bazy danych co jest szczególnie istotne w dużych systemach gdzie dane są intensywnie modyfikowane i wykorzystywane przez wiele aplikacji jednocześnie. Właściwa normalizacja pozwala na optymalizację czasu dostępu do danych oraz minimalizację redundancji co jest uznawane za dobrą praktykę w branży projektowania baz danych. W kontekście projektowania systemów informatycznych poprawna normalizacja jest nieodłącznym elementem cyklu życia projektu zapewniającym że struktura danych jest odporna na zmiany w wymaganiach użytkowników oraz skalowalna w przypadku wzrostu ilości danych do obsługi przez system. Dlatego zrozumienie i prawidłowe stosowanie zasad normalizacji jest kluczowe dla przyszłych profesjonalistów w dziedzinie IT którzy będą odpowiedzialni za projektowanie i utrzymanie złożonych systemów bazodanowych.

Pytanie 40

Dana jest tablica n-elementowa o nazwie t[n] Zadaniem algorytmu zapisanego w postaci kroków jest wypisanie sumy

K1: i = 0; wynik = 0;
K2: Dopóki i < n wykonuj K3 .. K4
    K3: wynik ← wynik + t[i]
    K4: i ← i + 2
K5: wypisz wynik

A. sumy wszystkich elementów tablicy.
B. sumy tych elementów tablicy, których wartości są nieparzyste.
C. co drugiego elementu tablicy.
D. n-elementów tablicy.
Niestety, Twoje odpowiedzi nie są do końca poprawne i widać, że coś Ci umknęło w tej kwestii. Algorytm nie sumuje wszystkich elementów tablicy, ani nie odnosi się do ich parzystości. Właściwie to sumuje co drugi element, a nie wszystkie naraz. Kiedy myślisz o sumowaniu n-elementów, warto wiedzieć, że 'n' oznacza wielkość tablicy, a nie mówi, które elementy są sumowane. Przypomnij sobie, że algorytm używa pętli i zmiennej, która idzie o 2 w każdej turze, więc nic nie stoi na przeszkodzie, żeby lepiej zrozumieć, jak to działa. To kluczowe, bo dobra znajomość algorytmów i tablic to podstawa w programowaniu.