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: 11 maja 2026 01:48
  • Data zakończenia: 11 maja 2026 02:11

Egzamin niezdany

Wynik: 15/40 punktów (37,5%)

Wymagane minimum: 20 punktów (50%)

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

Na zaprezentowanej tabeli dotyczącej samochodów wykonano zapytanie SQL SELECT ```SELECT model FROM samochody WHERE rocznik=2016;``` Jakie wartości zostaną zwrócone w wyniku tego zapytania?

Ilustracja do pytania
A. Fiat, Opel, Toyota
B. Punto, Corsa, Astra, Corolla, Yaris
C. Punto, Corsa, Corolla
D. Czerwony, grafitowy
Zapytanie SQL, które podałeś, czyli SELECT model FROM samochody WHERE rocznik=2016, jest zaprojektowane tak, żeby wyciągnąć z tabeli samochody wszystkie modele aut z rocznika 2016. To ogranicza wynik tylko do tych modeli, które spełniają ten właśnie warunek. Patrząc na dostarczoną tabelę, widzimy, że modele z rocznika 2016 to Punto, Corsa i Corolla. Więc z tego zapytania otrzymamy tylko te trzy modele. W realnym świecie, zapytania SQL są mega przydatne przy filtrowaniu danych w bazach. Zrozumienie, jak pisać zapytania SELECT, jest naprawdę ważne, zwłaszcza dla analityków i administratorów. Dobrze jest znać zasady budowania zapytań, żeby były one jasne i precyzyjne, bo to pozwala lepiej zarządzać i analizować dane. Ta wiedza to podstawa w analizie danych, gdzie umiejętność wyciągania odpowiednich informacji jest kluczowa do podejmowania dobrych decyzji biznesowych.

Pytanie 2

Jakie będzie działanie po naciśnięciu przycisku oznaczonego jako "niebieski", który uruchamia podany kod JavaScript?

<p id="para1">Przykładowy tekst</p><p> i skrypt</p>
<button onClick="changeColor('blue');">niebieski</button>

<script type="text/javascript">
function changeColor(newColor)
{
var elem = document.getElementById("para1");
elem.style.color = newColor;
}
</script>
A. Zmiana barwy przycisku na niebieski
B. Zmiana koloru tekstu "Przykładowy tekst i skrypt" na niebieski
C. Zmiana koloru tekstu "Przykładowy tekst" na niebieski
D. Zmiana koloru tekstu "i skrypt" na niebieski
Przy analizie działania kodu przedstawionego w pytaniu istotne jest zrozumienie jak JavaScript oddziałuje z elementami DOM (Document Object Model). Istnieje powszechne nieporozumienie polegające na założeniu że funkcje JavaScript automatycznie działają na wszystkie elementy o podobnej treści. W rzeczywistości kod używa metody document.getElementById która jednoznacznie identyfikuje element na podstawie jego unikalnego Id. W omawianym przypadku odnosi się to do elementu paragrafu z identyfikatorem para1. Pozostałe fragmenty tekstu takie jak i skrypt nie są objęte tym działaniem gdyż nie są częścią identyfikowanego elementu. Popularnym błędem jest również zakładanie że przycisk zmienia swój własny kolor styli po naciśnięciu co w tym przypadku nie ma miejsca ponieważ kod bezpośrednio modyfikuje jedynie własności stylu określonego elementu przez jego Id. Warto zwrócić uwagę że dla złożonych manipulacji DOM w kontekście większych aplikacji webowych używa się bardziej zaawansowanych technik jak selektory CSS lub biblioteki takie jak jQuery które umożliwiają selekcję wielu elementów jednocześnie. Zrozumienie tych podstawowych zasad jest kluczowe dla poprawnego rozumienia i implementacji funkcji JavaScript w nowoczesnych aplikacjach webowych i zgodne z najlepszymi praktykami w branży.

Pytanie 3

Rekord w bazie danych identyfikowany jest jednoznacznie przez pole

A. relacji
B. numeryczne
C. klucza podstawowego
D. klucza obcego
Klucz obcy jest to pole, które odnosi się do klucza podstawowego innej tabeli w celu utworzenia relacji pomiędzy nimi. Jego głównym celem jest zapewnienie integralności referencyjnej, co oznacza, że pozwala na łączenie danych z różnych tabel. Dlatego klucz obcy nie może być użyty jako jednoznaczny identyfikator rekordu w danej tabeli, gdyż nie gwarantuje on unikalności, a jedynie odniesienie do innego rekordu. Numeryczne pole samo w sobie nie jest wystarczające do identyfikacji rekordu, ponieważ nie każde pole numeryczne jest unikalne. Pola numeryczne mogą zawierać powtarzające się wartości, co czyni je niewłaściwym wyborem na identyfikator rekordu. Relacje, mimo że są kluczowym elementem w strukturze baz danych, nie są specyficznymi polami, które mogłyby pełnić rolę klucza. Relacje definiują, jak różne tabele interagują ze sobą, ale nie identyfikują konkretnych rekordów. W związku z tym, żadne z wymienionych pól nie mogą pełnić roli jednoznacznego identyfikatora rekordu w bazie danych, poza kluczem podstawowym, który jest fundamentalnym elementem relacyjnych baz danych.

Pytanie 4

Zdefiniowanie klucza obcego jest niezbędne do utworzenia

A. relacji 1..1.
B. klucza podstawowego.
C. relacji 1..n.
D. transakcji.
W tym pytaniu łatwo się pomylić, bo wszystkie odpowiedzi zahaczają o tematykę baz danych, ale tylko jedna dotyczy faktycznego zastosowania klucza obcego. Klucz obcy w relacyjnej bazie danych służy do wiązania tabel ze sobą i pilnowania integralności referencyjnej. To oznacza, że jego główna rola to powiązanie rekordów: jeden rekord w tabeli nadrzędnej może mieć wiele powiązanych rekordów w tabeli podrzędnej. To jest właśnie relacja 1..n – najczęściej spotykana w normalnych systemach (np. jeden klient, wiele zamówień; jeden autor, wiele książek). Częsty błąd polega na kojarzeniu klucza obcego z transakcjami. Transakcje w SQL (BEGIN, COMMIT, ROLLBACK) to zupełnie inny mechanizm – służą do zapewnienia atomowości, spójności, izolacji i trwałości operacji (tzw. ACID). Można mieć transakcje w bazie nawet wtedy, gdy w ogóle nie ma żadnych kluczy obcych. Klucz obcy nie jest wymagany do rozpoczęcia czy wykonania transakcji, to po prostu inna warstwa logiki. Zdarza się też, że ktoś myli klucz obcy z kluczem podstawowym i myśli, że klucz obcy jest potrzebny do jego utworzenia. Jest dokładnie odwrotnie: najpierw definiuje się klucz podstawowy w tabeli nadrzędnej, a dopiero potem w innej tabeli tworzy się klucz obcy, który się do tego klucza podstawowego odwołuje. Klucz podstawowy identyfikuje jednoznacznie rekord w swojej tabeli, klucz obcy tylko wskazuje na ten rekord z innej tabeli. Jeśli chodzi o relacje 1..1, to one również mogą być realizowane za pomocą kluczy obcych, ale pytanie używa słowa „niezbędne” i w kontekście typowych zastosowań oraz nauczania relacyjnych baz danych klucz obcy kojarzymy głównie z relacją 1..n. Relacja 1..1 jest rzadziej używana i zwykle wymaga dodatkowych ograniczeń (np. klucz obcy, który jest jednocześnie unikalny), więc to już bardziej specyficzny przypadek. Typowym, podręcznikowym i praktycznym zastosowaniem klucza obcego jest właśnie relacja jeden do wielu, i na to pytanie celuje. Z mojego doświadczenia największy problem polega na tym, że uczniowie mieszają pojęcia: transakcje, klucze, relacje, wszystko wrzucają do jednego worka. Warto je rozdzielić: klucz podstawowy – identyfikacja rekordu, klucz obcy – powiązanie między tabelami (relacje, głównie 1..n), transakcje – kontrola przebiegu operacji w bazie. Jak się to poukłada w głowie, projektowanie schematu bazy danych staje się dużo prostsze i bardziej logiczne.

