Wyniki egzaminu

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

Egzamin niezdany

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

Wymagane minimum: 20 punktów (50%)

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

Która z wymienionych metod umożliwia wyświetlenie komunikatu w konsoli przeglądarki za pomocą języka JavaScript?

A. console.print("test");
B. console.log("test");
C. console.echo("test");
D. console.write("test");
Wybór innych metod wypisywania komunikatów w konsoli, takich jak console.write(), console.print() oraz console.echo(), jest błędny, ponieważ nie są one zdefiniowane w standardowym API JavaScript. Istnieje powszechne nieporozumienie, że podobne nazwy funkcji mogą sugerować ich prawidłowe działanie, co prowadzi do stosowania niepoprawnych metod. JavaScript, jako język skryptowy, posiada zestaw wbudowanych funkcji, które są precyzyjnie zdefiniowane przez ECMAScript. Metody takie jak console.write() i console.print() nie istnieją w tym standardzie, co sprawia, że ich użycie kończy się błędami wykonania. Ponadto, console.echo() również nie jest rozpoznawane przez silniki JavaScript i może prowadzić do frustracji, gdy programista spodziewa się, że jego kod będzie działał zgodnie z intuicją. Kluczowe jest, aby każdy programista znał podstawowe funkcje i ich właściwe zastosowanie, aby uniknąć takich pułapek. Niezrozumienie dostępnych funkcji konsoli może prowadzić do marnowania czasu na debugowanie kodu, który nie działa, ponieważ został oparty na nieprawidłowych założeniach. Właściwe podejście do nauki JavaScript obejmuje eksperymentowanie z wbudowanymi funkcjami oraz zrozumienie dokumentacji, co znacznie przyspiesza proces uczenia się i wzmacnia umiejętności programistyczne.

Pytanie 2

Po uruchomieniu zamieszczonego w ramce skryptu w języku JavaScript w przeglądarce zostanie wyświetlona wartość

Ilustracja do pytania
A. 12,5
B. 15,4
C. 12,4
D. 15,5
W tym skrypcie JavaScript mamy operator dekrementacji a--, gdzie najpierw wartość zmiennej a jest przypisana do zmiennej b, a dekrementacja następuje później. Jeśli tego nie rozumiesz, może to prowadzić do różnych nieporozumień co do wynikowych wartości. Czyli po a-- b przyjmuje pierwotną wartość a, która wynosi 5. Warto zrozumieć kolejność operacji, bo przy operatorze postfix zmiana wartości następuje po przypisaniu. Później, po dekrementacji, a staje się 4, co czasem jest źle interpretowane, bo ludzie myślą, że b też by się zmieniło. Potem jest a *= 3, gdzie 4 mnożymy przez 3 i dostajemy 12. Często ludzie popełniają błąd, zakładając, że operatory działają równocześnie w jednym wierszu kodu. Ważne jest, żeby znać te subtelności, bo pomaga to w lepszym programowaniu i kontrolowaniu, jak zmienne się zmieniają.

Pytanie 3

Która z poniższych funkcji PHP służy do ładowania pliku z serwera?

A. mysqli_connect()
B. parse_str()
C. echo()
D. include()
Funkcja mysqli_connect() w PHP jest używana do nawiązywania połączenia z bazą danych MySQL. Jej głównym celem jest umożliwienie komunikacji między skryptem PHP a serwerem baz danych, co jest kluczowe w aplikacjach webowych, które potrzebują przechowywać i pobierać dane. Ta funkcja nie ma jednak nic wspólnego z ładowaniem plików z serwera, co jest zadaniem funkcji include(). Funkcja echo() służy do wyświetlania tekstu lub wartości zmiennych na stronie internetowej. Jest to podstawowe narzędzie do generowania dynamicznej zawartości w PHP, ale nie ma możliwości ładowania plików. Jest to bardziej odpowiednik wyjścia niż narzędzie do manipulacji plikami. Funkcja parse_str() konwertuje ciąg zapytania URL na zmienne PHP. Jest przydatna, gdy chcemy przekształcić dane w formacie URL do użytku w skrypcie PHP, jednak jej zastosowanie jest zupełnie inne niż ładowanie plików. Często używana w kontekście przetwarzania danych GET, ale nie ma związku z ładowaniem struktury zewnętrznych plików. Wybór tych funkcji jako potencjalnych odpowiedzi może wynikać z nieporozumienia odnośnie ich zastosowań, ale każda z nich pełni inną, specyficzną rolę w PHP.

Pytanie 4

Jakie jest zastosowanie zapytania z klauzulą JOIN?

A. określić klucz obcy dla tabeli
B. uzyskać wynik tylko z jednej tabeli
C. wywołać funkcję agregującą
D. pozyskać dane z dwóch tabel, które są ze sobą powiązane
Zrozumienie błędnych odpowiedzi na to pytanie wymaga analizy kilku koncepcji, które są często mylone w kontekście relacyjnych baz danych. Wywoływanie funkcji agregujących, jak SUM czy AVG, ma na celu przetwarzanie danych w obrębie jednej tabeli, co nie jest bezpośrednio związane z mechanizmem łączenia tabel. Klauzula JOIN nie jest używana do wywoływania funkcji agregujących, lecz do łączenia danych z wielu tabel. Z kolei definiowanie klucza obcego jest procesem strukturalnym, który zapewnia integralność relacji między tabelami, ale nie służy do pozyskiwania danych z tych tabel. W przypadku trzeciej odpowiedzi, uzyskanie wyników jedynie z jednej tabeli jest sprzeczne z ideą klauzuli JOIN, która ma na celu eksplorację relacji między tabelami. Błędy myślenia, które prowadzą do nieprawidłowych wniosków, często polegają na braku zrozumienia podstawowych zasad projektowania baz danych i ich normalizacji. W praktyce, efektywne korzystanie z JOIN pozwala na uzyskiwanie zaawansowanych analiz, jak na przykład raporty sprzedaży, które łączą różne źródła danych. Wiedza na temat właściwego użycia klauzul i relacji w bazach danych jest kluczowa dla każdego, kto dąży do skutecznego zarządzania danymi.

Pytanie 5

Który z akapitów został zapisany w wskazanym stylu, zakładając, że pozostałe właściwości akapitu mają wartości domyślne?

Ilustracja do pytania
A. Efekt 1
B. Efekt 2
C. Efekt 3
D. Efekt 4
W analizowanym pytaniu trzy efekty nie spełniają wszystkich warunków zdefiniowanych w stylu CSS dla paragrafu. Pierwszy efekt pokazuje tekst z niebieskim tłem który nie jest zgodny z zadanym stylem ponieważ kolor tła nie został określony w stylizacji. Zastosowanie niebieskiego tła często wynika z chęci wizualnego wyróżnienia elementu ale w tym przypadku styl określa jedynie kolor tekstu na niebieski a nie tła. Drugi efekt charakteryzuje się użyciem kursywy co również nie jest zgodne z deklaracją stylu CSS. Stylizacja paragrafu nie zawiera property font-style co oznacza że tekst powinien być w domyślnej formie czyli zwykły a nie kursywa. Trzeci i czwarty efekt mają niezgodne kolory tekstu i inne elementy które nie pasują do zadanego stylu. Typowym błędem w interpretacji stylów CSS jest niedokładne odczytanie wszystkich zdefiniowanych parametrów co prowadzi do błędnych założeń ostatecznego wyglądu elementu. Poprawne zrozumienie stylów wymaga zwrócenia uwagi na wszystkie atrybuty nawet jeśli nie są one wyraźnie widoczne na pierwszy rzut oka. W związku z tym kluczowe jest dokładne zapoznanie się z każdą definicją w stylu aby prawidłowo dopasować wygląd do specyfikacji.

