Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik programista
  • Kwalifikacja: INF.04 - Projektowanie, programowanie i testowanie aplikacji
  • Data rozpoczęcia: 9 stycznia 2025 16:58
  • Data zakończenia: 9 stycznia 2025 17:04

Egzamin zdany!

Wynik: 38/40 punktów (95,0%)

Wymagane minimum: 20 punktów (50%)

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

Jaki jest zasadniczy cel ataku phishingowego?

A. Zbieranie danych osobowych za pomocą podszywających się stron lub wiadomości
B. Zakłócanie pracy sieci przez nadmiarowe zapytania
C. Kradzież haseł z pamięci operacyjnej urządzenia
D. Uniemożliwienie dostępu do usług internetowych
Głównym celem ataku phishingowego jest przejęcie danych osobowych ofiary, co realizowane jest poprzez wykorzystanie fałszywych stron internetowych lub wiadomości. Atakujący tworzą atrakcyjne i wiarygodne kopie legalnych stron, często podszywając się pod znane instytucje bankowe, portale społecznościowe czy serwisy e-commerce. Użytkownik, nieświadomy zagrożenia, wprowadza swoje dane logowania, numery kart kredytowych lub inne wrażliwe informacje, które trafiają w ręce cyberprzestępców. Aby ułatwić ten proces, phisherzy często wykorzystują techniki inżynierii społecznej, takie jak fałszywe powiadomienia o konieczności weryfikacji konta. Przykłady skutecznych ataków phishingowych obejmują kampanie wysyłania e-maili, które informują użytkowników o rzekomych problemach z kontem, kierując ich na podszyte strony. Standardy bezpieczeństwa, takie jak DMARC, SPF i DKIM, są kluczowe dla ochrony przed tego rodzaju atakami, jednak ich brak lub niewłaściwe wdrożenie zwiększa podatność na phishing.

Pytanie 2

Czym jest klasa w programowaniu obiektowym?

A. typ danych
B. zmienna
C. wskaźnik
D. instrukcja
Klasa w programowaniu obiektowym jest typem danych, który pozwala na definiowanie własnych struktur zawierających pola (dane) i metody (funkcjonalność). Klasy są podstawą paradygmatu obiektowego i umożliwiają tworzenie obiektów, które są instancjami danej klasy. Klasa definiuje szablon dla obiektów, określając ich zachowanie i właściwości.

Pytanie 3

Jakie kwestie związane z percepcją są uwzględnione w rekomendacjach standardu WCAG 2.0?

A. umożliwienia interakcji między elementami użytkownika za pomocą klawiatury
B. prezentacji elementów interfejsu użytkownika
C. zapewnienia odpowiedniego czasu na zapoznanie się i przetworzenie informacji
D. jasności i dokładności w dostarczonych treściach na stronie
Rekomendacje WCAG 2.0 dotyczące percepcji koncentrują się na zapewnieniu dostępności treści dla wszystkich użytkowników, niezależnie od ich zdolności percepcyjnych. Obejmuje to m.in. dostarczanie tekstów alternatywnych dla obrazów, odpowiednie kontrasty i możliwość odczytu treści przez czytniki ekranowe. Percepcja jest jednym z kluczowych filarów dostępności i jej odpowiednie wdrożenie znacząco zwiększa użyteczność aplikacji i stron internetowych.

Pytanie 4

Wskaż fragment kodu, który wykreuje przedstawioną kontrolkę?

Ilustracja do pytania
A. Kod1
B. Kod3
C. Kod2
D. Kod4
Odpowiednim kodem do wygenerowania przedstawionej kontrolki jest Kod3 który korzysta z klasy RatingBar w Androidzie. RatingBar to bardzo przydatny element interfejsu użytkownika pozwalający użytkownikom na ocenę w skali gwiazdek. W tym przypadku RatingBar posiada atrybut android:rating ustawiony na 2.5 co oznacza że kontrolka wyświetli dwie pełne gwiazdki i jedną połowę co odpowiada przedstawionej grafice. Dodatkowo atrybut android:progressTint ustawiony na #4682B4 zmienia kolor gwiazdek na niebieski. Użycie RatingBar jest standardową praktyką w aplikacjach mobilnych dla zbierania opinii użytkowników. Ważne jest aby pamiętać że RatingBar może być konfigurowany do obsługi różnych wartości minimalnych i maksymalnych oraz do dostosowywania wyglądu za pomocą stylów i tematów. Dobrym zwyczajem jest dbanie o czytelność i intuicyjność interfejsu co osiąga się m.in. przez odpowiednie oznaczanie i rozmieszczanie kontrolek takich jak RatingBar.

Pytanie 5

Aplikacje funkcjonujące w systemach Android do komunikacji z użytkownikiem wykorzystują klasę