Pytanie 5

Który z poniższych kodów XHTML sformatuje tekst zgodnie z podanym przykładem?

Ala ma kota
a kot ma Alę

A. <p>Ala ma <b>kota <br /> a <i>kot</i> ma Alę</p>
B. <p>Ala ma <b>kota</i><br/> a <b>kot</b> ma Alę</p>
C. <p>Ala ma <b>kota</b> <br/> a <b>kot</b> ma Alę</p>
D. <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p>
Odpowiedź <p>Ala ma <b>kota</b> <br/> a <i>kot</i> ma Alę</p> jest poprawna, ponieważ zgodnie z zasadami XHTML, użycie znaczników <b> i <i> do formatowania tekstu jest odpowiednie; <b> stosowany jest do wyróżniania tekstu pogrubionego, a <i> do kursywy. W tej odpowiedzi zastosowano również poprawny znacznik <br/>, który jest samodzielnym znacznikiem i nie wymaga zamknięcia w parze. Zgodnie z dobrymi praktykami, kod XHTML powinien być poprawnie sformatowany, a każdy otwierający znacznik powinien mieć odpowiadający mu zamykający znacznik, chyba że jest to znacznik samodzielny, jak <br/>. Warto zaznaczyć, że XHTML wymaga również, aby wszystkie atrybuty były zapisane w formacie małych liter, co zostało spełnione w tej odpowiedzi. Przykład zastosowania tej wiedzy można znaleźć w tworzeniu stron internetowych, gdzie poprawne sformatowanie kodu HTML lub XHTML jest kluczowe dla prawidłowego wyświetlania treści w przeglądarkach.

Pytanie 6

Działaniem podanego kodu PHP będzie wypełnienie tablicy

$tab = array();
for ($i = 0; $i < 10; $i++) {
    $tab[$i] = rand(-100, 100);
}
foreach ($tab as $x) {
    if ($x < 0) {
        echo "$x ";
    }
}
A. 10 losowymi wartościami, a następnie wypisanie wartości ujemnych
B. kolejnymi liczbami od -100 do 100 i wypisanie wartości ujemnych
C. kolejnymi liczbami od 0 do 9 i ich wypisanie
D. 100 losowymi wartościami, a następnie wypisanie wartości dodatnich
Zakładając, że odpowiedzi są błędne, warto zwrócić uwagę na kilka aspektów. Pierwsza z błędnych odpowiedzi sugeruje, że tablica jest wypełniana kolejnymi liczbami od 0 do 9, co jest niezgodne z zamysłem kodu, gdzie wykorzystywana jest funkcja losująca 'rand', a nie sekwencyjne przypisywanie wartości. W efekcie zamiast wartości od 0 do 9, mamy do czynienia z liczbami losowymi z szerokiego zakresu. Ponadto, druga odpowiedź błędnie interpretuje, że tablica zawiera liczby od -100 do 100. Mimo że możliwe jest, aby tablica zawierała takie liczby, kod nie wypełnia jej w sposób sekwencyjny i nie gwarantuje, że wszystkie wartości będą ujemne. Ostatnia błędna odpowiedź odnosi się do 100 losowych wartości, co również jest niepoprawne, ponieważ w kodzie jedynie 10 losowych wartości jest generowanych i zapisywanych w tablicy. Wreszcie, kod koncentruje się na wypisywaniu wartości ujemnych, dlatego odpowiedzi dotyczące wartości dodatnich są również mylące. Nie można zatem mówić o sytuacji, w której wartości dodatnie są wypisywane, co podkreśla, że analiza i interpretacja kodu są kluczowe dla zrozumienia jego działania.

Pytanie 7

Podczas przechowywania hasła użytkownika serwisu internetowego (np. bankowości online), aby chronić je przed ujawnieniem, zazwyczaj stosuje się funkcję

A. abstrakcyjnych.
B. mieszających.
C. klucza.
D. cyklometrycznych.
Użycie klucza do zabezpieczenia haseł użytkowników w systemach takich jak bankowość internetowa jest kluczowym elementem zapewnienia prywatności i bezpieczeństwa danych. Funkcje klucza, takie jak szyfrowanie, pozwalają na przekształcenie haseł w nieczytelne ciągi znaków, które są niemożliwe do odtworzenia bez odpowiedniego klucza. Przykładem jest zastosowanie algorytmów takich jak AES (Advanced Encryption Standard), które są szeroko uznawane i stosowane w branży. Dobre praktyki w zakresie zabezpieczania danych sugerują używanie silnych, losowych kluczy oraz regularne ich aktualizowanie. Ponadto, najnowsze standardy, takie jak NIST (National Institute of Standards and Technology), rekomendują stosowanie dodatkowych technik, takich jak solenie haseł, co zwiększa ich odporność na ataki. Dzięki temu, nawet w przypadku wycieku bazy danych, potencjalny atakujący napotyka na trudności w odzyskaniu oryginalnych haseł. Zrozumienie i wdrożenie funkcji klucza jest niezbędne dla każdej organizacji, która pragnie skutecznie chronić wrażliwe dane swoich użytkowników.

Pytanie 8

W standardzie HDTV wykorzystywana jest rozdzielczość

A. 1920 x 1080 px
B. 720 x 480 px
C. 1280 x 1024 px
D. 704 x 576 px
Rozdzielczości 1280 x 1024 px, 704 x 576 px oraz 720 x 480 px nie spełniają kryteriów standardu HDTV, co jest kluczowe do zrozumienia. Rozdzielczość 1280 x 1024 px jest typowa dla monitorów komputerowych, a jej proporcje wynoszą 4:3, co już nie odpowiada współczesnym standardom wideo, które preferują szerokoekranowe proporcje 16:9. W przypadku 704 x 576 px, to rozdzielczość ta była stosowana w analogowej telewizji PAL, która nie oferuje tej samej jakości obrazu co cyfrowe standardy. Z kolei 720 x 480 px to rozdzielczość standardu DVD, który, mimo że był powszechnie używany, nadal nie osiąga jakości Full HD. Błędne rozumienie standardów rozdzielczości może prowadzić do niezadowolenia z jakości obrazu, gdy użytkownik oczekuje wyraźniejszego i bardziej szczegółowego obrazu. W dobie wzrostu popularności treści wideo w rozdzielczości Full HD, wybór niższych rozdzielczości, które są niezgodne z wymaganiami HDTV, może ograniczać przyjemność z oglądania. Zrozumienie tych rozdzielczości oraz ich zastosowania w różnych technologiach jest kluczowe dla świadomego wyboru sprzętu oraz treści, które chcemy konsumować.

Pytanie 9

Bitmapa stanowi obraz

A. analogowym
B. interakcyjnym
C. wektorowym
D. rastrowym
Bitmapa, znana również jako obraz rastrowy, jest zbiorem pikseli, gdzie każdy piksel ma przypisaną określoną wartość koloru. Tego rodzaju obrazy są powszechnie stosowane w grafice komputerowej i fotografii cyfrowej. Bitmapy wyróżniają się tym, że ich rozdzielczość jest stała, co oznacza, że powiększanie takiego obrazu skutkuje utratą jakości i pojawieniem się rozmycia. W przeciwieństwie do grafiki wektorowej, która opiera się na matematycznych równaniach i jest skalowalna bez utraty jakości, bitmapy są ograniczone do rozdzielczości, w jakiej zostały utworzone. Przykładem formatów obrazów rastrowych są JPEG, PNG, BMP oraz GIF. Praktyczne zastosowanie bitmap obejmuje edycję zdjęć przy użyciu oprogramowania, takiego jak Adobe Photoshop, gdzie możliwe jest manipulowanie każdym pikselem, co daje dużą swobodę w zakresie tworzenia obrazów. Standardy dotyczące obrazów rastrowych, takie jak sRGB czy Adobe RGB, definiują przestrzenie kolorów, co jest kluczowe dla zapewnienia spójności kolorystycznej w różnych urządzeniach wyświetlających.