Pytanie 6

Podczas definiowania pola id w tabeli MySQL użyto AUTO_INCREMENT. Co to oznacza?

id int NOT NULL AUTO_INCREMENT

A. pole id może przyjmować takie wartości jak: NULL, 1, 2, 3, 4 i tak dalej
B. wartości dla tego pola będą generowane automatycznie przy dodawaniu nowego rekordu do bazy
C. wartość pola id zostanie nadana automatycznie przez bazę i będzie to losowo wygenerowana liczba całkowita
D. możliwe jest dodanie rekordu z dowolną wartością pola id
Wartości pola AUTO_INCREMENT nie są generowane losowo lecz według określonego schematu liczbowego zaczynającego się zwykle od jedynki i rosnącego z każdym nowym rekordem. Koncepcja losowego nadawania wartości jest błędna ponieważ główna cecha AUTO_INCREMENT polega na przewidywalnym wzroście wartości co jest kluczowe dla zachowania integralności danych przy użyciu kluczy głównych. Z kolei możliwość dodawania rekordu z dowolną wartością id jest ograniczona gdyż w przypadku AUTO_INCREMENT to baza narzuca wartość tego pola co zabezpiecza przed duplikacją i kolizjami identyfikatorów. Pole id w kontekście AUTO_INCREMENT nie może przyjmować wartości NULL a jedynie wartości liczbowych zaczynających się od jedynki lub innej wartości początkowej jeśli zostanie zdefiniowana na etapie tworzenia tabeli. Mylenie tych koncepcji wynika często z niezrozumienia mechanizmów generowania kluczy w bazach danych gdzie klucz główny musi być unikalny a AUTO_INCREMENT to jeden z najczęściej stosowanych sposobów osiągania tego celu zgodnie z dobrymi praktykami projektowania baz danych. Zrozumienie funkcji AUTO_INCREMENT pozwala na efektywne zarządzanie rekordami i utrzymanie spójności danych w aplikacjach wykorzystujących bazy danych.

Pytanie 7

Jakie właściwości języka CSS mogą mieć wartości: underline, overline, line-through?

A. font-style
B. text-decoration
C. font-weight
D. text-style

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'text-decoration' jest poprawna, ponieważ właściwość ta jest używana w CSS do stylizacji tekstu, a jej wartości mogą obejmować 'underline', 'overline' i 'line-through'. Właściwość 'text-decoration' umożliwia dodawanie dekoracji do tekstu, co jest szczególnie przydatne w przypadku podkreślania, przekreślania tekstu czy dodawania linii nad tekstem. Przykład zastosowania: aby podkreślić tekst, można użyć reguły CSS: `p { text-decoration: underline; }`. Dzięki temu wszystkie akapity na stronie będą miały podkreślony tekst. Warto również zauważyć, że w ramach standardów CSS3, właściwość ta zyskała dodatkowe wartości, takie jak 'none' czy 'blink', co jeszcze bardziej rozszerza jej funkcjonalność. W praktyce, 'text-decoration' jest często stosowane w projektach webowych, aby poprawić czytelność i estetykę treści. Dobrą praktyką jest jednak używanie tej właściwości w umiarkowany sposób, aby nie przytłoczyć użytkownika zbyt wieloma dekoracjami, co mogłoby wpłynąć na ogólną użyteczność strony.

Pytanie 8

Formaty wideo, które są wspierane przez standard HTML5, to

A. MP4, Ogg, WebM
B. Ogg, QuickTime
C. MP4, AVI
D. Ogg, AVI, MPEG

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź MP4, Ogg, WebM jest poprawna, ponieważ te trzy formaty wideo są oficjalnie obsługiwane przez standard HTML5, co oznacza, że są zgodne z różnymi przeglądarkami internetowymi bez potrzeby używania dodatkowych wtyczek. Format MP4, oparty na kontenerze MPEG-4, jest szeroko stosowany z uwagi na jego efektywność w kompresji oraz wysoką jakość obrazu i dźwięku. Ogg to otwarty format, który wspiera kodek VP8, co czyni go popularnym wśród projektów o otwartym oprogramowaniu. WebM, z kolei, jest również formatem otwartym, zoptymalizowanym dla wideo w Internecie, co czyni go dobrym wyborem dla zastosowań webowych. Te formaty są zgodne z najlepszymi praktykami w zakresie wydajności i dostępności, co sprawia, że są preferowane podczas tworzenia treści wideo do zastosowań online. Przykładem ich użycia może być osadzanie wideo na stronach internetowych, gdzie różnorodność formatów pozwala na ich odtwarzanie na różnych urządzeniach oraz w różnych systemach operacyjnych.

Pytanie 9

Które z poleceń przyznaje użytkownikowi uczen najniższe uprawnienia w kontekście modyfikacji danych oraz struktury tabeli?

A. GRANT ALTER, SELECT ON szkola.przedmioty TO uczen;
B. GRANT INSERT, DROP ON szkola.przedmioty TO uczen;
C. GRANT SELECT ON szkola.przedmioty TO uczen;
D. GRANT DROP ON szkola.przedmioty TO uczen;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź GRANT SELECT ON szkola.przedmioty TO uczen jest całkiem niezła. Daje użytkownikowi 'uczen' tylko możliwość przeglądania danych z tabeli 'przedmioty' w bazie danych 'szkola'. To znaczy, że nie może on nic zmieniać ani modyfikować struktury tabeli, co jest spoko, bo zapewnia to większe bezpieczeństwo. Z własnego doświadczenia mogę powiedzieć, że dobrze jest przydzielać uprawnienia w taki sposób, żeby użytkownicy mieli tylko to, co im naprawdę potrzebne do pracy. W przypadku ucznia, który tylko chce się uczyć i patrzeć na przedmioty, dostęp do operacji takich jak INSERT, UPDATE czy DROP nie ma sensu, bo tylko stwarza ryzyko niekontrolowanych zmian w danych. W edukacji warto ograniczyć dostęp, żeby zachować porządek i uniknąć błędów oraz nadużyć. Więc dobrze, że wybrałeś tę odpowiedź.

Pytanie 10

Wskaż nieprawidłowy opis optymalizacji kodu generowanego przez program.