A. Screens
B. Windows
C. Activity
D. Fragments
W systemach Android do interakcji z użytkownikiem wykorzystywana jest klasa Activity, która reprezentuje pojedynczy ekran aplikacji. Activity zarządza cyklem życia aplikacji i pozwala na obsługę zdarzeń użytkownika, co jest kluczowym elementem w budowie aplikacji mobilnych.

Pytanie 6

Która z metod zarządzania projektami stawia na przejrzystość oraz wizualizację bieżących zadań?

A. Agile
B. Scrum
C. Kanban
D. Waterfall
Kanban to metodologia zarządzania projektami, która kładzie nacisk na transparentność i wizualizację pracy w toku (work in progress). Tablica Kanban, podzielona na kolumny oznaczające różne etapy realizacji zadań, pozwala na bieżąco śledzić postęp prac i identyfikować ewentualne blokady. Transparentność procesów umożliwia zespołowi optymalizację przepływu zadań i minimalizację zaległości. W Kanbanie ważna jest elastyczność i możliwość dostosowywania liczby zadań w toku (WIP), co pozwala na uniknięcie przeciążenia zespołu i zwiększenie produktywności.

Pytanie 7

Który fragment kodu ilustruje zastosowanie rekurencji?

Ilustracja do pytania
A. Blok 2
B. Blok 4
C. Blok 1
D. Blok 3
Blok 1 zawiera przykład użycia rekurencji, gdzie funkcja wywołuje samą siebie z innym parametrem, aż do spełnienia określonego warunku końcowego. Rekurencja jest powszechnie stosowana w algorytmach przeszukiwania, sortowania oraz rozwiązywania problemów podziel i zwyciężaj.

Pytanie 8

Jakie informacje mogą być zapisywane w cookies przeglądarki?

A. Preferencje użytkownika, takie jak język lub styl strony
B. Dane przechowywane w systemie baz danych
C. Prywatne dane użytkownika, na przykład hasła
D. Kod źródłowy aplikacji internetowej
Preferencje użytkownika, takie jak język strony, motyw kolorystyczny lub preferencje dotyczące układu, są typowymi danymi przechowywanymi w ciasteczkach przeglądarki. Mechanizm ciasteczek pozwala na personalizację doświadczenia użytkownika i jest szeroko stosowany w aplikacjach webowych w celu dostosowania interfejsu do indywidualnych potrzeb. Cookies umożliwiają także zapamiętywanie sesji użytkownika, co pozwala uniknąć konieczności wielokrotnego logowania. Informacje te są przechowywane lokalnie w przeglądarce użytkownika i mogą być odczytywane przez aplikację podczas każdej wizyty. Stosowanie ciasteczek zgodnie z przepisami, takimi jak RODO (GDPR), wymaga informowania użytkownika o ich przeznaczeniu oraz uzyskiwania jego zgody na ich przechowywanie, co zapewnia transparentność i zgodność z prawem.

Pytanie 9

Jakie czynniki powinny być brane pod uwagę podczas organizacji zasobów ludzkich w projekcie?

A. Umiejętności oraz doświadczenie członków zespołu
B. Jedynie dostępność technologii
C. Budżet projektu, bez uwzględnienia kompetencji zespołu
D. Wyłącznie techniczne wymagania projektu
Podczas planowania zasobów ludzkich w projekcie kluczowe jest uwzględnienie umiejętności i doświadczenia członków zespołu. Odpowiednie dopasowanie kompetencji do wymagań projektu ma ogromny wpływ na jakość i tempo realizacji zadań. Zespół o różnorodnych umiejętnościach jest bardziej elastyczny i lepiej radzi sobie z napotkanymi wyzwaniami. Analiza umiejętności pozwala na efektywne przydzielanie zadań, co zwiększa produktywność i redukuje ryzyko opóźnień.

Pytanie 10

Który z wymienionych elementów stanowi przykład złożonego typu danych?

A. int
B. bool
C. struct
D. char
Typ 'struct' w C++ to super sprawa, bo pozwala na trzymanie różnych danych pod jedną nazwą. Dzięki temu można łatwo zorganizować zmienne, które różnią się typami. Wyobraź sobie, że możesz stworzyć strukturę, która będzie reprezentować na przykład samochód z jego marką, rocznikiem i ceną. To naprawdę ułatwia pracę z danymi! Każde pole w strukturze może mieć inny typ, co czyni 'struct' bardzo uniwersalnym narzędziem do modelowania różnych obiektów, jak ludzie czy produkty. W zasadzie, to takie logiczne pudełko, do którego wrzucasz różne informacje i masz do nich szybki dostęp.

Pytanie 11

Kod funkcji "wykonaj()" przedstawiony powyżej weryfikuje, czy