Pytanie 10

W języku CSS, aby ustalić wewnętrzny górny margines, czyli przestrzeń pomiędzy elementem a jego otaczającym obramowaniem, należy zastosować komendę

A. padding-top
B. local-top
C. outline-top
D. border-top
W kontekście tego pytania, outline-top nie jest poprawną odpowiedzią, ponieważ właściwość outline w CSS nie definiuje marginesów czy odstępów, lecz obramowanie, które nie wpływa na układ elementu wewnątrz kontenera. Outline jest szczególnie przydatne do podkreślenia elementów w interakcji, np. podczas nawigacji za pomocą klawiatury, ale nie ma wpływu na przestrzeń wewnętrzną. Border-top również nie jest odpowiednim rozwiązaniem w tym przypadku. Właściwość border-top definiuje górną krawędź obramowania elementu, a nie wnętrze. Zastosowanie border-top wprowadza dodatkową linię, co nie spełnia roli marginesu wewnętrznego, a jedynie zmienia wizualny aspekt elementu. Co więcej, border ma wpływ na całkowite wymiary elementu, co może prowadzić do niezamierzonych efektów w układzie strony. Wreszcie, local-top nie istnieje jako właściwość w CSS, co czyni tę odpowiedź całkowicie niepoprawną. Takie sformułowanie jest mylące, ponieważ nie odnosi się do żadnej standardowej właściwości CSS i nie ma uznania w dokumentacji związanej z kaskadowymi arkuszami stylów. Zrozumienie, jak te właściwości działają w kontekście modelu pudełkowego CSS, jest kluczowe dla efektywnego projektowania stron internetowych.

Pytanie 11

Jakie zapytanie należy zastosować, aby pokazać tylko imię, nazwisko oraz ulicę wszystkich mieszkańców?

Ilustracja do pytania
A. SELECT imie, nazwisko, ulica FROM Mieszkancy JOIN Adresy ON Mieszkancy.Adresy_id = Adresy.id
B. SELECT imie, nazwisko, ulica FROM Mieszkancy, Adresy ON Mieszkancy.Adresy_id = Adresy.id
C. SELECT * FROM Mieszkancy JOIN Adresy ON Adresy.id = Mieszkancy.Adresy.id
D. SELECT * FROM Mieszkancy, Adresy ON Mieszkancy.id = Adresy.id
Niepoprawne podejścia wynikają głównie z braku zastosowania właściwego połączenia między tabelami lub wyboru odpowiednich kolumn. Pierwszym błędem jest użycie SELECT * bez szczegółowego określenia, jakie kolumny są potrzebne. Taki zapis powoduje, że zwracane są wszystkie kolumny z obu tabel, co jest nieefektywne i niezgodne z najlepszymi praktykami, zakładającymi minimalizację przetwarzanych danych. Ponadto, wykorzystanie przecinka zamiast JOIN wprowadza niepotrzebny chaos i może prowadzić do błędów, zwłaszcza w złożonych zapytaniach, gdzie konieczne jest połączenie większej liczby tabel. Druga odpowiedź zawiera niepoprawne użycie ON, które nie jest zgodne z zasadami SQL, co powoduje błędne wyniki lub nawet awarie zapytań. Brak jest również specyfikacji kolumn, co prowadzi do zwrócenia zbyt dużej ilości danych. Dodatkowo, błędnie skonstruowane połączenie prowadzi do niepoprawnego mapowania wierszy, przez co zwracane dane nie odzwierciedlają rzeczywistych relacji między mieszkańcami a adresami. Dobre praktyki nakazują, aby zawsze używać JOIN z wyraźnym określeniem kluczy obcych i głównych, co zapewnia właściwe mapowanie wierszy i minimalizację błędów. Ważne jest również, aby każdorazowo testować zapytanie pod kątem wydajności i poprawności, a także dbać o czytelność i zrozumiałość kodu SQL, co jest kluczowe w kontekście zespołowego rozwoju oprogramowania.

Pytanie 12

W języku CSS stworzono określony styl. Sekcja sformatowana tym stylem będzie miała obramowanie o szerokości

div {
    border: solid 2px blue;
    margin: 20px;
}
A. 20 px oraz marginesy wewnętrzne tego obramowania
B. 20 px oraz marginesy zewnętrzne tego obramowania
C. 2 px oraz marginesy zewnętrzne tego obramowania
D. 2 px oraz marginesy wewnętrzne tego obramowania
Wybór odpowiedzi która nie uwzględnia prawidłowego połączenia właściwości border i margin prowadzi do błędnych założeń Odpowiedzi które sugerują że marginesy znajdują się wewnątrz obramowania są mylące ponieważ w CSS właściwość padding odpowiada za marginesy wewnętrzne natomiast margin dotyczy przestrzeni na zewnątrz obramowania Częstym błędem jest mylenie tych dwóch pojęć co prowadzi do niepoprawnego stylizowania elementów na stronie internetowej W przypadku definicji CSS przedstawionej na obrazku właściwość margin jest ustawiona na 20px co oznacza że do każdego z boków elementu dodawane jest 20 pikseli przestrzeni na zewnątrz jego obramowania Obramowanie samo w sobie ma 2 piksele grubości co precyzyjnie określa border 2px Próby rozumienia tej definicji w kategoriach wewnętrznych marginesów są błędne i wynikają z niepoprawnego zrozumienia struktury boksu w CSS Poprawne zrozumienie różnic między margin i padding jest kluczowe dla prawidłowego stosowania stylów CSS w praktyce projektowania stron internetowych oraz dla uzyskania estetycznych i funkcjonalnych układów które poprawiają doświadczenie użytkownika poprzez właściwe zarządzanie przestrzenią i separacją elementów

Pytanie 13

W języku C++ utworzono zmienną: char zml;. Jak można przypisać jej wartość, zgodnie ze składnią tego języka?

A. zml = "wiadro";
B. zml = ' w ' ;
C. zml == 0x35;
D. zml[2] = 32;
Odpowiedzi zml == 0x35 oraz zml[2] = 32 są niepoprawne, ponieważ nie odpowiadają standardom przypisywania wartości zmiennej char w C++. W pierwszej odpowiedzi użyto operatora porównania '==', co skutkuje błędem, ponieważ zamiast przypisywać wartość, program sprawdziłby, czy zml jest równe wartości 0x35, co nie spełnia wymagań przypisania. Dodatkowo, wartość 0x35 reprezentuje znak '5' w kodowaniu ASCII, co nie może być zdefiniowane jako przypisanie do zmiennej char w oczekiwanym kontekście. Druga błędna odpowiedź wprowadza w błąd, ponieważ zml[2] sugeruje, że zmienna zml jest tablicą char, co jest niezgodne z jej deklaracją jako zmiennej pojedynczej. W C++, operacje na tablicach wymagają innego podejścia; nie można bezpośrednio przypisywać wartości w ten sposób do zmiennej char. Z kolei odpowiedź zml = "wiadro" jest niezgodna, gdyż próbuje przypisać łańcuch znaków do zmiennej char, co prowadzi do naruszenia reguł typów danych. Pojedynczy znak powinien być zamknięty w pojedynczych cudzysłowach, a nie w podwójnych, co prowadzi do błędu kompilacji i źle zrozumianej koncepcji wartości zmiennych w C++. Podstawowa zasada programowania w C++ polega na zgodności typów danych, a zrozumienie tej zasady jest kluczowe dla efektywnego programowania.

Pytanie 14

Element lub grupa elementów, która w jednoznaczny sposób identyfikuje każdy pojedynczy rekord w tabeli w bazie danych, nazywa się kluczem