A. Jej celem jest zwiększenie efektywności działania programu
B. Jej celem jest sprawdzenie zgodności z wymogami formalnymi
C. Powinna skutkować modyfikacją kodu źródłowego, aby działał on szybciej
D. Może być realizowana na różnych etapach działania w celu przyspieszenia wykonania kodu przez procesor

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Optymalizacja kodu wynikowego programu to proces, którego celem jest poprawa wydajności i szybkości działania aplikacji. Obejmuje różnorodne techniki, takie jak eliminacja zbędnych operacji, zmniejszenie liczby instrukcji i wykorzystanie efektywniejszych algorytmów. Przykłady obejmują refaktoryzację kodu, gdzie zmieniane są struktury danych lub algorytmy w celu osiągnięcia lepszej wydajności. Również optymalizacja na poziomie kompilacji, w której kompilatory mogą przeprowadzać różne techniki optymalizacji, takie jak inlining funkcji czy eliminacja martwego kodu, jest kluczowa. Standardy, takie jak C99 czy C11, często zawierają wytyczne dotyczące wydajności, co podkreśla znaczenie optymalizacji w tworzeniu nowoczesnych aplikacji. Istotne jest, aby proces ten był prowadzony na różnych etapach, od fazy projektowania po końcowe testy, aby zidentyfikować wąskie gardła i zwiększyć efektywność kodu.

Pytanie 11

W języku PHP wykorzystano funkcję ```is_float()```. Które z poniższych wywołań tej funkcji zwróci rezultat true?

A. is_float('3,34')
B. is_float(3.34)
C. is_float(334)
D. is_float(NULL)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja is_float() w PHP to coś, co naprawdę warto znać, bo sprawdza, czy dana wartość jest liczbą zmiennoprzecinkową. Na przykład, jak wywołasz is_float(3.34), to dostaniesz true, bo 3.34 to faktycznie float. W programowaniu ważne jest, żeby poprawnie rozróżniać różne typy danych, bo inaczej mogą być problemy przy obliczeniach. W finansach czy modelowaniu danych, dobór typów danych to kluczowa sprawa, bo chcemy, żeby nasze obliczenia były precyzyjne. Warto wiedzieć, że w PHP liczby zmiennoprzecinkowe działają według standardu IEEE 754, co czasem może powodować zaskoczenia przy dużych albo bardzo małych liczbach. Dlatego lepiej używać funkcji is_float() do sprawdzania danych wprowadzanych przez użytkowników, żeby nie wkradały się błędy, które mogą popsuć nasze obliczenia.

Pytanie 12

Grafika powinna być zapisana w formacie GIF, jeśli

A. jest to grafika wektorowa
B. konieczne jest zapisanie obrazu lub animacji
C. jest to obraz w technologii stereoskopowej
D. istnieje potrzeba zapisu obrazu w formie bez kompresji

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Format GIF (Graphics Interchange Format) jest powszechnie wykorzystywany do przechowywania obrazów oraz animacji. Dzięki obsłudze przezroczystości oraz możliwości tworzenia prostych animacji, GIF stał się standardem w przypadku grafiki na stronach internetowych. Jego ograniczenie do 256 kolorów sprawia, że idealnie nadaje się do prostych grafik, takich jak logo czy ikony, gdzie nie jest wymagana pełna gama kolorów, co ma miejsce w formatach takich jak JPEG czy PNG. W przypadku animacji, GIF umożliwia zapis wielu klatek w jednym pliku, co pozwala na odtwarzanie sekwencji obrazu bez potrzeby korzystania z dodatkowego oprogramowania. Praktyczne zastosowanie GIF-a można zaobserwować w mediach społecznościowych, gdzie animowane obrazki są często wykorzystywane do wyrażania emocji, a także na stronach internetowych do przedstawiania logo w ruchu. Używanie formatu GIF w kontekście animacji jest zgodne z dobrą praktyką w branży, ponieważ pozwala na efektywne zarządzanie zasobami wizualnymi oraz zwiększa atrakcyjność treści wizualnych.

Pytanie 13

W podanym kodzie PHP, w miejscu kropek należy umieścić odpowiednią instrukcję

$zapytanie = mysqli_query($db, "SELECT imie, nazwisko FROM uzytkownik");
while ($wiersz = ...................)
    echo "$wiersz[0] $wiersz[1]";

A. mysqli_fetch_array($zapytanie)
B. mysqli_free_result($zapytanie)
C. mysqli_query($zapytanie)
D. mysqli_num_fields($zapytanie)
Funkcja mysqli_fetch_array($zapytanie) jest używana do pobierania wyników zapytania SQL w formie tablicy asocjacyjnej lub indeksowanej. W kontekście podanego kodu, po wykonaniu zapytania SELECT do bazy danych, wyniki są zwracane jako zasób, który musi być przetworzony. Mysqli_fetch_array pozwala na iteracyjne przetwarzanie każdego wiersza z zestawu wyników, co umożliwia dostęp do poszczególnych wartości pól za pomocą indeksów lub kluczy. Jest to przydatne w sytuacjach, gdzie dane muszą być wyświetlane lub przetwarzane w pętli, jak w przykładowym kodzie. Tablica zwracana przez mysqli_fetch_array może zawierać pola zarówno z indeksami numerycznymi, jak i nazwami kolumn, co daje elastyczność w dostępie do danych. Zgodnie z dobrymi praktykami programistycznymi, zawsze należy sprawdzić, czy zapytanie zostało wykonane poprawnie, zanim zacznie się przetwarzać jego wyniki, oraz zwolnić pamięć po zakończeniu przetwarzania wyników. Stosowanie odpowiednich mechanizmów obsługi błędów i zabezpieczeń, takich jak przygotowane zapytania, jest również kluczowe dla bezpieczeństwa aplikacji.

Pytanie 14

Specjalna funkcja danej klasy stosowana w programowaniu obiektowym, która jest wywoływana automatycznie w momencie tworzenia obiektu, a jej głównym celem jest zazwyczaj inicjalizacja pól, to

A. konstruktor
B. specyfikator dostępu
C. obiekt
D. destruktor
Obiekt, destruktor oraz specyfikator dostępu to terminy związane z programowaniem obiektowym, jednak nie odnoszą się one do mechanizmu inicjowania obiektów w taki sposób, jak to robi konstruktor. Obiekt to instancja klasy, która powstaje jako rezultat działania konstruktora. Bezpośrednio nie pełni on żadnej roli w procesie tworzenia, a jedynie jest jego efektem. Destruktor, przeciwnie do konstruktora, jest wywoływany automatycznie, gdy obiekt przestaje być potrzebny, a jego zadaniem jest zwolnienie zasobów zajmowanych przez obiekt. Błędne jest przyjęcie, że destruktor mógłby inicjować pola obiektu, gdyż jego rola dotyczy sprzątania po obiekcie, a nie jego tworzenia. Specyfikator dostępu to termin odnoszący się do modyfikatorów, które kontrolują widoczność członków klasy, takich jak public, private, czy protected. To pojęcie nie ma związku z procesem tworzenia, a jedynie z kontrolowaniem dostępu do poszczególnych elementów klasy. Pojęcia te mogą być mylone przez osoby, które nie mają pełnej wiedzy na temat podstawowych zasad programowania obiektowego, co prowadzi do nieporozumień i błędnych wniosków o funkcjach i rolach poszczególnych elementów w tym paradygmacie. Kluczowe jest zrozumienie, że konstruktor jest jedynym mechanizmem bezpośrednio odpowiedzialnym za inicjowanie nowych obiektów.

Pytanie 15

W wyniku działania pętli zapisanej w języku PHP zostanie wypisany ciąg liczb:

 $liczba = 10;
while ($liczba < 50) {
    echo "$liczba ";
    $liczba = $liczba + 5;
}