Ilustracja do pytania
A. konkretny element (argument) jest obecny w tablicy liczb całkowitych
B. wszystkie elementy w tablicy odpowiadają wartości konkretnego elementu (argument)
C. w tablicy liczb całkowitych znajdują się jedynie wartości 4, 15, -2, 9, 202
D. konkretny element (argument) przypada w zakresie od 0 do 4
Sprawdzanie równości wszystkich elementów tablicy wymaga innego podejścia, które porównuje każdy element z jednym punktem odniesienia. Weryfikacja zakresów wartości odbywa się poprzez analizę wartości minimalnych i maksymalnych, co nie jest celem tej funkcji. Funkcja ta nie ogranicza tablicy do konkretnych wartości, takich jak 4, 15 czy 202, lecz analizuje pełen zakres danych.

Pytanie 12

Co należy zrobić w sytuacji silnego krwawienia z rany?

A. Poczekać, aż krwawienie ustanie samoistnie
B. Założyć opatrunek uciskowy oraz unieść kończynę powyżej poziomu serca
C. Przepłukać ranę wodą utlenioną i zostawić do wyschnięcia
D. Nałożyć elastyczny bandaż bez ucisku
Założenie opatrunku uciskowego i uniesienie kończyny powyżej poziomu serca to najskuteczniejszy sposób na zatrzymanie silnego krwotoku z rany. Opatrunek uciskowy powoduje mechaniczne zamknięcie naczyń krwionośnych, co spowalnia lub całkowicie zatrzymuje wypływ krwi. Podniesienie kończyny dodatkowo zmniejsza ciśnienie krwi w obszarze rany, co ogranicza krwawienie. Ważne jest, aby nie zdejmować opatrunku, nawet jeśli przesiąknie krwią – należy dołożyć kolejną warstwę materiału. W sytuacjach ekstremalnych, gdy opatrunek uciskowy nie zatrzymuje krwawienia, można zastosować opaskę uciskową (tzw. stazę), ale tylko w ostateczności, gdy inne metody zawiodą. Takie działania mogą zapobiec wstrząsowi krwotocznemu i uratować życie poszkodowanego.

Pytanie 13

Jakie jest przeznaczenie polecenia "git merge"?

A. Do pobierania aktualizacji zdalnego repozytorium
B. Do łączenia zmian z różnych gałęzi
C. Do usuwania zmian w repozytorium
D. Do zakładania nowego repozytorium
Polecenie 'git merge' służy do łączenia zmian z jednej gałęzi (branch) z inną. Najczęściej używane jest do scalenia gałęzi deweloperskich (feature branches) z gałęzią główną (main lub master). Git merge pozwala na integrację nowych funkcji z głównym kodem projektu, co jest kluczowe w pracy zespołowej. W przypadku konfliktów, Git wymaga ręcznego rozwiązania ich przed zakończeniem procesu scalania. Umożliwia to zachowanie porządku w kodzie i unikanie błędów, które mogłyby wyniknąć z niezgodnych zmian.

Pytanie 14

Wartości składowych RGB koloru #AA41FF zapisane w systemie szesnastkowym po przekształceniu na system dziesiętny są odpowiednio

A. 160, 64, 255
B. 170, 65, 255
C. 160, 65, 255
D. 170, 64, 255
Kolor #AA41FF w formacie RGB składa się z trzech komponentów: czerwony (AA - 170), zielony (41 - 65) i niebieski (FF - 255). Przekształcenie wartości szesnastkowych na dziesiętne pozwala na precyzyjne odwzorowanie koloru w różnych aplikacjach graficznych. Tego typu konwersje są kluczowe w projektowaniu stron internetowych i aplikacji, gdzie kolorystyka ma istotne znaczenie dla UX/UI.

Pytanie 15

Który z wymienionych mechanizmów umożliwia ograniczenie dostępu do wybranych sekcji aplikacji webowej?

A. Pliki CSS statyczne
B. System logowania i kontroli dostępu
C. Formularze dynamiczne
D. Mechanizm renderowania treści
System logowania i kontroli dostępu to kluczowy mechanizm, który pozwala na ograniczenie dostępu do niektórych części aplikacji webowej. Logowanie umożliwia uwierzytelnienie użytkowników i przypisanie im odpowiednich ról, co definiuje poziom dostępu do zasobów. Dzięki mechanizmom autoryzacji możliwe jest kontrolowanie, które funkcje lub sekcje aplikacji są dostępne dla poszczególnych użytkowników. Kontrola dostępu może być realizowana za pomocą tokenów JWT (JSON Web Token), sesji lub kluczy API, co zapewnia dodatkowe warstwy zabezpieczeń. Wdrożenie takich systemów jest nieodzowne w aplikacjach webowych oferujących różne poziomy funkcjonalności, takich jak panele administracyjne, portale użytkowników czy aplikacje bankowe. Odpowiednie zarządzanie uprawnieniami jest fundamentem bezpieczeństwa aplikacji.