A. przestawny
B. podstawowy
C. inkrementacyjny
D. obcy
Klucz inkrementacyjny to termin, który może być mylnie stosowany w kontekście kluczy podstawowych. Choć klucz podstawowy może być inkrementacyjny, co oznacza, że jego wartość rośnie w miarę dodawania nowych rekordów, nie jest to jego jedyna możliwa forma. Klucz podstawowy może być również złożony z kilku pól (klucz złożony) lub oparty na wartościach, które nie są inkrementowane. Z kolei klucz przestawny (ang. pivot key) to termin nieznany w klasycznej terminologii baz danych; nie odnosi się on do identyfikacji wierszy, a raczej do organizacji danych w tabelach przestawnych, które służą do agregacji danych. Klucz obcy (ang. foreign key) jest innym pojęciem, oznaczającym pole, które wskazuje na klucz podstawowy w innej tabeli i służy do zapewnienia powiązań między danymi, ale nie identyfikuje ono pojedynczych rekordów w danej tabeli. Typowe błędy w rozumieniu tych pojęć to mylenie ich ról oraz funkcji, co prowadzi do niewłaściwego projektowania baz danych, w którym integralność oraz relacje pomiędzy danymi są niewłaściwie zaimplementowane. Kluczowe jest, aby zrozumieć, że klucz podstawowy jest podstawowym komponentem dla każdej tabeli, a inne typy kluczy pełnią różne funkcje w kontekście relacji między danymi.

Pytanie 15

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

A. __open
B. __construct
C. __new
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 16

Jakie czynniki wpływają na wysokość dźwięku?

A. metoda wzbudzania drgań
B. częstotliwość drgań fali akustycznej
C. intensywność wzbudzenia drgań
D. czas oscylacji źródła dźwięku
To prawda, że czas drgania źródła dźwięku i sposoby, jakimi te drgania są wzbudzane, mają swoje znaczenie, ale nie wpływają one na wysokość dźwięku tak, jak to robi częstotliwość. Czas drgania to okres jednego cyklu drgania, a jego odwrotność to częstotliwość. Można by pomyśleć, że dłuższy czas drgania oznacza niższy dźwięk, ale to nie tak działa. W rzeczywistości to częstotliwość jest wyznacznikiem wysokości dźwięku. W muzyce, różne techniki, takie jak atak struny czy wibrato, mogą zmieniać brzmienie, ale nie mają wpływu na podstawową częstotliwość. Można też mówić o sile wzbudzenia drgań, co dotyczy amplitudy fali akustycznej, a to z kolei wpływa na głośność, a nie wysokość dźwięku. Często ludzie mylą głośność z wysokością, co może prowadzić do różnych nieporozumień. Na przykład, niektóre instrumenty mogą grać zarówno głośno, jak i cicho, ale na tej samej wysokości, co pokazuje, że te dwa aspekty dźwięku to zupełnie różne sprawy. Zrozumienie tych różnic to podstawa dla każdego, kto działa w akustyce czy inżynierii dźwięku.

Pytanie 17

Które z pól są umieszczone w formularzu?





Studia podyplomowe Kurs

A. Input(Text), Select, Input(Radio), Input(Radio), Input (Submit), Input(Reset)
B. Input(Text), Input(Checkbox), Select, Select, Input(Submit), Input(Reset)
C. Textarea, Select, Input(Radio), Input(Radio), Input(Reset), Input(Submit)
D. Textarea, Option, Input(Checkbox), Input(Checkbox), Input (Submit), Input(Reset)
Dobrze zrozumiałeś różne typy pól, które mogą pojawić się w formularzu html. Wybrana przez Ciebie odpowiedź składa się z różnych typów pól, które są często używane w formularzach internetowych. Pierwsze, Input(Text), jest podstawowym polem do wprowadzania tekstu, które jest szeroko stosowane do zbierania informacji od użytkowników, takich jak imię, nazwisko itp. Pole Select to lista rozwijana, która pozwala użytkownikowi wybrać jedną z wielu opcji. W tym przypadku, używane jest do wyboru województwa. Input(Radio) to przyciski wyboru, które umożliwiają wybór jednej opcji z kilku. W formularzu, są one używane do wyboru między 'Studia podyplomowe' a 'Kurs'. Input(Submit) to przycisk służący do wysyłania formularza, a Input (Reset) pozwala na wyczyszczenie wszystkich pól formularza. Wszystkie te elementy są zgodne ze standardami i dobrymi praktykami tworzenia formularzy html. Dobre zrozumienie tych elementów jest kluczowe do tworzenia efektywnych i użytkowników formularzy.

Pytanie 18

W języku JavaScript funkcja document.getElementById() ma na celu

A. zwrócić odnośnik do pierwszego elementu HTML o określonym id
B. pobrać dane z pola formularza i zapisać je do zmiennej id
C. umieścić tekst o treści 'id' na stronie internetowej
D. sprawdzić poprawność formularza z identyfikatorem id
Odpowiedzi, które nie zostały uznane za poprawne, zawierają nieprawidłowe interpretacje funkcji document.getElementById(). Pierwsza z nich sugeruje, że metoda ta wstawia tekst na stronie o treści 'id'. W rzeczywistości, metoda ta nie ma na celu wyświetlania lub wstawiania tekstu na stronę, lecz zwraca referencję do elementu z określonym id, co oznacza, że operacje na zawartości elementu muszą być wykonane oddzielnie poprzez inną metodę, np. innerHTML. Kolejna odpowiedź sugeruje, że metoda sprawdza poprawność formularza. Zgadza się, że walidacja formularzy jest kluczowym aspektem zarządzania danymi użytkowników, ale document.getElementById() nie przeprowadza walidacji, a jedynie umożliwia dostęp do elementów formularza, co można wykorzystać do walidacji, ale nie jest to jej pierwotna funkcja. Ostatnia z podanych odpowiedzi stwierdza, że metoda pobiera dane z pola formularza i wstawia je do zmiennej. Również jest to mylna interpretacja, ponieważ document.getElementById() nie przetwarza ani nie przechowuje danych, a jedynie pozwala na dostęp do elementu, z którego dane mogą być później pobrane przy użyciu odpowiednich właściwości, takich jak value w przypadku pól formularzy. Wszystkie te odpowiedzi wskazują na zrozumienie metody jako narzędzia do wstawiania lub walidacji danych, co jest niezgodne z faktycznym działaniem tej metody.

Pytanie 19

Po wykonaniu poniższego kodu JavaScript, co będzie przechowywać zmienna str2?

var str1 = "JavaScript";
var str2 = str1.substring(2,6);
A. avaS
B. nvaScr
C. vaScri
D. vaSc
W przypadku analizy kodu JavaScript kluczowym aspektem jest zrozumienie działania metody substring która służy do wyodrębniania fragmentów łańcuchów znaków. Metoda przyjmuje dwa parametry: indeks początkowy oraz opcjonalny indeks końcowy. W kontekście pytania błędnym podejściem jest niedokładna interpretacja tych indeksów. Pierwsza niepoprawna odpowiedź avaS zakłada że wyodrębniane są znaki od 0 do 3 co jest niezgodne z podanymi indeksami 2 i 6. Druga odpowiedź vaScri zakłada że metoda substring obejmuje znaki aż do indeksu 6 włącznie co jest błędnym zrozumieniem zakresu działania tej metody. Metoda substring kończy wybieranie na znaku poprzedzającym indeks końcowy dlatego indeks 6 nie jest uwzględniany przy wyborze znaków. Kolejna niepoprawna odpowiedź nvaScr próbuje wybrać znaki rozpoczynając od indeksu 1 co jest błędnym startowym punktem dla zakresu 2 do 6. W kontekście dobrych praktyk programistycznych istotnym jest zrozumienie że indeksowanie od zera ma wpływ na rezultaty metod operujących na łańcuchach znaków. Częstym błędem początkujących programistów jest nieuwzględnienie tego faktu co prowadzi do niepoprawnych wyników i błędów logicznych w aplikacjach. Znajomość tych zasad pozwala efektywnie wykorzystywać możliwości języka JavaScript w codziennej pracy programistycznej.