A. 10 15 20 25 30 35 40 45
B. 0 5 10 15 20 25 30 35 40 45
C. 0 5 10 15 20 25 30 35 40 45 50
D. 10 15 20 25 30 35 40 45 50
Wybrana odpowiedź nie jest poprawna. Może wynikać to z niepełnego zrozumienia, jak działa pętla while w języku PHP. Pętla while wykonuje kod, dopóki warunek jest prawdziwy. W tym przypadku, rozpoczyna się od wartości zmiennej 10, która jest zwiększana o 5 za każdą iteracją, ale tylko do momentu, kiedy osiągnie wartość mniejszą niż 50. Oznacza to, że ostatnią wydrukowaną liczbą jest 45, ponieważ przy następnej iteracji wartość zmiennej wynosiłaby 50 - wartość nie spełniającą warunku pętli. Błędne odpowiedzi sugerują błędną interpretację, jak to działa - zaburzony początek ciągu (powinien zaczynać się od 10, a nie 0) lub błędną końcówkę (50 nie jest wydrukowane, ponieważ jest to wartość już poza zakresem pętli). Ważne jest, aby dokładnie analizować i rozumieć warunki pętli i jej działanie.

Pytanie 16

Który zbiór znaczników, określających projekt strony internetowej w sposób semantyczny, jest zgodny z normą HTML 5?

Ilustracja do pytania
A. Zbiór 4
B. Zbiór 3
C. Zbiór 2
D. Zbiór 1
Zrozumienie semantyki HTML jest kluczowe dla tworzenia zoptymalizowanych stron internetowych, a wybór odpowiednich znaczników ma duży wpływ na strukturę i dostępność dokumentu. W niepoprawnych odpowiedziach brak jest semantycznej spójności z założeniami HTML5. Wykaz 1 używa
w Bloku 2, co oznaczałoby samodzielną jednostkę, np. wpis na blogu lub artykuł prasowy, co nie jest odpowiednie w kontekście głównej treści strony. Wykaz 2 używa
, co jest niezalecane, gdyż divy są ogólnymi kontenerami, a HTML5 promuje użycie bardziej szczegółowych znaczników semantycznych. Wykaz 3 zastosował
dwukrotnie, co jest błędem, ponieważ
powinien być użyty tylko raz na stronie, jako główny element zawartości. Pominięcie znaczników takich jak

Pytanie 17

Który zapis w języku JavaScript daje taki sam wynik jak poniższy kod?

x = 0;
x += 10;

A. x = 10; x = x + 10
B. x = 0; x++; x = x + 9
C. x = 0; x--; x *= 9
D. x = 10; x = 0
Analiza odpowiedzi prowadzi do zrozumienia, że w niektórych przypadkach programiści mogą mieć trudności z interpretacją operacji na zmiennych. W przypadku pierwszej z niepoprawnych odpowiedzi, x = 0; x--; x *= 9; prowadzi to do innej logiki. Po przypisaniu x = 0, użycie x-- zmienia wartość x na -1, a następnie mnożenie przez 9 skutkuje -9, co nie ma nic wspólnego z oczekiwaną wartością 10. To pokazuje, jak nieprawidłowe zrozumienie podstawowych operacji arytmetycznych może prowadzić do błędów. W drugiej niepoprawnej odpowiedzi, x = 10; x = x + 10; przypisanie 10 do x oraz dodanie 10 do x daje wartość 20, co również jest dalekie od oczekiwanego wyniku. Takie nieprawidłowe podejście do operacji przypisania i dodawania może być wynikiem niedostatecznej znajomości reguł działania operatorów w JavaScript. Wreszcie, ostatnia odpowiedź, x = 10; x = 0; jest sprzeczna sama w sobie, ponieważ po przypisaniu 10, nadpisanie wartości na 0 bez żadnej operacji arytmetycznej skutkuje wartością 0, co jest jeszcze bardziej mylące. Wnioskując, kluczowe jest zrozumienie, jak działają operatory w JavaScript oraz unikanie typowych pułapek wynikających z niepoprawnego łączenia przypisania i operacji arytmetycznych. Takie błędy mogą prowadzić do trudności w debugowaniu i utrzymaniu kodu, dlatego warto przestrzegać dobrych praktyk programistycznych oraz dokładnie analizować operacje na zmiennych.

Pytanie 18

Aby dostosować dźwięk do określonego poziomu głośności, należy zastosować efekt

A. usuwania szumów
B. normalizacji
C. wyciszenia
D. podbicia basów
Normalizacja to proces, który polega na dostosowywaniu poziomu głośności nagrania audio, tak aby maksymalny sygnał osiągał określony poziom, najczęściej bliski maksymalnej wartości dostępnej dla formatu audio. Normalizacja dźwięku może być zastosowana zarówno do pojedynczych ścieżek, jak i do całych projektów, co pozwala na uzyskanie spójności głośności w różnych utworach. W praktyce oznacza to, że nagrania są przetwarzane tak, aby największy dźwięk nie przekraczał ustalonego progu, co zapobiega zniekształceniom i pogorszeniu jakości dźwięku. Standardowe poziomy normalizacji obejmują wartości takie jak -1 dBFS, które zapewniają odpowiednią przestrzeń dla dynamicznych szczytów dźwięku. Przykładem zastosowania normalizacji jest przygotowywanie playlisty do transmisji radiowej, gdzie wszystkie utwory muszą być na podobnym poziomie głośności, aby zapewnić komfort słuchania. W branży muzycznej normalizacja jest kluczowym procesem, który zapewnia nie tylko odpowiednią jakość dźwięku, ale i profesjonalny odbiór nagrań przez słuchaczy.

Pytanie 19

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

A. uzupełnienie tablicy Ksiazka danymi.
B. stwórzenie jednego obiektu typu mojeKsiazki.
C. wyświetlenie na ekranie informacji z tabeli Ksiazka.
D. stwórzenie dziesięciu instancji obiektów typu Ksiazka.
Prawidłowa odpowiedź to utworzenie dziesięciu obiektów typu Ksiazka, co jest jasno widoczne w kodzie przedstawionym w pytaniu. Pętla while wykonuje się, dopóki zmienna x jest mniejsza niż 10, co oznacza, że iteracje będą miały miejsce od 0 do 9. W każdej iteracji tworzony jest nowy obiekt typu Ksiazka za pomocą operatora new, a następnie przypisywany do odpowiedniego indeksu w tablicy mojeKsiazki. Koncepcja dynamicznego tworzenia obiektów jest kluczowa w programowaniu obiektowym, ponieważ pozwala na elastyczne zarządzanie zasobami, co jest szczególnie przydatne w sytuacjach, gdy liczba obiektów jest nieznana z góry. Przykładowo, w aplikacjach do zarządzania bibliotekami, gdzie liczba książek może się zmieniać w zależności od użytkowników, pętle takie jak ta umożliwiają efektywne dodawanie nowych książek do systemu. Dobrą praktyką jest również zapewnienie, że tablica, do której przypisujemy obiekty, jest odpowiednio zainicjowana, aby uniknąć błędów podczas próby dostępu do jej elementów.

Pytanie 20

Jak nazywa się metoda tworząca obiekt w języku PHP?