Pytanie 16

Który z podanych terminów najlepiej odnosi się do składnika statycznego w klasie?

A. Funkcja, która wywołuje destruktor danej klasy
B. Pole lub metoda, która jest przypisana do klasy, a nie do jej instancji
C. Metoda z dostępem ograniczonym tylko do tej samej klasy
D. Zmienna lokalna wewnątrz danej klasy
Składnik statyczny klasy to pole lub metoda, która należy do klasy jako całości, a nie do konkretnego obiektu. Oznacza to, że istnieje tylko jedna kopia składnika statycznego współdzielona przez wszystkie obiekty tej klasy. Przykład w C++: `class Licznik { public: static int liczbaObiektow; }`. Zmienna `liczbaObiektow` przechowuje liczbę utworzonych instancji klasy i jest wspólna dla wszystkich obiektów. Składniki statyczne są często używane do implementacji liczników, zarządzania zasobami lub przechowywania danych globalnych w obrębie klasy.

Pytanie 17

Jaką istotną właściwość ma algorytm rekurencyjny?

A. Jest podzielony na wiele niezwiązanych funkcji
B. Wywołuje się wielokrotnie w jednej iteracji
C. Funkcjonuje tylko w przypadku tablic dynamicznych
D. Zawiera wywołanie samego siebie
Kluczową cechą algorytmu rekurencyjnego jest to, że zawiera on wywołanie samego siebie. Rekurencja pozwala na eleganckie i zwięzłe rozwiązanie problemów, które można podzielić na mniejsze, powtarzające się podproblemy. Każde wywołanie rekurencyjne zmniejsza złożoność problemu, aż do osiągnięcia przypadku bazowego, który kończy dalsze wywołania i rozpoczyna proces zwracania wyników w górę stosu wywołań. Rekurencja znajduje zastosowanie w algorytmach takich jak DFS (przeszukiwanie w głąb), sortowanie szybkie (QuickSort) oraz algorytmy obliczające wartości liczb Fibonacciego i silni.

Pytanie 18

Jakie polecenie w Gicie jest używane do zapisywania zmian w lokalnym repozytorium?

A. git commit
B. git clone
C. git push
D. git pull
Polecenie 'git commit' zapisuje zmiany w lokalnym repozytorium Git. Jest to kluczowy krok w procesie kontroli wersji, ponieważ każdy commit tworzy nową migawkę (snapshot) projektu, która może być w przyszłości przywrócona lub porównana z innymi wersjami. Polecenie to jest często używane razem z opcją -m, która umożliwia dodanie wiadomości opisującej zmiany. Dzięki temu możliwe jest efektywne śledzenie historii zmian w projekcie i przywracanie wcześniejszych wersji w razie potrzeby. Git commit to podstawowe narzędzie w pracy zespołowej nad kodem, szczególnie w środowisku deweloperskim, gdzie wersjonowanie jest niezbędne do zapewnienia stabilności kodu i łatwej współpracy.

Pytanie 19

Który z wymienionych poniżej przykładów stanowi system informacji przetwarzany przez system informatyczny?

A. System zarządzania oświetleniem drogowym
B. System PESEL
C. System wentylacyjny w biurowcach
D. System do monitorowania temperatury serwerów
System PESEL (Powszechny Elektroniczny System Ewidencji Ludności) jest przykładem systemu informacji przetwarzanym przez system informatyczny, ponieważ gromadzi, przetwarza i udostępnia dane osobowe obywateli Polski. Jest to złożony system, który działa na bazie zintegrowanych baz danych, umożliwiający identyfikację osób, przydzielanie numerów PESEL oraz zarządzanie informacjami o statusie mieszkańców. System ten jest niezbędny dla organów administracji publicznej, umożliwiając im efektywne zarządzanie danymi obywateli w kontekście takich usług, jak wydawanie dowodów osobistych, rejestracja wyborców, a także w kontekście ochrony zdrowia i ubezpieczeń społecznych. PESEL jest zgodny z Europejskim Ogólnochronnym Rozporządzeniem o Ochronie Danych Osobowych (RODO), co dodatkowo podkreśla jego rolę jako kluczowego systemu informacyjnego w obiegu danych w Polsce. Przykłady zastosowań systemu PESEL obejmują obsługę wniosków o świadczenia socjalne oraz dostęp do e-usług, co świadczy o jego fundamentalnym znaczeniu w administrowaniu danymi ludnościowymi.

Pytanie 20

Mobilna aplikacja przedstawia listę, w której każdy element można dotknąć palcem, aby zobaczyć jego detale. Zdarzenie, które odpowiada tej czynności, to