Pytanie 20

Jaką klauzulę należy użyć w instrukcji CREATE TABLE w SQL, żeby pole rekordu nie mogło być puste?

A. DEFAULT
B. NOT NULL
C. CHECK
D. NULL
Klauzula NOT NULL w poleceniu CREATE TABLE języka SQL służy do zapewnienia, że dane w danym polu rekordu nie mogą być puste. To oznacza, że podczas wstawiania nowych rekordów do tabeli, każde pole, które zostało zdefiniowane z tą klauzulą, musi zawierać wartość. Na przykład, jeśli mamy tabelę pracowników, w której kolumna 'nazwisko' jest zdefiniowana jako NOT NULL, to każde dodanie nowego pracownika do tej tabeli musi zawierać wartość w kolumnie 'nazwisko'. W praktyce jest to bardzo ważne, ponieważ pozwala na utrzymanie integralności danych i zapobiega sytuacjom, w których kluczowe informacje mogłyby zostać pominięte. Użycie NOT NULL jest zgodne z dobrymi praktykami projektowania baz danych, które podkreślają znaczenie pełnych i kompletnych danych. Zastosowanie tej klauzuli zwiększa jakość danych oraz ułatwia późniejsze operacje na tabeli, takie jak zapytania czy raporty.

Pytanie 21

W edytorze grafiki wektorowej zbudowano kształt, który składa się z dwóch figur: trójkąta oraz koła. Aby uzyskać ten kształt, po narysowaniu figur i ich odpowiednim ustawieniu, trzeba użyć funkcji

Ilustracja do pytania
A. różnicy
B. rozdzielenia
C. wykluczenia
D. sumy
Różnica, rozdzielenie i wykluczenie to operacje, które manipulują kształtami na różne sposoby, ale nie łączą ich w jeden obiekt. Różnica polega na tym, że usuwa się część jednego kształtu z drugiego, tworząc negatyw. Jest to przydatne, gdy trzeba mieć otwory lub przestrzenie w złożonym projekcie, ale nie działa, gdy chcemy połączyć kształty. Rozdzielenie to odseparowanie elementów ścieżki, co może być przydatne w bardziej zaawansowanej edycji, bo pozwala na manipulowanie każdą częścią niezależnie, ale to nie tworzy nowego, połączonego kształtu. Wykluczenie z kolei odnosi się do działania Boolowskiego, które tworzy kształt jako zewnętrzną obwiednię dwóch przecinających się elementów, bez obszarów wspólnych, co jest totalnym przeciwieństwem sumy. Czasem można się w tym pogubić, myląc podobnie brzmiące komendy lub zakładając, że wszystkie narzędzia do łączenia figur działają tak samo. Zrozumienie tych różnic jest ważne, żeby skutecznie korzystać z narzędzi graficznych i mieć dobrej jakości projekty, szczególnie gdy chodzi o profesjonalny druk czy publikacje, gdzie precyzja i czytelność są kluczowe.

Pytanie 22

W trakcie weryfikacji stron internetowych nie uwzględnia się

A. błędów w składni kodu
B. źródła pochodzenia narzędzi edytorskich
C. zgodności z różnymi przeglądarkami
D. działania hiperłączy
Walidacja stron internetowych obejmuje różnorodne aspekty techniczne, które są kluczowe dla prawidłowego funkcjonowania witryn w sieci. Analiza działania linków jest istotna, ponieważ sprawdza, czy odnośniki prowadzą do właściwych lokalizacji i czy nie prowadzą do stron błędów 404. Użytkownicy oczekują, że wszystkie interaktywne elementy na stronie będą działały bezproblemowo, a ich analiza pozwala na identyfikację potencjalnych problemów oraz ich szybką naprawę. Błędy składniowe w kodzie HTML lub CSS mogą prowadzić do nieprawidłowego renderowania strony w przeglądarkach, przez co użytkownicy mogą mieć trudności w jej przeglądaniu. Walidacja składni jest zatem niezbędna, aby zapewnić poprawne wyświetlanie zawartości oraz dostępność dla wszystkich użytkowników. Zgodność z przeglądarkami jest równie ważnym aspektem walidacji, ponieważ różne przeglądarki mogą interpretować kod na różne sposoby, co może prowadzić do niezgodności w wyświetlaniu strony. Testowanie zgodności z popularnymi przeglądarkami, takimi jak Chrome, Firefox, Safari czy Edge, jest kluczowe, aby zapewnić spójne doświadczenie użytkowników niezależnie od wybranego narzędzia do przeglądania internetu. W związku z tym, walidacja to kompleksowy proces, który koncentruje się na aspektach technicznych związanych z jakością kodu i doświadczeniem użytkownika.

Pytanie 23

Który z poniższych fragmentów kodu HTML5 zostanie uznany za niepoprawny przez walidator HTML?