A. __construct
B. __new
C. __open
D. __create
Odpowiedzi, które nie są poprawne, nie odnoszą się do właściwego sposobu definiowania konstruktorów w PHP. Wyrażenie __new sugeruje mechanizm związany z tworzeniem instancji obiektów, jednak nie jest ono używane jako konstruktor. W PHP __new jest używane w kontekście wzorców projektowych, ale nie jest to metoda konstrukcyjna, lecz metodą statyczną związaną z prototypowaniem obiektów, co wykracza poza standardowy sposób inicjalizacji obiektów. Z kolei __open oraz __create nie są metodami rozpoznawanymi przez PHP jako mające jakiekolwiek znaczenie w kontekście konstruktorów. __open mogłoby sugerować otwarcie zasobu, co nie ma związku z inicjalizacją obiektu klasy, a __create jest nieodpowiednim terminem, gdyż PHP nie definiuje żadnej metody o takiej nazwie. Użycie tych nazw w kontekście konstruktorów wprowadza zamieszanie i może prowadzić do błędów w kodzie oraz nieporozumień dotyczących działania obiektów. Właściwe użycie __construct jako konstruktorów w PHP jest kluczowe dla zapewnienia prawidłowego działania aplikacji, a niewłaściwe nazewnictwo może prowadzić do problemów technicznych i ograniczeń funkcjonalnych.

Pytanie 21

Jeżeli rozmiar pliku graficznego jest zbyt duży do publikacji w sieci, co należy zrobić?

A. zapisać w formacie BMP
B. zwiększyć jego głębię kolorów
C. zmniejszyć jego rozdzielczość
D. dodać kanał alfa

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zmniejszenie rozdzielczości pliku graficznego jest jedną z najskuteczniejszych metod na zmniejszenie jego rozmiaru, co jest niezwykle ważne w kontekście publikacji w Internecie. Rozdzielczość obrazu odnosi się do liczby pikseli, które składają się na dany obraz, wyrażoną zazwyczaj w pikselach na cal (PPI) lub w całkowitej liczbie pikseli w szerokości i wysokości. Zmniejszając rozdzielczość, obniżamy liczbę pikseli, co w efekcie prowadzi do mniejszego rozmiaru pliku. Na przykład, obraz o rozdzielczości 4000x3000 pikseli ma 12 milionów pikseli, podczas gdy obraz o rozdzielczości 2000x1500 pikseli zaledwie 3 miliony pikseli. Oprócz zmniejszenia rozdzielczości, można również zastosować inne techniki kompresji, takie jak zmiana formatu pliku na JPEG, który jest bardziej efektywny w kompresji zdjęć, a także wykorzystanie narzędzi do optymalizacji grafiki, takich jak TinyPNG czy ImageOptim. Zmniejszając rozdzielczość, należy jednak pamiętać o zachowaniu odpowiedniej jakości obrazu, aby nie wpłynęło to negatywnie na jego czytelność i estetykę, co jest kluczowe w kontekście publikacji online.

Pytanie 22

Który sposób na utworzenie tablicy w JavaScript jest niepoprawny pod względem składniowym?

A. var liczby = new Array(1, 2, 3);
B. var liczby = [1, 2, 3];
C. var liczby = new Array[1, 2, 3];
D. var liczby = [3];

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zauważyłeś, że zapis 'var liczby = new Array[1, 2, 3];' jest błędny, i masz rację. Problem tkwi w tym, że w JavaScript do tworzenia tablicy używa się nawiasów okrągłych, a nie kwadratowych. Dlatego poprawny sposób na utworzenie tablicy z liczbami 1, 2 i 3 to 'var liczby = new Array(1, 2, 3);'. Ale szczerze mówiąc, dużo lepiej jest używać literałów tablicowych, czyli 'var liczby = [1, 2, 3];'. To jest zdecydowanie prostsze i czytelniejsze. W programowaniu dobrze jest wybrać opcje, które sprawiają, że kod jest łatwiejszy do zrozumienia i utrzymania, a literały tablicowe to dokładnie to. Tak więc, kiedy możesz, korzystaj z tej prostszej formy.

Pytanie 23

W którym z przedstawionych bloków powinien być umieszczony warunek pętli?

Ilustracja do pytania
A. Rys. D
B. Rys. C
C. Rys. A
D. Rys. B

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Rysunek C przedstawia romb który w diagramach przepływu jest standardowo używany do reprezentowania decyzji lub warunków warunku pętli. Pętle w programowaniu są często oparte na warunkach które decydują o ich kontynuacji lub zakończeniu. Umiejscowienie warunku w rombie pozwala na wyrażenie warunku logicznego który może być testowany jako prawda lub fałsz co jest kluczowe dla działania pętli takich jak while czy for. Przykładem może być pętla while która kontynuuje swoje działanie tak długo jak warunek w rombie jest spełniony. W ten sposób romb ułatwia wizualne i logiczne śledzenie decyzji w algorytmie co jest zgodne z dobrymi praktykami programowania takimi jak przejrzystość i czytelność kodu. Użycie rombu zgodnie z konwencją diagramów przepływu poprawia także zrozumienie algorytmu przez innych programistów co zwiększa efektywność współpracy w zespołach deweloperskich. Stosowanie tego symbolu jest również wspierane przez standardy takie jak UML co czyni go uniwersalnym narzędziem w modelowaniu procesów.

Pytanie 24

W stylu CSS ustalono obramowanie pojedyncze, które ma następujące kolory dla krawędzi: ```border: solid 1px; border-color: red blue green yellow;```

A. górna – czerwona, prawa – niebieska, dolna – zielona, lewa – żółta
B. lewa – czerwona, dolna – niebieska, prawa – zielona, górna – żółta
C. prawa – czerwona, dolna – niebieska, lewa – zielona, górna – żółta
D. górna – czerwona, lewa – niebieska, dolna – zielona, prawa – żółta

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Definicja obramowania za pomocą stylu CSS z użyciem właściwości border-color pozwala na określenie kolorów każdej z krawędzi elementu w kolejności zgodnej ze wskazówkami zegara. Gdy podano cztery wartości jak w border-color: red blue green yellow; oznaczają one odpowiednio kolory krawędzi górnej prawej dolnej i lewej. Właściwość border: solid 1px; definiuje typ obramowania jako solidne i jego szerokość jako 1px. Warto zaznaczyć że podanie czterech wartości kolorów w border-color jest zgodne z zasadami CSS i umożliwia konfigurowanie wyglądu elementów w sposób szczegółowy i zindywidualizowany. Projektanci stron internetowych często używają tej techniki do tworzenia graficznych stylów które zwiększają czytelność i estetykę witryny. W praktyce wiedza o manipulacji stylem obramowania w CSS jest kluczowa dla tworzenia responsywnych i wizualnie atrakcyjnych interfejsów użytkownika. Takie podejście wspiera zachowanie spójności wizualnej co jest jedną z dobrych praktyk w projektowaniu front-endu.

Pytanie 25

Kwerenda ma na celu dokonanie zmian w tabeli artykuly