A. tapped.
B. toggled.
C. value changed.
D. button clicked.
Zdarzenie 'tapped' oznacza, że stuknęliśmy w coś na liście na naszym telefonie. To takie podstawowe zdarzenie, które przydaje się w aplikacjach mobilnych. Dzięki temu możemy wchodzić w interakcje z różnymi elementami, na przykład, gdy klikniemy na coś w liście, pojawią się dodatkowe szczegóły. Ta obsługa zdarzeń 'tap' jest naprawdę ważna w aplikacjach mobilnych, bo to w zasadzie główny sposób, w jaki poruszamy się po interfejsie.

Pytanie 21

Który z wymienionych typów kolekcji pozwala na dostęp do ostatnio dodanego elementu w pierwszej kolejności?

A. Kolejka
B. Stos
C. Lista
D. Tablica dwuwymiarowa
Stos to struktura danych działająca na zasadzie LIFO (Last In First Out), co oznacza, że ostatnio dodany element jest usuwany jako pierwszy. Stos znajduje zastosowanie w implementacji mechanizmu wywołań rekurencyjnych, zarządzaniu pamięcią oraz w operacjach związanych z cofaniem i przywracaniem stanu (np. cofanie operacji w edytorach tekstów). Dzięki swojej prostocie stosy są fundamentalnym elementem w programowaniu, szczególnie w językach niskopoziomowych.

Pytanie 22

W przedstawionej ramce znajduje się fragment opisu metody compile języka Java wykorzystywanej w kontekście wyrażeń regularnych. Który symbol powinien być użyty, aby znaleźć dopasowanie na końcu tekstu?

Ilustracja do pytania
A. ^
B. $
C. .
D. |
Znak dolara $ w wyrażeniach regularnych w języku Java jest używany do oznaczenia końca ciągu znaków. Jeśli chcemy sprawdzić, czy konkretny wzorzec występuje na końcu danego tekstu, używamy właśnie tego metaznaku. Przykładowo, wyrażenie regularne World$ dopasuje tekst, w którym słowo World pojawia się na samym końcu. Jest to przydatne w wielu scenariuszach, takich jak walidacja struktury tekstu czy filtrowanie logów, gdzie ważna jest pozycja występowania wzorca. Konwencja ta jest zgodna z ogólnymi standardami regex, co czyni ją intuicyjną i uniwersalną w zastosowaniu. Dolar pełni kluczową rolę w automatyzacji procesów w przetwarzaniu tekstu, umożliwiając efektywne dopasowywanie końcowych wzorców w aplikacjach Java. Użycie $ jest zgodne z dobrymi praktykami kodowania, szczególnie w kontekście walidacji danych wejściowych, gdzie określenie końca ciągu jest często wymagane. Jest to także popularne w analizie danych, gdzie dane muszą spełniać określone kryteria co do ich zakończenia, takie jak rozszerzenia plików czy określone etykiety tekstowe.

Pytanie 23

Podaj wspólną cechę wszystkich kontrolek umieszczonych w ramce

Ilustracja do pytania
A. mają tło w tym samym kolorze
B. są w nich ustawione te same wartości domyślne
C. mają identyczny kolor czcionki
D. wszystkie są widoczne
Wszystkie kontrolki w ramce mają tło tego samego koloru. Jest to kluczowy aspekt projektowania interfejsu użytkownika, który zapewnia spójność wizualną i ułatwia nawigację.

Pytanie 24

Które z wymienionych stwierdzeń najtrafniej charakteryzuje klasę dziedziczącą?

A. Klasa, która wykorzystuje pola i metody innej klasy bez ich ponownej definicji
B. Klasa, która nie może posiadać konstruktorów ani destruktorów
C. Klasa, która umożliwia wielokrotne dziedziczenie pól prywatnych
D. Klasa, która dzieli swoje pola z klasami zaprzyjaźnionymi
Klasa nie dzieli swoich pól z zaprzyjaźnionymi klasami – zaprzyjaźnione klasy mają jedynie dostęp do prywatnych składowych, ale to nie jest mechanizm dziedziczenia. Stwierdzenie o braku konstruktorów i destruktorów jest błędne – każda klasa, w tym dziedziczona, może mieć konstruktory i destruktory, które umożliwiają inicjalizację oraz zwalnianie zasobów. Dziedziczenie nie pozwala również na wielokrotne dziedziczenie prywatnych pól, ponieważ prywatne składowe klasy bazowej są niedostępne dla klas pochodnych.

Pytanie 25

Który z podanych algorytmów operujących na jednowymiarowej tablicy posiada złożoność obliczeniową O(n2)?