A. <pre>&lt;p class= &quot;stl&quot; id= &quot;a&quot;&gt;tekst&lt;/p&gt;</pre>
B. <pre>&lt;p class= &quot;stl&quot;&gt;tekst&lt;/p&gt;</pre>
C. <pre>&lt;p class= &quot;stl&quot; style= &quot;color: #F00 &quot;&gt;tekst&lt;/p&gt;</pre>
D. <pre>&lt;p class= &quot;stl&quot;&gt;&lt;style&gt;.a{color:#F00}&lt;/style&gt;tekst&lt;/p&gt;</pre>
Odpowiedź, która została wskazana jako błędna, jest przykładem kodu HTML5, który nie spełnia standardów walidacji, ponieważ zawiera tag &lt;style&gt; wewnątrz tagu &lt;p&gt;. Zgodnie z wytycznymi HTML, tag &lt;style&gt; powinien znajdować się w sekcji &lt;head&gt; dokumentu, a nie w treści. Wstawianie stylów CSS bezpośrednio w treści elementu blokowego jest niepraktyczne i niezgodne z dobrymi praktykami, które zalecają separację treści od prezentacji. Dobrą praktyką jest stosowanie arkuszy stylów CSS do zewnętrznego formatowania dokumentów, aby zwiększyć ich dostępność i ułatwić późniejsze modyfikacje. Przykładowo, zamiast używać tagu &lt;style&gt; wewnątrz &lt;p&gt;, należy zdefiniować style w sekcji &lt;head&gt; lub w zewnętrznym pliku CSS, a następnie odwołać się do tych klas w treści dokumentu. W ten sposób utrzymujemy porządek w kodzie i zapewniamy, że będzie on zgodny z zaleceniami W3C, co przekłada się na lepszą kompatybilność z przeglądarkami i urządzeniami. Zatem, poprawne podejście polega na unikalnym zarządzaniu stylami oraz treściami, co jest kluczowe dla efektywnego tworzenia stron internetowych.

Pytanie 24

Aby cofnąć uprawnienia danemu użytkownikowi, należy użyć polecenia

A. DELETE
B. REVOKE
C. GRANT NO PRIVILEGES
D. DELETE PRIVILEGES
Wybór 'DELETE' do odbierania uprawnień to zły ruch, bo to polecenie służy do usuwania rekordów z tabel, a nie do zarządzania uprawnieniami. Ludzie często się mylą co do tego, a 'DELETE PRIVILEGES' brzmi trochę sensownie, ale w rzeczywistości to nie jest standardowa komenda w żadnym systemie baz danych. Można sobie to pomylić z 'REVOKE', co prowadzi do błędnych wniosków. Dodatkowo, 'GRANT NO PRIVILEGES' nie ma racji bytu, bo nie funkcjonuje jako polecenie w SQL. Zamiast tego, trzeba sięgać po 'REVOKE', żeby cofnąć konkretne uprawnienia. To typowy błąd, jakim jest mieszanie operacji na danych z operacjami na uprawnieniach, co może skutkować nieefektywnym zarządzaniem dostępem i zagrożeniami bezpieczeństwa. Ważne jest, żeby zrozumieć, że operacje na danych i zarządzanie uprawnieniami to zupełnie różne sprawy, co jest kluczowe do odpowiedniego administrowania bazą danych.

Pytanie 25

W danej tabeli pracownicy, polecenie MySQL eliminujące wszystkie wpisy, dla których nie została wypełniona kolumna rodzaj_umowy, ma następującą formę

A. DELETE pracownicy WHERE rodzaj_umowy = 'brak';
B. DROP pracownicy WHERE rodzaj_umowy IS NULL;
C. DELETE FROM pracownicy WHERE rodzaj_umowy IS NULL;
D. DROP pracownicy FROM rodzaj_umowy = 0;
W odpowiedziach, które zostały uznane za błędne, można dostrzec kilka istotnych nieporozumień dotyczących użycia poleceń SQL. Przykładowo, polecenie "DELETE pracownicy WHERE rodzaj_umowy = 'brak';" sugeruje, że chcesz usunąć pracowników z tabeli, którzy mają zaznaczoną wartość 'brak'. Jednak, w kontekście baz danych, wartość NULL jest odmienna od wartości tekstowej. NULL oznacza brak jakiejkolwiek wartości, co nie jest tożsame z wartością 'brak'. W związku z tym to zapytanie nie zwróci żadnych rezultatów, ponieważ nie identyfikuje rekordów, których pole 'rodzaj_umowy' jest puste. Inna odpowiedź, "DROP pracownicy WHERE rodzaj_umowy IS NULL;" jest również niepoprawna, ponieważ komenda DROP służy do usuwania całej tabeli, a nie poszczególnych rekordów. Zastosowanie WHERE w tym kontekście jest niewłaściwe, co prowadzi do całkowitego usunięcia tabeli, a nie do usunięcia tylko określonych wierszy. Z kolei "DROP pracownicy FROM rodzaj_umowy = 0;" także wykazuje fundamentalne błędy, ponieważ DROP jest używane do usuwania obiektów bazy danych, a nie do operacji na danych. Użycie FROM jest również niepoprawne w kontekście DROP, co wskazuje na niewłaściwe zrozumienie składni SQL. Tego rodzaju pomyłki mogą prowadzić do poważnych konsekwencji, takich jak utrata danych czy zniszczenie struktury bazy danych, dlatego niezwykle istotne jest zrozumienie podstawowych różnic między poszczególnymi poleceniami oraz ich zastosowaniem w praktyce.

Pytanie 26

Który z komponentów dokumentacji aplikacji powinien być zawarty w dokumentacji dla użytkownika?

A. Szczegółowy opis kodu źródłowego
B. Wyjaśnienie zastosowanych technologii oraz bibliotek
C. Opis algorytmów użytych w kodzie
D. Instrukcja obsługi funkcji systemu
Opis obsługi funkcji systemu jest kluczowym elementem dokumentacji użytkownika, ponieważ ma na celu dostarczenie końcowemu użytkownikowi informacji o tym, jak efektywnie korzystać z aplikacji. W dokumentacji tej powinny znajdować się instrukcje krok po kroku, przykłady zastosowań oraz wyjaśnienia dotyczące funkcji i interfejsu użytkownika. Przykładowo, jeśli aplikacja jest systemem zarządzania projektami, dokumentacja użytkownika powinna zawierać szczegółowe opisy, jak tworzyć nowe projekty, przypisywać zadania, zarządzać kalendarzem oraz generować raporty. Zgodnie z wytycznymi standardów dokumentacji, takich jak ISO/IEC/IEEE 26511, dokumentacja użytkownika powinna być pisana w sposób zrozumiały i przystępny, aby umożliwić użytkownikom szybkie przyswojenie informacji i skuteczne wykorzystanie aplikacji. Kluczowym celem takiej dokumentacji jest zminimalizowanie potrzeby wsparcia technicznego oraz zwiększenie satysfakcji użytkowników z korzystania z systemu.

Pytanie 27

Użytkownik podał adres nieistniejącego obiektu na serwerze. Próba nawiązania połączenia spowoduje wystąpienie błędu

A. 400
B. 404
C. 503
D. 500
Odpowiedź 404 jest poprawna, ponieważ oznacza, że serwer nie może znaleźć zasobu, którego żąda klient. W praktyce, gdy użytkownik próbuje uzyskać dostęp do nieistniejącej strony internetowej lub pliku, serwer zwraca kod błędu 404, co sygnalizuje, że dany adres URL jest nieprawidłowy. Jest to standardowy kod odpowiedzi HTTP, który jest powszechnie wykorzystywany w branży internetowej. Dobre praktyki wskazują, że strony 404 powinny być przyjazne użytkownikowi, na przykład poprzez sugerowanie alternatywnych linków lub przycisków do powrotu na stronę główną. Zrozumienie tego błędu jest istotne dla webmasterów oraz deweloperów, którzy pracują nad utrzymaniem strony, ponieważ błędy 404 mogą wpłynąć na doświadczenie użytkownika oraz pozycjonowanie strony w wyszukiwarkach. Regularne monitorowanie i poprawa linków na stronie jest kluczowym aspektem optymalizacji SEO oraz zarządzania treścią.

Pytanie 28

Z tabeli mieszkancy trzeba wydobyć unikalne nazwy miast, w tym celu należy użyć wyrażenia SQL zawierającego klauzulę

A. DISTINCT
B. UNIQUE
C. HAVING
D. CHECK
Odpowiedź 'DISTINCT' jest prawidłowa, ponieważ klauzula ta w SQL służy do eliminacji duplikatów z wyników zapytania. Gdy chcemy uzyskać unikalne wartości z określonej kolumny, stosujemy 'SELECT DISTINCT nazwa_kolumny FROM nazwa_tabeli'. Na przykład, używając zapytania 'SELECT DISTINCT miasto FROM mieszkancy', otrzymamy jedynie unikalne nazwy miast bez powtórzeń. To podejście jest szczególnie przydatne w analizach, gdzie kluczowe jest posiadanie jedynie jednorazowych wartości, na przykład w raportach marketingowych czy badaniach demograficznych. W praktyce 'DISTINCT' powinno być używane z rozwagą, gdyż jego użycie może wpływać na wydajność zapytania, zwłaszcza w przypadku dużych zbiorów danych. Należy również pamiętać, że 'DISTINCT' dotyczy wszystkich kolumn w zapytaniu – jeśli wybierzemy więcej niż jedną kolumnę, to zduplikowane wiersze będą usuwane tylko wtedy, gdy wszystkie kolumny są identyczne. To sprawia, że 'DISTINCT' jest elastycznym narzędziem w SQL, pozwalającym na efektywne zarządzanie i przetwarzanie danych.

Pytanie 29

Jaką wartość zwróci funkcja ```empty($a);``` w języku PHP, gdy zmienna ```$a``` będzie miała wartość liczbową równą 0?

A. NULL
B. FALSE
C. 0
D. TRUE
Odpowiedzi, które wskazują, że funkcja empty() zwraca 0, FALSE lub NULL, są mylne z kilku powodów. Po pierwsze, wartość 0 w PHP to po prostu liczba i nie jest interpretowana jako pusta. Zmienne, które mają wartość 0 są traktowane jako fałszywe w kontekście logicznym, ale nie są uznawane za puste zgodnie z definicją funkcji empty(). Kiedy przyjmujemy, że empty($a) zwraca 0, w rzeczywistości mylimy funkcję empty() z innymi, które operują na wartościach liczbowych. Podobnie, FALSE jako wynik również nie jest poprawny; chociaż 0 jest uważane za fałszywe, empty() zwraca TRUE, a nie FALSE, gdy zmienna jest pusta. Także NULL to typ danych, a w kontekście empty() jest uznawany za pusty, ale nie jest to wynik, jaki uzyskalibyśmy dla zmiennej $a = 0. Właściwe zrozumienie zwrotów z funkcji PHP oraz typów danych jest kluczowe dla skutecznego programowania. Pomocne jest, aby programiści upewniali się, że korzystają z odpowiednich funkcji do określenia pustych wartości, a w przypadku empty() nie mogą pomylić jej działania z innymi funkcjami, które operują na wartościach logicznych lub liczbowych.

Pytanie 30

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. separacja
B. arbitraż
C. ignorowanie
D. kompromis
Wybór arbitrażu, separacji czy kompromisu jako technik rozwiązywania problemów jest często mylny, gdyż wiele osób nie dostrzega ich potencjalnych ograniczeń i ryzyk. Arbitraż, na przykład, może być postrzegany jako skuteczna metoda, ponieważ angażuje bezstronną osobę, która podejmuje decyzję w sprawie sporu. Jednakże, w praktyce, takie podejście może prowadzić do frustracji stron, które czują się wykluczone z procesu podejmowania decyzji, co z kolei może zwiększyć napięcie i niechęć do współpracy w przyszłości. Separacja, czyli fizyczne lub psychiczne oddzielenie stron, natomiast, może prowadzić do dalszego wyobcowania i braku komunikacji, co w dłuższej perspektywie osłabia zespół oraz zdolność do współpracy między działami. Z drugiej strony, kompromis, mimo że wydaje się być zrównoważonym rozwiązaniem, często prowadzi do niepełnego zaspokojenia potrzeb obu stron, co może w przyszłości powodować niezadowolenie i dalsze konflikty. Zastosowanie tych technik bez wcześniejszej analizy sytuacji oraz zrozumienia ich potencjalnych skutków może prowadzić do poważnych problemów w organizacji, a także do utraty zaufania między członkami zespołu. Dlatego kluczowe jest, aby w procesie rozwiązywania konfliktów opierać się na solidnych podstawach teoretycznych oraz praktycznych, takich jak te opisane w badaniach dotyczących dynamiki grup i zarządzania konfliktami.

Pytanie 31

Rodzaj programowania, w którym zestaw poleceń (sekwencja instrukcji) przekazywanych komputerowi postrzega się jako program, określa się mianem programowania

A. stanowego
B. logicznego
C. imperatywnego
D. funkcyjnego
Wybór stanowego programowania wskazuje na podejście, które koncentruje się na stanach obiektów i ich interakcjach, co jest nieco mylące w kontekście pytania. Programowanie stanowe opisuje systemy, w których różne stany obiektu są monitorowane, a zmiany stanów następują w odpowiedzi na określone zdarzenia. Typowe błędy myślowe mogą wynikać z mylenia interakcji stanów z sekwencją poleceń, co prowadzi do nieporozumienia na temat tego, jak działają programy imperatywne. Z kolei programowanie logiczne opiera się na zasadach logiki i regułach wnioskowania, co jest zupełnie innym podejściem niż imperatywne, w którym to programista musi układać instrukcje w określonej kolejności. Programowanie funkcyjne, z drugiej strony, skupia się na funkcjach jako podstawowych jednostkach budulcowych programów. Różni się ono od programowania imperatywnego, które ma na celu zmianę stanu programu poprzez sekwencję instrukcji. Zrozumienie różnic między tymi paradygmatami jest kluczowe, ponieważ każdy z nich ma swoje unikalne zastosowania i najlepsze praktyki. Programiści powinni być świadomi wyboru odpowiedniego paradygmatu do konkretnego problemu, aby maksymalizować efektywność i jakość kodu.

Pytanie 32

Wskaż zdanie, które jest nieprawdziwe w odniesieniu do poniższej definicji funkcji w języku C++? void zamien(float &x, float &y){ float tmp; tmp=x; x=y; y=tmp; }

A. Funkcja korzysta z parametrów przez referencję
B. Funkcja ma dwa argumenty
C. Funkcja zwraca jakąś wartość
D. Funkcja nie zwraca żadnej wartości
Wszystkie niepoprawne odpowiedzi zawierają błędne założenia dotyczące definicji i działania funkcji zamien. Po pierwsze, twierdzenie, że funkcja zwraca wartość, jest nieprawdziwe, ponieważ w definicji funkcji użyto słowa kluczowego 'void', co jednoznacznie wskazuje, że nie ma zwracanej wartości. W C++ funkcje, które zwracają wartości, muszą mieć określony typ, a brak takiego typu sugeruje, że funkcja nie zwraca żadnych danych. Drugie stwierdzenie, że funkcja nie zwraca wartości, jest rzeczywiście poprawne. Warto zauważyć, że w przypadku funkcji, która dokonuje jedynie zamiany wartości argumentów przez referencję, nie ma potrzeby zwracania wyniku, gdyż zmiany te są widoczne w zmiennych przekazanych do funkcji. Trzecia odpowiedź, która wskazuje, że funkcja posiada dwa parametry, jest również prawdziwa, ponieważ funkcja 'zamien' przyjmuje dwa argumenty typu 'float', które są przekazywane przez referencję. Odnosi się to do aspektu przekazywania argumentów, gdzie użycie referencji pozwala na modyfikację przekazywanych danych. Na koniec, czwarta odpowiedź, mówiąca, że funkcja odwołuje się do parametrów przez referencję, również jest poprawna. Przekazywanie przez referencję jest techniką, która umożliwia bezpośrednią manipulację zmiennymi zewnętrznymi, co zwiększa elastyczność i efektywność funkcji, zwłaszcza w kontekście operacji na dużych zbiorach danych. W związku z tym, analiza wszystkich odpowiedzi prowadzi do wniosku, że tylko pierwsze stwierdzenie jest błędne, ponieważ jasno pokazuje, że funkcja zamien nie zwraca żadnej wartości.

Pytanie 33

Tworzenie struktury logicznej strony internetowej polega na

A. określeniu adresów URL dla podstron serwisu
B. określeniu zawartości witryny
C. umiejscowieniu elementów w wyznaczonych lokalizacjach witryny
D. stworzonym zestawie grafik dla strony
Wiesz, wiele osób myli projektowanie witryny z robieniem grafik czy pisaniem treści. Całkiem to zrozumiałe, bo jest sporo różnych rzeczy związanych z tworzeniem stron. Jasne, grafiki są istotne, ale to nie wszystko, na czym się skupiamy, bo sama estetyka nie wystarczy, żeby strona była funkcjonalna. No i ustalanie adresów URL dla podstron też jest ważne, ale bardziej dotyczy struktury strony niż samego układu. Definiowanie treści to jedno, ale najważniejsze jest to, jak je prezentujemy. Często ludzie myślą, że układ i treść to to samo, a w rzeczywistości układ to to, jak treści są ułożone i jakie działania ułatwiają. Żeby dobrze zaprojektować stronę, trzeba spojrzeć na całość i zrozumieć, jakie funkcje ma spełniać, nie tylko skupiać się na pojedynczych grafikach czy tekstach. W moim odczuciu kluczowe jest, żeby myśleć o interakcji użytkownika z witryną - to wymaga umiejętności projektowania i analizy, by stworzyć efektywny interfejs.

Pytanie 34

W języku PHP funkcja trim służy do

A. Porównywania dwóch tekstów i wyświetlania ich wspólnej części
B. Określania długości tekstu
C. Redukowania długości tekstu o określoną w parametrze liczbę znaków
D. Usuwania białych znaków lub innych znaków wymienionych w parametrze z obu końców tekstu
Funkcja trim w języku PHP jest niezwykle użyteczna, ponieważ jej głównym zadaniem jest usuwanie białych znaków oraz innych znaków, które zostaną określone w parametrze, z obu końców łańcucha tekstowego. Oznacza to, że gdy mamy do czynienia z danymi wejściowymi, które mogą zawierać niepotrzebne spacje lub znaki specjalne na początku i końcu, funkcja trim pozwala na ich łatwe oczyszczenie. Przykładowo, jeśli mamy zmienną $text = ' Hello World! ', to wywołanie trim($text) zwróci 'Hello World!'. To podejście jest zgodne z dobrymi praktykami w programowaniu, gdzie ważne jest, aby dane były poprawnie sformatowane przed dalszym przetwarzaniem. Użycie funkcji trim może być szczególnie istotne w kontekście walidacji danych użytkownika, a także przy przetwarzaniu danych z formularzy HTML, gdzie niewłaściwe spacjowanie może prowadzić do błędów w logice aplikacji. Dodatkowo, trim może przyjmować drugi parametr, który pozwala na usunięcie konkretnych znaków, co daje programiście jeszcze większą elastyczność w manipulacji łańcuchami tekstowymi.

Pytanie 35

Jakie mechanizmy przydzielania zabezpieczeń, umożliwiające wykonywanie działań na bazie danych, są związane z tematyką zarządzania kontami, użytkownikami oraz ich uprawnieniami?

A. Z przywilejami obiektowymi
B. Z przywilejami systemowymi
C. Z zasadami
D. Z właściwościami
Zarządzanie dostępem do baz danych często opiera się na kilku koncepcjach, które jednak nie są właściwymi odpowiedziami na postawione pytanie. Reguły, jako mechanizmy kontroli dostępu, mogą definiować warunki, które muszą być spełnione, aby użytkownik mógł uzyskać dostęp do danych, jednakże same w sobie nie są odpowiednie do opisywania systemowego nadawania uprawnień. Reguły mogą być stosowane w kontekście bardziej skomplikowanych polityk bezpieczeństwa, ale nie są bezpośrednio związane z przywilejami systemowymi. Atrybuty, z drugiej strony, odnoszą się do cech lub właściwości obiektów w bazie danych, takie jak typ danych, długość czy wartość, ale nie mają one wpływu na systemowe zarządzanie uprawnieniami. W kontekście zabezpieczeń atrybuty mogą być używane w modelach opartych na atrybutach, ale nie są one kluczowe w kontekście przydzielania przywilejów. Przywileje obiektowe to zbiór uprawnień przypisanych do konkretnych obiektów, takich jak tabele czy widoki, które pozwalają użytkownikom na wykonywanie określonych operacji, jak SELECT, INSERT, UPDATE czy DELETE. Chociaż są one istotnym elementem ochrony danych, to jednak nie obejmują one szerszego zarządzania kontami i użytkownikami, które obejmuje również przywileje systemowe. W związku z tym, odpowiedzi te nie dostarczają pełnego obrazu mechanizmów zabezpieczeń stosowanych w zarządzaniu bazami danych.

Pytanie 36

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

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

Pytanie 37

W systemie baz danych sklepu komputerowego znajduje się tabela o nazwie komputery. Aby stworzyć raport, który wyświetla dane z tabeli dla komputerów z co najmniej 8 GB pamięci oraz procesorem Intel, można użyć kwerendy

A. SELECT * FROM komputery WHERE procesor = "Intel" OR pamiec < 8
B. SELECT * FROM komputery WHERE procesor = "Intel" AND pamiec < 8
C. SELECT * FROM komputery WHERE procesor = "Intel" OR pamiec >= 8
D. SELECT * FROM komputery WHERE procesor = "Intel" AND pamiec >= 8
Odpowiedź "SELECT * FROM komputery WHERE procesor = 'Intel' AND pamiec >= 8;" jest poprawna, ponieważ wykorzystuje operator AND do jednoczesnego spełnienia dwóch warunków: procesor musi być równy 'Intel', a pamięć musi wynosić co najmniej 8 GB. Taki zapis jest zgodny z najlepszymi praktykami w programowaniu zapytań SQL, którymi są m.in. precyzyjność oraz jednoznaczność. Dzięki użyciu operatora AND, zapytanie filtruje wyniki w sposób, który jest zgodny z wymaganiami użytkownika. W praktyce, takie kwerendy są niezwykle ważne dla analizy danych w bazach danych, ponieważ umożliwiają wyodrębnienie specyficznych informacji, które są krytyczne dla podejmowania decyzji biznesowych. Na przykład, w kontekście sklepu komputerowego, analiza komputerów z określonymi parametrami technicznymi może pomóc w lepszym dostosowaniu oferty do potrzeb klientów. Ponadto, rozumienie składni SQL oraz umiejętność formułowania efektywnych zapytań to kluczowa umiejętność dla specjalistów w dziedzinie zarządzania danymi.

Pytanie 38

Funkcja phpinfo() umożliwia:

A. sprawdzanie wartości zmiennych wykorzystanych w skrypcie PHP
B. uzyskanie informacji o środowisku pracy serwera obsługującego PHP
C. inicjowanie skryptu w języku PHP
D. analizowanie kodu PHP pod kątem błędów
Funkcja phpinfo() jest kluczowym narzędziem w ekosystemie PHP, które dostarcza szczegółowych informacji o konfiguracji środowiska, w którym działa PHP. Użycie tej funkcji pozwala deweloperom na uzyskanie danych takich jak wersja PHP, zainstalowane rozszerzenia, ustawienia konfiguracyjne, oraz dane o systemie operacyjnym. Przykładowo, deweloper może wykorzystać phpinfo() do szybkiego sprawdzenia, czy potrzebne rozszerzenie, takie jak GD lub cURL, jest zainstalowane na serwerze. Pozwoli to uniknąć problemów związanych z brakującymi funkcjami w kodzie. Ponadto, funkcja ta jest także pomocna w procesach rozwiązywania problemów, ponieważ umożliwia natychmiastowy wgląd w kluczowe zmienne konfiguracyjne, co jest zgodne z najlepszymi praktykami w zakresie zarządzania środowiskami aplikacji webowych. Warto jednak pamiętać, że phpinfo() powinno być używane ostrożnie i tylko w środowisku deweloperskim, aby nie ujawniać danych konfiguracyjnych w produkcji.

Pytanie 39

Na zaprezentowanym schemacie bazy danych biblioteka, elementy takie jak: czytelnik, wypożyczenie oraz książka stanowią

Ilustracja do pytania
A. krotki
B. encje
C. pola
D. atrybuty
Prawidłowo – na takim schemacie bazy danych „czytelnik”, „wypożyczenie” i „książka” to encje. W modelowaniu danych najpierw identyfikujemy obiekty świata rzeczywistego, które chcemy odwzorować w systemie. W przypadku biblioteki naturalnymi obiektami są właśnie czytelnik, książka i konkretne wypożyczenie. W notacji ERD (Entity‑Relationship Diagram) każdy z tych obiektów opisujemy jako encję, a potem dopiero dodajemy jej atrybuty oraz relacje z innymi encjami. Na schemacie widzisz trzy prostokąty – to są właśnie encje. Każda encja ma zestaw atrybutów: dla encji „czytelnik” są to np. imię, nazwisko, ulica, miejscowość; dla encji „książka” – tytuł, autor, rok wydania; dla encji „wypożyczenie” – daty wypożyczenia i zwrotu, klucze obce do czytelnika i książki. W relacyjnej bazie danych te encje są potem najczęściej odwzorowane jako tabele: tabela CZYTELNIK, WYPOZYCZENIE, KSIAZKA. To jest dokładnie zgodne z dobrymi praktykami projektowania: najpierw model koncepcyjny (encje i relacje), dopiero później model logiczny (tabele, klucze, typy danych). Z mojego doświadczenia przy każdym poważniejszym projekcie bazodanowym analitycy najpierw rysują diagram encji, bo to pomaga zrozumieć domenę biznesową. Dzięki poprawnemu rozróżnieniu encji od atrybutów można uniknąć błędów typu powtarzanie tych samych danych w wielu miejscach czy trudności z raportowaniem. W bibliotece na przykład wypożyczenie musi być osobną encją, bo opisuje zdarzenie w czasie, ma własne atrybuty (daty) i łączy dwie inne encje relacjami. Taki sposób modelowania jest zgodny z klasycznymi podręcznikami baz danych (model encja‑związek) oraz z zasadami normalizacji.

Pytanie 40

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

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