Ilustracja do pytania
A. usunąć kolumnę o nazwie cena typu float
B. zmienić nazwę kolumny cena na float
C. dodać kolumnę o nazwie cena z typem float, jeżeli jeszcze nie istnieje
D. zmienić typ kolumny cena na float

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Twoja odpowiedź o zmianie typu na float dla kolumny cena jest całkiem na miejscu! W pracy z bazami danych ważne jest, żeby odpowiednio zarządzać typami danych w tabelach. Typ float to coś, co często wykorzystuje się do przechowywania wartości liczbowych, które mają część dziesiętną. To istotne przy cenach, które często muszą być dokładnie przedstawione, na przykład do dwóch miejsc po przecinku. Wspomniana kwerenda ALTER TABLE to świetne narzędzie do zmiany struktury tabeli, i to jest zgodne z dobrymi praktykami zarządzania bazami, zwłaszcza z zasadą elastyczności. Dzięki temu można dostosować tabelę do zmieniających się potrzeb bez potrzeby przebudowy całej bazy. Wiesz, takie operacje są dość typowe, ale trzeba uważać, by nie stracić danych czy mieć jakieś niezgodności. Dlatego zawsze warto zrobić kopię zapasową i testować zmiany w środowisku testowym. Zrozumienie takich operacji pomoże ci w lepszym zarządzaniu bazami danych i ich optymalizacji.

Pytanie 26

Jaką funkcję pełni funkcja CONCAT() w SQL?

A. łącznienie tekstu wyświetlanego
B. wyodrębnianie podłańcucha znaków z tekstu wejściowego
C. usuwanie określonego tekstu
D. przycinanie tekstu wyświetlanego

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja CONCAT() w SQL to naprawdę super opcja, bo pozwala na łączenie różnych ciągów tekstowych. To jest mega przydatne, zwłaszcza przy pracy z bazami danych, kiedy potrzebujemy stworzyć np. pełne imię i nazwisko z osobnych pól. Jak mamy tabelę z imionami i nazwiskami, to możemy użyć CONCAT(), żeby to wszystko połączyć w jedną całość: CONCAT(imie, ' ', nazwisko). Takie operacje są dość popularne w raportach i przy tworzeniu dynamicznych zapytań, gdzie często łączymy różne dane. Fajnie też pamiętać, żeby uważać na wartości NULL, bo mogą nam namieszać w wynikach. Poza tym, w różnych systemach bazodanowych są też inne metody łączenia tekstów, jak operator || w PostgreSQL, co może być przydatne, jeśli przenosisz zapytania między systemami.

Pytanie 27

Podaj dwa sposoby ochrony bazy danych Microsoft Access?

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

Pytanie 28

Która z zasad walidacji stron internetowych jest niepoprawna?

A. Jeżeli w instrukcji stosuje się kilka atrybutów, ich kolejność powinna odpowiadać porządkom alfabetycznym, np.....
B. Znaczniki, poza tymi samozamykającymi się, funkcjonują aż do momentu ich zakończenia znakiem '/', np.

...

C. W znacznikach nie zachodzi rozróżnienie pomiędzy dużymi a małymi literami, np.

i

są tym samym znacznikiem

D. Wyłączanie znaczników powinno następować w odwrotnej kolejności do ich włączania, np.

.......

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kolejność atrybutów w znacznikach HTML nie ma znaczenia, co oznacza, że ich uporządkowanie w porządku alfabetycznym jest błędnym podejściem. W praktyce oznacza to, że atrybuty takie jak 'alt', 'src', 'title' mogą być zdefiniowane w dowolnej kolejności, o ile są poprawnie sformułowane. Jednakże, ze względów na czytelność kodu, warto stosować jakąś konsekwentną metodę sortowania atrybutów. W przypadku znaczników obrazków, na przykład, popularne jest zaczynanie od 'alt', następnie 'src', a potem 'title'. Ważne jest również, aby atrybuty były zgodne z wytycznymi W3C oraz WCAG, co zapewnia dostępność treści dla wszystkich użytkowników, w tym osób z niepełnosprawnościami. Stosowanie poprawnych atrybutów i ich odpowiedniego umiejscowienia jest kluczowym elementem pisania semantycznego i zgodnego z standardami HTML, co wpływa na poprawne wyświetlanie strony w różnych przeglądarkach oraz na jej optymalizację SEO.

Pytanie 29

W kodzie HTML stworzono link do strony internetowej. Aby otworzyć tę stronę w nowym oknie lub zakładce przeglądarki, należy dodać do definicji linku atrybut <a href="http://google.com" >strona Google</a>

A. rel = "next"
B. rel = "external"
C. target = "_parent"
D. target = "_blank"

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Atrybut target w języku HTML służy do określenia, w jaki sposób ma otworzyć się dokument, do którego prowadzi odnośnik. Użycie wartości '_blank' dla atrybutu target jest standardowym sposobem na otwarcie nowej strony w nowym oknie lub zakładce przeglądarki. Przykład zastosowania to: strona Google. Jest to niezwykle przydatne w kontekście UX, ponieważ pozwala użytkownikom na łatwe porównanie informacji bez utraty dostępu do oryginalnej strony. Warto również zauważyć, że użycie tego atrybutu jest zgodne z najlepszymi praktykami w tworzeniu stron internetowych, gdyż umożliwia użytkownikom zachowanie kontekstu przeglądania. W HTML5 atrybut target pozostaje wspierany, co czyni go istotnym elementem w projektowaniu interfejsów użytkownika. Oprócz '_blank' istnieją inne wartości, takie jak '_self', '_parent' i '_top', które również spełniają różne funkcje w zależności od potrzeb nawigacyjnych w aplikacji webowej.

Pytanie 30

Jaki model opisu kolorów charakteryzuje się parametrami takimi jak odcień, nasycenie oraz jasność?

A. CMYK
B. RGB
C. HSV
D. CMY

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Model HSV (Hue, Saturation, Value) jest powszechnie stosowany w grafice komputerowej oraz w przemyśle filmowym i fotograficznym do opisu kolorów w sposób bardziej intuicyjny dla ludzi. Odcień (Hue) odnosi się do koloru podstawowego, nasycenie (Saturation) określa intensywność koloru, a jasność (Value) mierzy, jak ciemny lub jasny jest dany kolor. Przykładowo, w modelu HSV, czerwony kolor ma odcień 0°, zielony 120°, a niebieski 240°. W praktyce, projektanci często używają narzędzi opartych na tym modelu, ponieważ umożliwia on łatwe manipulowanie kolorami w programach graficznych, takich jak Photoshop czy GIMP. Model HSV jest również szeroko stosowany w standardach przemysłowych, takich jak ISO 12647, co czyni go ważnym narzędziem w zarządzaniu kolorem. Dzięki zrozumieniu modelu HSV, profesjonaliści mogą lepiej komunikować się z klientami, precyzyjnie dobierać kolory oraz tworzyć harmonijne palety kolorystyczne.

Pytanie 31

Edytor, który spełnia kryteria WYSIWYG, powinien umożliwiać