A. Wyszukiwanie binarne
B. Sortowanie szybkie
C. Sortowanie bąbelkowe
D. Wypisanie elementów
Sortowanie bąbelkowe, znane również jako bubble sort, to prosty algorytm sortowania, który działa na zasadzie wielokrotnego przechodzenia przez tablicę i porównywania sąsiadujących ze sobą elementów. Algorytm ten ma złożoność obliczeniową O(n^2), co oznacza, że w najgorszym przypadku liczba operacji porównania wzrasta kwadratowo wraz ze wzrostem liczby elementów w tablicy. Przykładowo, dla tablicy o 5 elementach algorytm może wykonać do 10 porównań. W praktyce sortowanie bąbelkowe jest rzadko stosowane w dużych zbiorach danych ze względu na swoją niską efektywność, jednak jest to dobry przykład do nauki podstaw algorytmów sortujących. Standardy algorytmów sortujących, takie jak te zawarte w podręcznikach algorytmiki, często używają sortowania bąbelkowego jako przykładu do omówienia prostych koncepcji związanych z sortowaniem. Warto zauważyć, że chociaż algorytm ten jest prosty do zrozumienia, jego złożoność czasowa sprawia, że nie jest on praktyczny do stosowania w produkcyjnych rozwiązaniach, gdyż bardziej optymalne algorytmy, jak sortowanie szybkie czy sortowanie przez scalanie, osiągają złożoność O(n log n).

Pytanie 26

Jakie są kluczowe różnice między typami stałoprzecinkowymi a zmiennoprzecinkowymi?

A. Typy stałoprzecinkowe obsługują liczby ujemne, natomiast typy zmiennoprzecinkowe tylko dodatnie
B. Typy stałoprzecinkowe wymagają większej ilości pamięci niż typy zmiennoprzecinkowe
C. Typy zmiennoprzecinkowe przechowują wyłącznie liczby ujemne
D. Typy stałoprzecinkowe przechowują liczby całkowite, a typy zmiennoprzecinkowe przechowują liczby z ułamkami dziesiętnymi
Główna różnica między typami stałoprzecinkowymi a zmiennoprzecinkowymi polega na tym, że stałoprzecinkowe przechowują liczby całkowite, podczas gdy zmiennoprzecinkowe przechowują liczby z częściami dziesiętnymi. Stałoprzecinkowe typy, takie jak 'int', są bardziej efektywne pod względem wydajności i zajmują mniej pamięci, co czyni je idealnym rozwiązaniem w przypadkach, gdzie precyzja dziesiętna nie jest wymagana. Z kolei typy zmiennoprzecinkowe, takie jak 'float' i 'double', umożliwiają dokładne reprezentowanie wartości niecałkowitych, co jest niezbędne w aplikacjach matematycznych i graficznych. Każdy z tych typów ma swoje zastosowanie w zależności od wymagań projektu.

Pytanie 27

Który z wymienionych objawów może sugerować nagłe zagrożenie dla zdrowia?

A. Intensywne pocenie się w gorącym otoczeniu
B. Ostry ból w klatce piersiowej
C. Zwiększona efektywność pracy
D. Obniżony nastrój w ciągu dnia
Ostry ból w klatce piersiowej to jeden z najbardziej alarmujących objawów wskazujących na nagłe zagrożenie zdrowotne, takie jak zawał serca lub zatorowość płucna. Tego rodzaju ból jest często opisywany jako gniotący, ściskający lub rozlewający się na inne części ciała, takie jak ramię, szyja czy żuchwa. W takich przypadkach kluczowe jest szybkie wezwanie pomocy medycznej, ponieważ każda minuta opóźnienia może zwiększyć ryzyko powikłań lub śmierci. Edukacja w zakresie rozpoznawania tego objawu może uratować życie, dlatego tak ważne jest rozróżnianie go od innych mniej groźnych objawów.

Pytanie 28

Który rodzaj kolekcji pozwala na dostęp do elementów w porządku FIFO (First In First Out)?

A. Kolejka
B. Tablica
C. Sekwencja
D. Kolekcja LIFO
Kolejka to struktura danych, która działa na zasadzie FIFO (First In First Out), co oznacza, że element dodany jako pierwszy zostaje usunięty jako pierwszy. Kolejki są szeroko wykorzystywane w zarządzaniu zadaniami, buforowaniu danych oraz w implementacji algorytmów, takich jak BFS (przeszukiwanie wszerz). Struktura ta jest idealna do obsługi zadań w kolejności ich przybycia, co jest kluczowe w aplikacjach takich jak systemy operacyjne, sieci komputerowe i przetwarzanie danych.

Pytanie 29

Jakie z wymienionych czynności może zagrażać cyfrowej tożsamości?

A. Klikanie w podejrzane linki w wiadomościach e-mail
B. Cykliczna zmiana haseł do kont
C. Aktywacja uwierzytelniania dwuskładnikowego
D. Tworzenie unikalnych oraz mocnych haseł
Klikanie w podejrzane linki w wiadomościach e-mail to jedno z najczęstszych źródeł infekcji i naruszenia cyfrowej tożsamości. Cyberprzestępcy często wykorzystują phishing, czyli technikę polegającą na wysyłaniu fałszywych wiadomości, które wyglądają na autentyczne. Kliknięcie w link może prowadzić do zainstalowania złośliwego oprogramowania lub przekierowania na stronę wyłudzającą dane logowania. Aby uniknąć tego zagrożenia, zaleca się sprawdzanie adresu nadawcy, unikanie otwierania załączników z nieznanych źródeł i korzystanie z filtrów antyphishingowych.

Pytanie 30

W obrębie klasy pracownik zdefiniowano przedstawione metody. Którą z nich można zgodnie z jej funkcją rozszerzyć o element diagnostyczny o treści: cout << "Obiekt został usunięty";

Ilustracja do pytania
A. operator==
B. pracownik
C. ~pracownik
D. wypisz
Destruktor (~pracownik) to metoda wywoływana automatycznie podczas usuwania obiektu. To idealne miejsce na dodanie komunikatu diagnostycznego informującego o usunięciu obiektu. Destruktory są kluczowe w zarządzaniu pamięcią i zasobami, zapewniając zwolnienie zasobów po zakończeniu działania obiektu.

Pytanie 31

Który z poniższych problemów jest najczęściej rozwiązywany z zastosowaniem algorytmu rekurencyjnego?

A. Sortowanie za pomocą metody QuickSort
B. Wyszukiwanie binarne w uporządkowanej tablicy
C. Generowanie ciągu Fibonacciego
D. Obliczanie sumy elementów w tablicy
Generowanie ciągu Fibonacciego to klasyczny przykład problemu, który najczęściej rozwiązuje się za pomocą algorytmu rekurencyjnego. Algorytm rekurencyjny wywołuje sam siebie, dzieląc problem na mniejsze podproblemy, aż do osiągnięcia przypadku bazowego. W przypadku Fibonacciego każda liczba jest sumą dwóch poprzednich, a algorytm rekurencyjny odwzorowuje to wprost poprzez wywołania fib(n-1) + fib(n-2). Rekurencja jest intuicyjna i często stosowana w zadaniach matematycznych, takich jak obliczanie silni czy rozwiązywanie problemów związanych z przeszukiwaniem drzew. Choć rekurencja jest elegancka, dla dużych n może prowadzić do nadmiarowych obliczeń, dlatego często optymalizuje się ją za pomocą pamięci podręcznej (memoizacji) lub iteracyjnych wersji algorytmu.

Pytanie 32

Dokumentacja, która została przedstawiona, dotyczy algorytmu sortowania

Ilustracja do pytania
A. przez wstawianie
B. przez wybór
C. bąbelkowe
D. szybkie (Quicksort)
Przedstawiona dokumentacja opisuje algorytm sortowania bąbelkowego (Bubble Sort), który działa poprzez wielokrotne porównywanie sąsiednich elementów i zamianę ich miejscami, jeśli są w złej kolejności. Algorytm ten ma prostą implementację, ale charakteryzuje się niską efektywnością dla dużych zbiorów danych (złożoność O(n^2)).

Pytanie 33

Celem mechanizmu obietnic (ang. promises) w języku JavaScript jest

A. zastąpienie mechanizmu dziedziczenia w programowaniu obiektowym
B. zarządzanie funkcjonalnością związaną z kodem asynchronicznym
C. ulepszenie czytelności kodu synchronicznego
D. zarządzanie przechwytywaniem błędów aplikacji
Mechanizm obietnic (Promises) w JavaScript umożliwia obsługę kodu asynchronicznego. Pozwala na efektywne zarządzanie operacjami, które mogą się zakończyć sukcesem lub błędem w przyszłości, np. pobieranie danych z API. Promisy umożliwiają unikanie tzw. 'callback hell' i poprawiają czytelność kodu.

Pytanie 34

Jakie są różnice między kompilatorem a interpretem?

A. Kompilator przetwarza kod na język maszynowy w momencie jego wykonywania
B. Kompilator przekształca kod źródłowy na język maszynowy przed uruchomieniem aplikacji
C. Interpreter konwertuje kod źródłowy na język maszynowy przed jego kompilacją
D. Interpreter tworzy plik wykonywalny, który funkcjonuje niezależnie od otoczenia
Kompilator zamienia kod źródłowy na język maszynowy zanim program się uruchomi. W efekcie dostajemy plik wykonywalny, taki jak .exe w Windowsie. To fajne, bo po skompilowaniu aplikacja działa samodzielnie i nie potrzeba jej tłumaczyć od nowa. Dzięki temu programy, które są skompilowane, są zazwyczaj dużo szybsze i lepiej zoptymalizowane niż te, które są interpretowane. Warto wiedzieć, że kompilatory są wykorzystywane w językach takich jak C, C++ czy Java. Kompilacja ma też tę zaletę, że można wykrywać błędy jeszcze przed uruchomieniem programu, co jest naprawdę przydatne.