A. przygotowanie plików dźwiękowych przed ich umieszczeniem na stronie internetowej
B. tworzenie podstawowych grafik wektorowych
C. osiągnięcie zbliżonego rezultatu tworzonej strony do jej wyglądu w przeglądarce internetowej
D. publikację strony na serwerze za pomocą wbudowanego klienta FTP

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Edytory WYSIWYG (What You See Is What You Get) mają na celu umożliwienie użytkownikom tworzenia i edytowania treści w sposób, który przypomina ostateczny wygląd strony internetowej. Odpowiedź dotycząca uzyskania zbliżonego wyniku tworzonej strony do jej obrazu w przeglądarce internetowej jest kluczowym aspektem działania takich edytorów. Umożliwiają one użytkownikom natychmiastowe podglądanie efektów wprowadzanych zmian, co jest nieocenione przy projektowaniu stron. Przykładem może być edytor tak jak Adobe Dreamweaver czy WordPress, które pozwalają na wizualne projektowanie układu, co redukuje potrzebę ręcznego kodowania. Przy tworzeniu stron internetowych zgodnie z dobrymi praktykami, edytory WYSIWYG powinny wspierać standardy HTML i CSS, co zapewnia, że efekty wizualne są zgodne z tym, co użytkownik zobaczy w przeglądarce. Takie podejście zwiększa efektywność pracy, a także ułatwia współpracę między programistami a designerami.

Pytanie 32

Aby utworzyć relację wiele do wielu między tabelami A i B, wystarczy, że

A. połączenie tabeli A z tabelą B nastąpi poprzez określenie kluczy obcych
B. tabela A będzie miała identyczne pola jak tabela B
C. zostanie zdefiniowana trzecia tabela z kluczami obcymi do tabel A i B
D. wiele wpisów z tabeli A powtórzy się w tabeli B

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź, że należy zdefiniować trzecią tabelę z kluczami obcymi do tabel A i B, jest poprawna, ponieważ relacja wiele do wielu wymaga pośrednictwa trzeciej tabeli, często nazywanej tabelą asocjacyjną lub łączącą. W praktyce oznacza to, że każdy rekord w tabeli A może być powiązany z wieloma rekordami w tabeli B i vice versa. Tabela asocjacyjna zawiera co najmniej dwa pola kluczy obcych: jedno wskazujące na odpowiedni rekord w tabeli A i drugie na odpowiadający mu rekord w tabeli B. Na przykład, w systemie zarządzania kursami, tabela 'Studenci' i tabela 'Kursy' mogą być połączone poprzez tabelę 'Rejestracje', która przechowuje identyfikatory studentów i kursów, umożliwiając przypisanie wielu studentów do wielu kursów. To podejście jest zgodne z zasadami normalizacji baz danych, które mają na celu minimalizację redundancji i zapewnienie spójności danych. Dobrą praktyką jest również zapewnienie, że klucze obce w tabeli asocjacyjnej są odpowiednio indeksowane, co poprawia wydajność zapytań oraz umożliwia łatwe zarządzanie relacjami.

Pytanie 33

Aby baza danych działała poprawnie i konsekwentnie, konieczne jest wprowadzenie w każdej tabeli

A. klucza FOREIGN KEY z wartością NOT NULL
B. kluczy PRIMARY KEY i FOREIGN KEY
C. klucza obcego z wartością NOT NULL i UNIQUE
D. klucza PRIMARY KEY z wartością NOT NULL i UNIQUE

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W kontekście baz danych, klucz PRIMARY KEY jest fundamentalnym elementem struktury każdej tabeli, ponieważ zapewnia unikalną identyfikację rekordów. Klucz ten musi spełniać dwie podstawowe zasady: być unikalny oraz nie pozwalać na wartości NULL. Dzięki temu każda linia w tabeli może być jednoznacznie zidentyfikowana, co jest niezbędne do zapewnienia integralności danych oraz efektywności operacji CRUD (tworzenie, odczyt, aktualizacja, usuwanie). Przykładem zastosowania klucza PRIMARY KEY może być tabela 'Użytkownicy', w której kolumna 'ID_Użytkownika' pełni rolę klucza głównego, zapewniając, że każdy użytkownik ma unikalny identyfikator. Wartości NULL w kluczu głównym byłyby problematyczne, ponieważ uniemożliwiałyby identyfikację danego rekordu. Dodatkowo, klucz ten może być użyty w relacjach między tabelami, gdzie klucz FOREIGN KEY w innej tabeli nawiązuje do PRIMARY KEY, tworząc spójną strukturę danych. Ustanawiając klucz PRIMARY KEY, projektanci baz danych mogą również efektywnie korzystać z indeksów, co przyspiesza operacje wyszukiwania oraz zwiększa wydajność bazy danych.

Pytanie 34

W algorytmie jeden z bloków zawiera akcję „Wypisz liczbę”. Jaki kształt może mieć ta akcja?

Ilustracja do pytania
A. Kształt 1
B. Kształt 4
C. Kształt 3
D. Kształt 2

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Kształt 1 jest równoległobokiem, który w kontekście algorytmów często reprezentuje operacje wprowadzania lub wyprowadzania danych. W algorytmach i schematach blokowych, różne kształty mają przypisane konkretne funkcje, co jest standardem w projektowaniu programów. Równoległobok jest standardowym symbolem dla operacji wejścia i wyjścia, w tym wypisywania danych na ekranie. Przykładem zastosowania tego może być wypisywanie wyników obliczeń matematycznych na konsoli w językach takich jak Python czy Java. Używanie odpowiednich kształtów pozwala na łatwiejsze zrozumienie działania algorytmu przez innych programistów, co jest kluczowe w pracy zespołowej i podczas dokumentacji projektowej. Dobre praktyki w programowaniu zalecają jasność i przejrzystość schematów blokowych, co ułatwia ich późniejsze utrzymanie i rozwój. Szukając standardów, warto odnieść się do norm ISO/IEC 19515:2017 dotyczących diagramów przepływu pracy, które podkreślają znaczenie konwencji w projektowaniu algorytmów.

Pytanie 35

Który z typów danych w C++ oferuje najszerszy zakres wartości?

A. long long
B. int
C. long int
D. short

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Typ danych 'long long' w języku C++ jest często używany do przechowywania dużych liczb całkowitych. W standardzie C++11 i późniejszych, 'long long' jest gwarantowanym typem danych, który może pomieścić co najmniej 64 bity, co pozwala na przechowywanie wartości w zakresie od -9 223 372 036 854 775 808 do 9 223 372 036 854 775 807. Jest to znaczące w kontekście obliczeń, gdzie mogą występować duże liczby, na przykład w aplikacjach finansowych, przetwarzaniu danych lub obliczeniach naukowych. Korzystanie z tego typu danych jest zgodne z dobrymi praktykami programistycznymi, ponieważ pozwala na unikanie przepełnienia zmiennej, co może prowadzić do nieprzewidywalnych wyników. Warto również zauważyć, że w przypadku używania dużych wartości, należy zwrócić uwagę na właściwe zarządzanie pamięcią oraz wydajnością aplikacji. Przykładem zastosowania 'long long' może być program do obliczania faktorialu dużych liczb, gdzie standardowe typy danych mogłyby nie wystarczyć. Zastosowanie 'long long' zapewnia większą elastyczność w obliczeniach i zwiększa bezpieczeństwo kodu.

Pytanie 36

Która z poniższych zasad nie przyczyni się pozytywnie do poprawy czytelności kodu?

A. Kod powinien być napisany bez wcięć i zbędnych przejść do nowej linii
B. Nazwy zmiennych muszą odzwierciedlać ich funkcję
C. Każda linia kodu powinna zawierać jedynie jedną instrukcję
D. Należy dodawać komentarze w bardziej skomplikowanych fragmentach kodu

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź, że kod powinien być napisany bez wcięć i zbędnych enterów jest prawidłowa, ponieważ brak odpowiedniego formatowania negatywnie wpływa na czytelność kodu. Wcięcia są kluczowe w wielu językach programowania, takich jak Python, gdzie struktura kodu jest oparta na przestrzeniach, a nie na nawiasach. Wcięcia pomagają zaznaczyć hierarchię oraz zagnieżdżenie bloków kodu, co jest niezbędne do zrozumienia logiki działania programu. W praktyce, dobrze sformatowany kod, z użyciem wcięć i odpowiednich przerw, pozwala programistom szybko zrozumieć jego strukturę i funkcjonalność. Przykładem mogą być fragmenty kodu, gdzie funkcje są wyraźnie oddzielone od siebie, a pętle i warunki są poprawnie wcięte, co ułatwia ich analizę i modyfikację. Zgodnie z konwencjami PEP 8 dla Pythona oraz zasadami wielu innych języków, stosowanie wcięć oraz przestrzeni między blokami kodu to standardy, które znacznie poprawiają jakość kodu oraz jego czytelność.

Pytanie 37

Jak można opisać przedstawiony obiekt w JavaScript?

var obiekt1 = {
  x: 0,
  y: 0,
  wsp: function() { ... }
}

A. dwiema właściwościami i jedną metodą
B. trzema właściwościami
C. dwiema metodami i jedną właściwością
D. trzema metodami

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Obiekt w języku JavaScript to struktura danych, która przechowuje zbiór właściwości, gdzie każda właściwość jest parą klucz-wartość. W podanym przykładzie mamy obiekt o nazwie 'obiekt1' zdefiniowany za pomocą literału obiektowego. Składa się on z dwóch właściwości 'x' i 'y', które mają przypisane wartości liczby całkowitej zero oraz jednej metody 'wsp', która jest funkcją. Właściwości 'x' i 'y' są prostymi wartościami liczbowymi, a metoda 'wsp' jest zdefiniowana jako funkcja, co oznacza, że można ją wywoływać, aby wykonywać pewne operacje. Tego typu struktury są często używane w JavaScript do tworzenia obiektów reprezentujących dane, jak współrzędne punktów na płaszczyźnie. Dzięki możliwości definiowania metod, obiekty mogą wykonywać operacje na swoich danych, co jest zgodne z zasadami programowania obiektowego. Dzięki zrozumieniu tej struktury, programista może efektywnie zarządzać danymi i logiką aplikacji, stosując dobre praktyki takie jak enkapsulacja i modularność kodu.

Pytanie 38

Aby obraz umieszczony za pomocą kodu HTML mógł być rozpoznawany przez programy wspierające osoby niewidome, konieczne jest określenie atrybutu

A. border
B. src
C. alt
D. sizes

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Atrybut 'alt' (alternatywny tekst) jest kluczowym elementem w kontekście dostępności stron internetowych, szczególnie dla osób niewidzących. Jego głównym celem jest dostarczenie opisowej informacji o obrazie, który nie może być bezpośrednio widziany. W przypadku obrazów, które nie są widoczne z różnych powodów (np. uszkodzenie pliku, brak połączenia internetowego lub korzystanie z czytników ekranu), tekst alternatywny pomaga zrozumieć kontekst i znaczenie danego obrazu. Przykład zastosowania: dla obrazka przedstawiającego logo firmy, można użyć atrybutu alt w następujący sposób:Logo firmy XYZ. W ten sposób, jeśli obrazek nie załadowałby się, użytkownik korzystający z czytnika ekranu otrzyma informację o tym, co ten obraz przedstawia. Definiowanie atrybutu 'alt' jest zgodne z wytycznymi WCAG (Web Content Accessibility Guidelines), które zalecają, aby wszystkie obrazki, które pełnią funkcję informacyjną, były opisane w taki sposób, aby zapewnić pełny dostęp do treści wszystkim użytkownikom. W praktyce takie podejście nie tylko poprawia dostępność, ale również pozytywnie wpływa na SEO, ponieważ wyszukiwarki również analizują ten atrybut.

Pytanie 39

Zapis tagu HTML w formie przejdź?

A. jest poprawny, po kliknięciu w odnośnik otworzy się strona internetowa o adresie "hobby"
B. jest błędny, niepoprawnie użyto znaku "#" w atrybucie href
C. jest błędny, w atrybucie href trzeba wpisać adres URL
D. jest poprawny, po kliknięciu w odnośnik aktualna strona zostanie przewinięta do elementu o nazwie "hobby"
Myślenie, że znacznik przejdź jest błędny, bo używasz znaku '#' w href, jest trochę mylące. Ten znak '#' to normalny sposób, żeby wskazać lokalne odnośniki na tej samej stronie, co jest zgodne z regułami HTML. Nie jest prawdą, że musi być cały adres URL, bo lokalne identyfikatory są jak najbardziej w porządku. Często spotykam się z przekonaniem, że href zawsze powinien prowadzić do zewnętrznego linku, a to nieprawda. Wiele stron korzysta z lokalnych linków, co naprawdę sprawdza się w długich treściach, pozwalając użytkownikom szybko przechodzić do tych sekcji, które ich interesują. Nie można też myśleć, że tylko absolutne identyfikatory w href są jedynym słusznym rozwiązaniem, bo to podejście z lokalnymi odnośnikami jest powszechnie akceptowane i sprawdza się w praktyce.

Pytanie 40

Na przedstawionej grafice widać fragment bazy danych. Jakie kwerendę należy zastosować, aby uzyskać nazwy produktów zakupionych przez klienta o id = 1?

Ilustracja do pytania
A. SELECT nazwa FROM produkty JOIN transakcje ON nr_produktu = nr_klienta WHERE nr_klienta = 1
B. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) WHERE nr_klienta = 1
C. SELECT nazwa FROM produkty JOIN transakcje_produkty JOIN transakcje WHERE nr_klienta = 1
D. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) JOIN transakcje USING(nr_transakcji) WHERE nr_klienta = 1
Prawidłowa odpowiedź używa właściwego połączenia tabel baz danych aby otrzymać nazwy produktów zakupionych przez klienta o konkretnym identyfikatorze. W SQL kwerenda z JOIN umożliwia łączenie danych z więcej niż jednej tabeli na podstawie wspólnego pola. W tym przypadku tabela produkty jest połączona z transakcje_produkty przez pole nr_produktu oraz tabela transakcje jest połączona z transakcje_produkty przez pole nr_transakcji. Dzięki temu możliwe jest uzyskanie pełnego obrazu transakcji dla klienta o id = 1. Zastosowanie USING(nr_produktu) i USING(nr_transakcji) upraszcza kwerendę eliminując konieczność jawnego określania kolumn po obu stronach klauzuli ON. Praktyczne zastosowanie takich kwerend jest podstawą w analizie danych sprzedażowych gdzie analiza historii zakupów klientów może dostarczyć cennych informacji dla działów marketingu oraz logistyki. Dobre praktyki obejmują również optymalizację zapytań SQL aby były jak najbardziej efektywne co jest kluczowe przy pracy z dużymi zbiorami danych.