Pytanie 35

Co to jest wskaźnik w języku C?

A. Typ danych do zapisywania tekstów
B. Funkcja do dynamicznej alokacji pamięci
C. Zmienna przechowująca adres pamięci
D. Zmienna przechowująca wartość logiczną
Wskaźnik w języku C to zmienna przechowująca adres pamięci innej zmiennej. Umożliwia bezpośrednią manipulację pamięcią, co czyni wskaźniki niezwykle potężnym narzędziem w programowaniu niskopoziomowym. Dzięki wskaźnikom można dynamicznie alokować pamięć, przekazywać duże struktury danych do funkcji bez ich kopiowania oraz implementować struktury danych, takie jak listy, drzewa czy grafy. Wskaźniki umożliwiają także iterowanie po tablicach i efektywne zarządzanie zasobami systemowymi, co czyni je kluczowym elementem w programowaniu systemowym.

Pytanie 36

Programista tworzy system zarządzania buforem drukowania dokumentów. Najnowsze zlecenie drukowania dodawane jest na koniec kolejki, a najstarsze z nich są przekazywane do drukarki. Jaką strukturę danych najłatwiej zastosować w tej sytuacji?

A. Stos
B. Sterta
C. LIFO
D. FIFO
FIFO (First In, First Out) to struktura danych idealnie pasująca do implementacji kolejki wydruku, gdzie zadania są przetwarzane w kolejności ich zgłoszenia. Najstarsze zadanie (pierwsze dodane) jest przetwarzane jako pierwsze, co odwzorowuje rzeczywisty sposób działania kolejek drukowania. FIFO znajduje szerokie zastosowanie w wielu dziedzinach informatyki, takich jak programowanie systemów operacyjnych, zarządzanie buforami oraz implementacja kolejek sieciowych. Dzięki temu zadania są obsługiwane w przewidywalnej kolejności, co jest kluczowe dla zachowania porządku i efektywności przetwarzania.

Pytanie 37

Narzędzie przeznaczone do rozwijania aplikacji w systemie WPf (ang. Windows Presentation Foundation) to

A. Visual Studio
B. XamarinStudio
C. NetBeans
D. PyCharm
Visual Studio jest dedykowanym narzędziem do implementacji aplikacji w środowisku WPF (Windows Presentation Foundation). Umożliwia projektowanie interfejsów użytkownika i zarządzanie projektami opartymi na XAML.

Pytanie 38

Który z faz cyklu życia projektu wiąże się z identyfikacją wymagań użytkownika?

A. Przeprowadzanie testów
B. Wdrażanie
C. Etap planowania
D. Analiza
Analiza to etap cyklu życia projektu, podczas którego określane są wymagania użytkownika. W tej fazie zespół projektowy przeprowadza badania, konsultacje i warsztaty, aby zrozumieć potrzeby klienta i użytkowników końcowych. Wynikiem analizy jest szczegółowa specyfikacja funkcjonalna i niefunkcjonalna, która stanowi podstawę do projektowania i implementacji. Prawidłowo przeprowadzona analiza minimalizuje ryzyko nieporozumień oraz zapewnia, że finalny produkt będzie odpowiadał na realne potrzeby użytkowników.

Pytanie 39

Jakie jest oznaczenie normy międzynarodowej?

A. CE
B. PN
C. ISO
D. EN
ISO (International Organization for Standardization) to międzynarodowa organizacja zajmująca się opracowywaniem i wdrażaniem standardów technicznych. Oznaczenie ISO wskazuje, że produkt lub usługa spełnia międzynarodowe normy jakości i bezpieczeństwa, co ułatwia handel oraz współpracę na arenie międzynarodowej. Normy ISO obejmują szeroki zakres dziedzin, takich jak zarządzanie jakością (ISO 9001), zarządzanie środowiskowe (ISO 14001) czy bezpieczeństwo informacji (ISO 27001). Certyfikacja ISO buduje zaufanie klientów i zwiększa konkurencyjność firmy na rynku globalnym.

Pytanie 40

Co to jest framework?

A. narzędzie przeznaczone do opracowywania, edytowania, testowania i uruchamiania oprogramowania
B. zbiór procedur, danych oraz złożonych typów danych używanych w kodzie źródłowym aplikacji
C. platforma programistyczna oferująca określone komponenty oraz narzucająca szkielet lub metodologię tworzenia aplikacji
D. oprogramowanie, które za pomocą metody drag and drop pozwala na stworzenie interfejsu aplikacji
Framework to platforma programistyczna, która dostarcza gotowe komponenty i narzuca określony sposób tworzenia aplikacji. Ułatwia rozwój oprogramowania, eliminując potrzebę pisania kodu od zera.