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: 29 kwietnia 2026 20:09
  • Data zakończenia: 29 kwietnia 2026 20:09

Egzamin niezdany

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

Wymagane minimum: 20 punktów (50%)

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

Jaki jest cel poniższego fragmentu funkcji w JavaScript?

wynik = 0;
for (i = 0; i < tab.length; i++)
{
    wynik += tab[i];
}
A. obliczyć sumę wszystkich elementów tablicy
B. przypisać do każdego elementu tablicy bieżącą wartość zmiennej i
C. dodać stałą wartość do każdego elementu tablicy
D. wyświetlić wszystkie pozycje w tablicy

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Podany fragment kodu w języku JavaScript ma za zadanie zsumować wszystkie elementy tablicy. Widzimy, że zmienna wynik jest inicjalizowana wartością 0 co jest standardową praktyką przy zliczaniu sumy. Następnie pętla for iteruje przez każdy element tablicy używając warunku i < tab.length co zapewnia że przechodzimy przez wszystkie indeksy tablicy od 0 do ostatniego. Wewnątrz pętli mamy instrukcję wynik += tab[i] która dodaje aktualny element tablicy do zmiennej wynik. Jest to typowe podejście do sumowania elementów tablicy i odpowiada standardowym praktykom w programowaniu. Dzięki temu możemy w prosty sposób uzyskać sumę elementów tablicy niezależnie od jej długości. Takie rozwiązanie jest nie tylko przejrzyste ale i efektywne z punktu widzenia złożoności obliczeniowej gdyż operuje w czasie liniowym O(n). Powyższy sposób zliczania jest uniwersalny i można go stosować w różnych językach programowania.

Pytanie 2

Rodzaj zmiennej w języku JavaScript

A. powinien być zadeklarowany na początku skryptu
B. nie występuje
C. następuje poprzez przypisanie wartości
D. istnieje tylko jeden

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku JavaScript typ zmiennej jest określany poprzez przypisanie wartości, co oznacza, że zmienna może przyjmować różne typy danych w trakcie działania programu. JavaScript jest językiem, który wspiera dynamiczne typowanie, co pozwala na elastyczność w programowaniu. Przykładowo, można zadeklarować zmienną i przypisać do niej wartość liczbową: let x = 5; a następnie przypisać wartość tekstową: x = 'Hello';. W momencie przypisania wartości, JavaScript automatycznie dostosowuje typ zmiennej w zależności od typu przypisanej wartości. To podejście jest zgodne z dobrymi praktykami programowania, ponieważ umożliwia łatwe tworzenie i modyfikowanie kodu, bez potrzeby wcześniejszego określania typów zmiennych, co jest charakterystyczne dla języków statycznie typowanych. Warto również zaznaczyć, że w JavaScript mamy do czynienia z różnymi typami danych, takimi jak liczby, łańcuchy tekstowe, obiekty, tablice czy wartości logiczne (boolean), co daje programistom dużą swobodę w modelowaniu danych.

Pytanie 3

W języku JavaScript zmienna i, która ma przechowywać wynik dzielenia równy 1, powinna być zadeklarowana jako

A. var i = Number(3/2)
B. var i = parseFloat(3/2)
C. var i = parseInt(3/2)
D. var i = 3/2

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "var i = parseInt(3/2);" jest prawidłowa, ponieważ funkcja parseInt konwertuje podaną wartość na liczbę całkowitą, w tym przypadku wynik dzielenia 3/2 wynosi 1.5. Funkcja ta zaokrągla wynik w dół do najbliższej liczby całkowitej, co skutkuje wartością 1, która jest następnie przypisywana do zmiennej i. W praktyce, użycie parseInt jest często spotykane w sytuacjach, gdy zachodzi potrzeba uzyskania liczby całkowitej z wartości zmiennoprzecinkowej, na przykład podczas obliczeń wymagających całkowitych jednostek, takich jak liczba produktów w koszyku. Ponadto, ważne jest również, aby rozumieć, że parseInt przyjmuje drugi argument, który określa podstawę liczbową, co jest zgodne z najlepszymi praktykami programistycznymi, aby unikać niejednoznaczności w interpretacji wartości. W związku z tym, używanie parseInt w kontekście takich operacji jest zgodne z dobrymi praktykami programistycznymi i pozwala na uniknięcie nieprzewidzianych błędów w obliczeniach.

Pytanie 4

Skrypt w JavaScript, który obsługuje wynagrodzenia pracowników, powinien stworzyć raport dla tych, którzy są zatrudnieni na umowę o pracę oraz otrzymują wynagrodzenie w przedziale domkniętym od 4000 do
4500 zł. Jaki warunek należy zastosować do wygenerowania raportu?

A. umowa == 'praca' && (pensja >= 4000 || pensja <= 4500)
B. umowa == 'praca' || (pensja >= 4000 || pensja <= 4500)
C. umowa == 'praca' && (pensja >= 4000 && pensja <= 4500)
D. umowa == 'praca' || (pensja >= 4000 && pensja <= 4500)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź umowa == 'praca' && (pensja >= 4000 && pensja <= 4500) jest poprawna, ponieważ precyzyjnie określa warunki, jakie muszą być spełnione, aby wygenerować raport. Warunek umowa == 'praca' zapewnia, że analizujemy tylko pracowników zatrudnionych na umowę o pracę, co jest kluczowe w kontekście raportowania. Dodatkowo zastosowanie operatora logicznego '&&' w połączeniu z zakresowym sprawdzeniem pensji (pensja >= 4000 && pensja <= 4500) skutkuje tym, że raport zostanie wygenerowany wyłącznie dla pracowników, których pensja mieści się w ścisłym przedziale od 4000 do 4500 zł. To podejście jest zgodne z dobrymi praktykami programistycznymi, gdzie ważne jest, aby warunki były ściśle zdefiniowane, co pozwala uniknąć nieporozumień i błędów w danych. Przykładowo, jeżeli stworzymy funkcję generującą raport, możemy ją łatwo zaimplementować w systemie hr, co pozwoli na automatyzację procesów związanych z płacami oraz raportowaniem, a także zwiększy przejrzystość i precyzję w zarządzaniu danymi finansowymi.

Pytanie 5

Poprzez zdefiniowanie var x="true"; w języku JavaScript powstaje zmienna należąca do typu

A. string (ciąg znaków)
B. liczbowym
C. logicznym
D. nieokreślonego (undefined)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Deklaracja <b>var x="true";</b> w języku JavaScript tworzy zmienną typu string (ciąg znaków). Wartość "true" jest tekstem, a nie wartością logiczną. W JavaScript, zmienne są dynamicznie typowane, co oznacza, że ich typ może się zmieniać w zależności od wartości, którą przechowują. Przykładem zastosowania tego typu zmiennej może być przechowywanie danych użytkownika w aplikacjach webowych, gdzie często korzysta się z ciągów znaków do reprezentacji różnych informacji, takich jak nazwy użytkowników, hasła, czy inne dane tekstowe. Dobrymi praktykami w programowaniu w JavaScript jest unikanie pomylenia wartości logicznych z ciągami znaków, ponieważ mogą one prowadzić do trudnych do zdiagnozowania błędów. Warto również pamiętać, że w JavaScript stringi są otoczone pojedynczymi lub podwójnymi cudzysłowami, co pozwala na jednoznaczną identyfikację ich jako typów danych. Dobre zrozumienie typów danych w JavaScript jest kluczowe dla skutecznego programowania i zarządzania danymi.

Pytanie 6

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

var a = 5;
var b = a--;
a *= 3;
document.write(a + "," + b);
A. 12,5
B. 12,4
C. 15,5
D. 15,4

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W tym skrypcie JavaScript najpierw zmienna a zaczyna z wartością 5. Gdy używasz operatora dekrementacji, czyli a--, to jego wartość zostaje przypisana do zmiennej b, zanim a zostanie zmniejszona. Dlatego b ma wartość 5, a a staje się 4. Potem mamy a *= 3, co znaczy, że mnożymy 4 (aktualną wartość a) przez 3, co daje nam 12. Na końcu, wywołując document.write(a + ',' + b), dostajemy w wyniku 12,5. Zrozumienie tych operatorów w JavaScript jest naprawdę ważne. Operatorzy, jak ++ i --, są powszechnie używani w pętlach, więc znajomość ich działania pomoże ci pisać lepszy i bardziej przejrzysty kod, unikając typowych błędów przy przypisywaniu wartości. Fajnie też wiedzieć, że podobnie działają oni w wielu innych językach programowania, więc ta wiedza jest naprawdę uniwersalna.

Pytanie 7

W języku JavaScript przedstawiona definicja jest definicją

var imiona = ["Anna", "Jakub", "Iwona", "Krzysztof"];
A. kolekcji.
B. klasy.
C. obiektu.
D. tablicy.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Dobra robota! Wybrałeś poprawną odpowiedź, czyli tablicę. W języku JavaScript, tablice służą do przechowywania wielu wartości w pojedynczej zmiennej. W podanym przykładzie, zmienna 'imiona' jest tablicą, która zawiera ciągi znaków reprezentujące imiona. Tablica w JavaScript jest obiektem globalnym, który jest używany w kontekście obiektu. Tablice są jednym z podstawowych typów danych, które są niezbędne dla tworzenia i manipulowania danymi. Tworzenie tablicy jest bardzo proste, wystarczy użyć nawiasów kwadratowych [] i oddzielić elementy za pomocą przecinków. Oto przykład: var imiona = ['Jan', 'Anna', 'Piotr'];. W praktyce, tablice są używane w wielu różnych sytuacjach, takich jak przechowywanie danych do dalszej analizy, grupowanie powiązanych danych, tworzenie list lub tabel, a także do przechowywania danych na potrzeby pętli i innych struktur sterujących.

Pytanie 8

Jakie wartości zostaną wyświetlone kolejno w wyniku wykonania podanego skryptu?

<script language = "JavaScript">
var x = 1;
var y;
++y;
document.write(++x);
document.write(" ");
document.write(x--);
document.write(" ");
document.write(x);
</script>
A. 1 2 1
B. 1 2 2
C. 2 1 1
D. 2 2 1

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to 2 2 1 ponieważ skrypt modyfikuje wartość zmiennej x krok po kroku. Pierwsza instrukcja ++x zwiększa wartość x z 1 do 2 i wypisuje ją na ekranie. Jest to przykład preinkrementacji gdzie wartość zmiennej jest zwiększana przed jej użyciem w wyrażeniu. Drugie wywołanie x-- to postdekrementacja która najpierw zwraca bieżącą wartość zmiennej x czyli 2 a dopiero potem ją zmniejsza. Dlatego w wyniku druga wartość to również 2. Wreszcie ostatnia instrukcja wypisuje aktualną wartość x po dekrementacji która wynosi teraz 1. Tego typu operacje na zmiennych są kluczowe w programowaniu gdyż pozwalają na efektywną kontrolę nad przepływem danych i logiką sterującą w aplikacjach. Zrozumienie różnicy między pre- i post- inkrementacją jest istotne w kontekście optymalizacji kodu i zapobiegania potencjalnym błędom logicznym.

Pytanie 9

Na listingu kodu JavaScript w wykropkowanej części definicji obiektu osoba należy wpisać kod, który prawidłowo obsłuży instrukcję osoba.j = "PL"; Który to będzie kod?

 var osoba = {
    imie: "Jan",
    jezyk: "EN",
    set j(nazwa) {  ...  }
};
A. this.jezyk = nazwa;
B. return this.jezyk;
C. this.j = nazwa;
D. return this.j;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Twoja odpowiedź jest poprawna. W pytaniu mamy do czynienia z obiektem 'osoba' w JavaScript, który posiada właściwości 'imie' i 'jezyk'. Właściwość 'jezyk' jest obsługiwana przez setter 'set j(nazwa)', którego zadaniem jest przypisanie wartości do tej właściwości. Instrukcja 'osoba.j = "PL";' oznacza, że chcemy ustawić wartość 'PL' dla właściwości 'jezyk'. Aby to osiągnąć, setter musi przypisać tę wartość do właściwości 'jezyk'. Dlatego poprawnym kodem jest 'this.jezyk = nazwa;'. 'This' w tym kontekście odnosi się do obiektu 'osoba', a 'nazwa' to wartość, którą chcemy przypisać do właściwości 'jezyk'. To przykład dobrej praktyki zarządzania stanem obiektu w JavaScript, a także dobrej praktyki tworzenia setterów, które są integralną częścią programowania zorientowanego obiektowo.

Pytanie 10

W języku JavaScript rezultat działania instrukcji zmienna1 –= 1; będzie identyczny jak wynik instrukcji

A. zmienna1 === zmienna1 - 1;
B. zmienna1++;
C. zmienia1 = zmienna1 - 0;
D. zmienna1––;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Instrukcja 'zmienna1 -= 1;' w języku JavaScript jest skróconą formą zapisu, która oblicza nową wartość zmiennej 'zmienna1', odejmując od niej 1. Działa to na zasadzie równania, gdzie zmienna zostaje zaktualizowana do nowej wartości. Z kolei zapis 'zmienna1--;' również dokonuje dekrementacji zmiennej 'zmienna1' o 1, ale w formie operatora post-dekrementacji. W praktyce oznacza to, że obie instrukcje mają ten sam efekt końcowy, czyli zmiana wartości 'zmienna1' o 1 w dół. Przykładowo, jeżeli 'zmienna1' wynosi 5 przed wykonaniem powyższych operacji, to po ich wykonaniu jej wartość wyniesie 4. Takie skrócone formy zapisu są powszechną praktyką w programowaniu, ponieważ umożliwiają bardziej zwięzłe i czytelne przedstawienie operacji na zmiennych, co jest zgodne z zasadami czystego kodu. Używanie operatorów skróconych, takich jak '+=' i '-=', jest zalecane, ponieważ poprawia czytelność i zrozumiałość kodu.

Pytanie 11

Jakie słowo kluczowe wykorzystuje się do deklaracji zmiennej w języku JavaScript?

A. var
B. instanceof
C. new
D. variable

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W JavaScript, żeby zadeklarować zmienną, używa się słowa 'var'. To jeden z najważniejszych elementów tego języka. Używając 'var', tworzysz zmienną, która może mieć zasięg tylko w danej funkcji albo być dostępna globalnie, w zależności od tego, jak ją zadeklarujesz. Jeśli na przykład napiszesz 'var x = 10;', to stworzysz zmienną 'x' i przypiszesz jej wartość 10. Warto jednak zauważyć, że od momentu, gdy wprowadzono ES6, zaleca się używanie 'let' oraz 'const' do deklaracji zmiennych, bo są bardziej przewidywalne, zwłaszcza jeśli chodzi o zasięg zmiennych (block scope). Mimo to, 'var' wciąż można spotkać w wielu starych projektach i dobrze jest znać to słowo, żeby lepiej rozumieć, jak działa JavaScript. Fajnie jest ograniczać 'var' na rzecz 'let' i 'const', bo dzięki temu kod staje się bardziej przejrzysty i łatwiejszy do ogarnienia w większych projektach.

Pytanie 12

bool gotowe=true;
cout<<gotowe;
Jakie będzie wyjście w wyniku wykonania podanych poleceń?

A. 1
B. 0
C. Nie
D. Tak

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Po wykonaniu poleceń na ekranie zobaczysz '1'. Zmienna 'gotowe' jest ustawiona jako typ bool i ma wartość true. W C++ typ bool może mieć dwie wartości: true lub false. Kiedy zmienną bool wyświetlamy przy użyciu cout, to 'true' pokazuje się jako '1', a 'false' jako '0'. To jest zgodne z zasadami C++, które mówią, że wartości logiczne są traktowane jako liczby całkowite. Z mojego doświadczenia, zrozumienie tego, jak C++ interpretuje różne typy danych, jest naprawdę istotne w programowaniu, bo pomaga lepiej ogarnąć działanie kodu, a także poprawić algorytmy. Na przykład, jeśli programista ma świadomość, że true to 1, może wykorzystać tę wiedzę przy operacjach na liczbach lub podczas tworzenia warunków. To fajnie działa, zwłaszcza gdy zaczynamy tworzyć bardziej złożone struktury danych.

Pytanie 13

W przedstawionym kodzie JavaScript występuje błąd logiczny. Program, zamiast informować, czy liczby są równe, nie działa prawidłowo. Wskaż, która odpowiedź dotyczy tego błędu.

var x = 5;
var y = 3;
if (x = y)
  document.getElementById("demo").innerHTML = "zmienne są równe";
else
  document.getElementById("demo").innerHTML = "zmienne się różnią";
A. Polecenia w sekcjach if i else powinny zostać zamienione miejscami
B. Przed instrukcją else nie powinno być średnika
C. Zmienne zostały błędnie zadeklarowane
D. W instrukcji if znajduje się przypisanie zamiast operacji porównania

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W tym przypadku mamy do czynienia z częstym błędem w programowaniu, gdzie zamiast porównania użyto operatora przypisania. W języku JavaScript operator przypisania '=' służy do przypisywania wartości do zmiennej, natomiast do porównania dwóch wartości używa się operatora '==' dla równości lub '===' dla równości i sprawdzania typu. Użycie '=' w warunku if powoduje przypisanie wartości y do x, co zawsze zwróci true, jeśli y jest różne od zera. To prowadzi do nieoczekiwanych rezultatów w logice programu. Poprawnym zapisem w tym kontekście jest if (x == y). Warto pamiętać o dobrych praktykach, które zalecają używanie '===' zamiast '==' dla uzyskania lepszej precyzji i uniknięcia błędów spowodowanych niejawnych konwersji typów. To podejście minimalizuje ryzyko błędów logicznych i poprawia czytelność kodu. Regularne stosowanie takich dobrych praktyk zwiększa jakość kodu i ułatwia jego późniejszą konserwację oraz rozwój.

Pytanie 14

Która metoda obiektu location w języku JavaScript pozwala na zamianę aktualnego dokumentu na dokument z adresu podanego w parametrze metody?

A. replace();
B. reaload();
C. open();
D. close();

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Metoda replace() obiektu location w JavaScript jest kluczowym narzędziem umożliwiającym zastąpienie bieżącego dokumentu nowym dokumentem wskazywanym przez zdefiniowany adres URL. Kiedy używamy location.replace(url), przeglądarka ładuje nowy dokument z podanego adresu, a bieżąca strona nie pozostaje w historii przeglądania, co oznacza, że użytkownik nie może wrócić do niej za pomocą przycisku "wstecz". Jest to szczególnie użyteczne w scenariuszach, gdy chcemy uniknąć zbędnego gromadzenia historii, na przykład w aplikacjach jednoskalowych (SPA), gdzie nawigacja pomiędzy różnymi widokami powinna być płynna. Przykładowo, po zalogowaniu użytkownika, można przekierować go na stronę główną aplikacji, używając location.replace('/home'). Warto również wspomnieć, że stosowanie tej metody jest zgodne z najlepszymi praktykami w zakresie UX, gdyż pozwala na lepsze zarządzanie historią przeglądarki, co może poprawić doświadczenia użytkownika.

Pytanie 15

Jakiego zdarzenia trzeba użyć, aby funkcja JavaScript była uruchamiana za każdym razem, gdy użytkownik wprowadzi jakikolwiek znak do pola tekstowego?

A. onclick
B. onmouseout
C. onload
D. onkeydown

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'onkeydown' jest w porządku! To zdarzenie działa za każdym razem, gdy ktoś naciska klawisz w polu edycyjnym. Świetnie nadaje się do monitorowania, co użytkownik wpisuje na bieżąco. Na przykład w formularzach można go użyć, żeby od razu sprawdzić, czy dane są poprawne. Dzięki temu użytkownik widzi, czy coś jest nie tak, co ogólnie poprawia użyteczność aplikacji. Poza tym, dobrym pomysłem jest nadawanie zrozumiałych nazw funkcjom, które reagują na te zdarzenia – pomaga to później w utrzymaniu kodu. Można też łączyć onkeydown z onkeyup czy onkeypress, żeby jeszcze lepiej kontrolować wprowadzane dane. To na pewno sprawi, że Twoja aplikacja będzie bardziej interaktywna.

Pytanie 16

Dane z pola input o typie number zostały zapisane do zmiennej a, a następnie przetworzone w kodzie JavaScript w sposób następujący: ```var x = parseFloata);``` Jakiego typu będzie zmienna x?

A. napisowego
B. liczbowego, całkowitego
C. zmiennoprzecinkowego
D. NaN

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Widzisz, zmienna x dostaje wartość z funkcji parseFloat, która zmienia coś z pola input typu number na liczbę zmiennoprzecinkową. To jest dość standardowa funkcja w JavaScript, często używana do zamiany tekstu (czyli stringów) na liczby zmiennoprzecinkowe. Na przykład, jak w polu input masz '123.45', to po napisaniu var x = parseFloat(a);, x stanie się liczbą 123.45. Tylko pamiętaj, że jak przekazany tekst nie może być zmieniony na liczbę, to dostaniesz NaN (czyli Not-a-Number). Ta funkcja jest zgodna z ECMAScript i jest naprawdę przydatna, np. w sytuacjach, gdy trzeba walidować dane, które użytkownicy wprowadzają. Twoja odpowiedź jest na plus, bo korzystając z parseFloat, dostajesz typ zmiennoprzecinkowy, co jest ważne w obliczeniach matematycznych. Zresztą, dokładność w tych wartościach liczbowych jest kluczowa.

Pytanie 17

Wskaż, który z poniższych jest poprawnym zapisem zmiennej w języku JavaScript.

A. var 2nameVar = 10;
B. const var-name = 10;
C. var $name@ = 10;
D. let variableName = 10;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W języku JavaScript deklaracja zmiennej przy użyciu słowa kluczowego <code>let</code> jest obecnie jedną z najczęściej stosowanych praktyk. Ma ona na celu stworzenie zmiennej o zasięgu blokowym, co oznacza, że zmienna jest dostępna tylko w obrębie bloku kodu, w którym została zadeklarowana. To podejście pozwala na bardziej elastyczne i bezpieczne zarządzanie zmiennymi w kodzie, minimalizując ryzyko błędów związanych z niezamierzonym nadpisywaniem wartości. Zmienna <code>variableName</code> jest poprawnie zapisana zgodnie z konwencjami JavaScript: zaczyna się od litery i składa się wyłącznie z liter oraz cyfr. Wartość 10 przypisana do tej zmiennej to liczba całkowita. Deklaracja <code>let</code> jest preferowana w stosunku do <code>var</code> z uwagi na lepsze zarządzanie zasięgiem i uniknięcie problemów związanych z hoistingiem. Ponadto, stosowanie jasnych i opisowych nazw zmiennych, jak <code>variableName</code>, jest dobrą praktyką programistyczną, ułatwiającą zrozumienie i utrzymanie kodu.

Pytanie 18

W grze komputerowej można przejść do kolejnego poziomu, gdy spełnione są trzy warunki: zdobycie 20 punktów, zebranie co najmniej 3 paczek oraz przebycie dystansu 200 m. Wyrażenie logiczne, które weryfikuje te warunki w języku JavaScript, to

A. punkty == 20 || paczki == 3 || dystans == 200
B. punkty == 20 && paczki >= 3 && dystans == 200
C. punkty == 20 || paczki >= 3 || dystans == 200
D. punkty == 20 && paczki == 3 && dystans == 200

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wybrana odpowiedź 'punkty == 20 && paczki >= 3 && dystans == 200' jest prawidłowa, ponieważ wykorzystuje operator logiczny AND ('&&'), co oznacza, że wszystkie trzy warunki muszą być spełnione jednocześnie, aby przejść do następnego poziomu w grze. W kontekście programowania, a zwłaszcza w JavaScript, zrozumienie operatorów logicznych jest kluczowe dla podejmowania decyzji w oparciu o różne warunki. Na przykład, jeśli gracz zdobył dokładnie 20 punktów, zebrał 3 paczki i przebył 200 metrów, to wszystkie te warunki są spełnione, co pozwala na kontynuację gry. Dobrą praktyką jest stosowanie operatora >= (większe lub równe) dla paczek, ponieważ pozwala to graczowi na zbieranie większej liczby paczek, co dodaje elementy strategii i rozwoju w grze. Używanie odpowiednich operatorów logicznych jest fundamentalne w programowaniu, zapewniając, że aplikacje działają zgodnie z oczekiwaniami użytkowników. Przykład zastosowania to wprowadzenie logiki do gier, gdzie gracz musi wykonać określone zadania, aby przejść do kolejnych poziomów, co jest podstawą mechaniki wielu gier komputerowych.

Pytanie 19

Wskaż warunek w języku JavaScript, który ma na celu sprawdzenie, czy przynajmniej jeden z poniższych przypadków jest spełniony: 1) dowolna naturalna liczba a jest liczbą trzycyfrową 2) dowolna liczba całkowita b jest liczbą ujemną

A. ((a>99)||(a<1000))&&(b<0)
B. ((a>99)&&(a<1000))&&(b<0)
C. ((a>99)&&(a<1000))||(b<0)
D. ((a>99)||(a<1000))||(b<0)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Warunek zapisany jako ((a>99)&&(a<1000))||(b<0) jest poprawny, ponieważ sprawdza dwa różne przypadki. Pierwsza część warunku, (a>99)&&(a<1000), zwraca prawdę, gdy a jest liczbą naturalną w zakresie od 100 do 999, co oznacza, że jest to liczba trzycyfrowa. Z kolei druga część, b<0, jest spełniona, gdy b jest liczbą całkowitą mniejszą od zera, co oznacza, że jest to liczba ujemna. Zastosowanie operatora logicznego '||' (OR) pozwala na spełnienie warunku, gdy przynajmniej jeden z dwóch przypadków jest prawdziwy. Użycie operatora '&&' (AND) w pierwszej części jest kluczowe, ponieważ musi być spełniony zarówno warunek większy niż 99, jak i mniejszy niż 1000, co pozwala na precyzyjne określenie, czy a jest liczbą trzycyfrową. Przykładowo, gdy a = 150, a b = -5, cały warunek zwróci prawdę z powodu drugiej części warunku. Na przeciwnym biegunie, jeśli a = 50, a b = 5, warunek zwróci fałsz, ponieważ ani a nie jest trzycyfrowe, ani b nie jest ujemne. Tego rodzaju warunki są powszechnie stosowane w programowaniu, aby weryfikować różne stany i wartości zmiennych w aplikacjach webowych i systemach informatycznych.

Pytanie 20

W języku JavaScript wartość typu boolean może być przedstawiana przez

A. null
B. –20
C. true
D. 45.3

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Typ boolean w języku JavaScript jest jednym z podstawowych typów danych, reprezentującym jedynie dwie możliwe wartości: true (prawda) oraz false (fałsz). Typ ten jest kluczowy w programowaniu, umożliwiając tworzenie warunków oraz podejmowanie decyzji w kodzie. W praktyce, boolean jest wykorzystywany w instrukcjach warunkowych, takich jak if, gdzie wyrażenia zwracające wartość logiczną decydują o dalszym przebiegu programu. Na przykład, wyrażenie 'if (x > 10)' zwraca true, jeśli x jest większe od 10, i false w przeciwnym razie. JavaScript, zgodnie ze specyfikacją ECMA-262, nie tylko definiuje typ boolean, ale również określa sposób konwersji innych typów danych na boolean. Funkcje takie jak Boolean() oraz operatory logiczne (&&, ||, !) są używane do uzyskania wartości boolean z innych typów. Warto również zauważyć, że JavaScript stosuje tzw. "truthy" i "falsy" wartości, co oznacza, że niemal każdy typ danych może być interpretowany jako boolean w kontekście warunków, jednak tylko true i false są typowymi wartościami tego typu. Zrozumienie działania typu boolean jest fundamentalne dla programistów, umożliwiając skuteczne kontrolowanie przepływu programu oraz implementację logiki decyzyjnej."

Pytanie 21

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

A. zmienna x będzie przechowywać wynik działania metody nazwa.
B. zmienna x będzie przechowywać wynik działania funkcji przedmiot.
C. nazwa jest właściwością obiektu przedmiot.
D. nazwa jest polem klasy przedmiot.

Brak odpowiedzi na to pytanie.

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

Pytanie 22

W kodzie HTML przypisano pewne znaczniki do klasy o nazwie "nomargin". Jak można przeprowadzić operacje na tych znacznikach w języku JavaScript, korzystając z odpowiedniej funkcji?

A. getElement("nomargin")
B. getElementsByClassName("nomargin")
C. getElementsByTagName("nomargin")
D. getElementById("nomargin")

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wybór odpowiedzi 'getElementsByClassName("nomargin")' jest właściwy, ponieważ ta funkcja umożliwia selekcję wszystkich elementów HTML, które mają przypisaną daną klasę. W tym przypadku klasa to 'nomargin'. Funkcja ta zwraca kolekcję elementów, co jest bardzo przydatne w manipulacji DOM, gdyż pozwala na wykonywanie operacji na wielu elementach jednocześnie. Przykładowo, jeśli chcemy usunąć marginesy z wszystkich elementów, które mają tę klasę, możemy wykorzystać zwróconą kolekcję do iteracji i zastosować odpowiednie style CSS. Kod mógłby wyglądać tak: var elements = document.getElementsByClassName('nomargin'); for (var i = 0; i < elements.length; i++) { elements[i].style.margin = '0'; }. Standardy JavaScript oraz DOM odnoszą się do używania tej funkcji jako efektywnej metody nawiązywania interakcji z elementami na stronie. Warto także pamiętać, że getElementsByClassName zwraca „żywą” kolekcję, co oznacza, że zmiany w DOM będą natychmiast widoczne w tej kolekcji.

Pytanie 23

W języku JavaScript zdefiniowano obiekt ```obiekt = { q: 1, w: 2, e: 3, r: 4 };``` W jaki sposób można uzyskać wartość właściwości ```w```?

A. obiekt:w
B. obiekt.w
C. obiekt::w
D. obiekt->w

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby uzyskać dostęp do wartości własności obiektu w JavaScript, stosuje się notację kropkową. Odpowiedź obiekt.w jest poprawna, ponieważ w JavaScript, odwołując się do właściwości obiektu, używamy kropki jako separatora między nazwą obiektu a nazwą właściwości. W podanym przykładzie obiekt ma cztery właściwości: q, w, e oraz r, z których każda ma przypisaną wartość. Używając notacji obiekt.w, możemy bezpośrednio uzyskać wartość 2, która jest przypisana do właściwości w. W praktyce, notacja kropkowa jest powszechnie stosowana i jest preferowaną metodą dostępu do właściwości obiektów, ponieważ jest bardziej czytelna i łatwiejsza w użyciu. Alternatywnie, można również użyć notacji nawiasowej, jak obiekt['w'], co może być przydatne, gdy nazwa właściwości zawiera znaki niedozwolone w identyfikatorach, ale w większości przypadków notacja kropkowa jest bardziej ergonomiczna i zalecana zgodnie z dobrymi praktykami programowania.

Pytanie 24

Funkcja przedstawiona w kodzie JavaScript ma na celu

Ilustracja do pytania
A. zwrócić wynik potęgowania an
B. wyświetlić kolejne liczby od a do n
C. pokazać wynik mnożenia a przez n
D. zwrócić iloczyn kolejnych liczb od 1 do a

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja w języku JavaScript przedstawiona w pytaniu wykonuje operację potęgowania poprzez iteracyjne mnożenie liczby a przez siebie n razy. Jest to klasyczny sposób realizacji potęgowania, polegający na zastosowaniu pętli for. W momencie inicjalizacji zmiennej wynik przypisujemy jej wartość 1, co jest typowym sposobem rozpoczęcia mnożenia w algorytmach iteracyjnych. Następnie pętla for iteruje n razy, za każdym razem mnożąc wynik przez a, co odpowiada matematycznemu działaniu a razy a razy a, aż do n razy. Po zakończeniu pętli funkcja zwraca wynik, który jest wartością an. Takie podejście jest stosowane w przypadkach, gdy nie mamy bezpośredniego dostępu do wbudowanych funkcji potęgowania, jak Math.pow, jednak w praktyce, dla lepszej wydajności i czytelności kodu, zaleca się korzystanie z wbudowanych metod. Potęgowanie jest powszechnie stosowane w obliczeniach matematycznych, fizyce oraz w algorytmach wymagających szybkiego przetwarzania dużych ilości danych. Zrozumienie mechaniki działania pętli for i operacji iteracyjnych jest kluczowe w programowaniu, co czyni to pytanie istotnym elementem egzaminu certyfikacyjnego.

Pytanie 25

Wskaż konstrukcję pętli w języku JavaScript, która wyświetli sześć kolejnych liczb parzystych

A. for(i=2;i<=12;i+=2) {document.write(i);}
B. for(i=2;i<12;i+=2) {document.write(i);}
C. for(i=2;i<12;i++) {i++; document.write(i);}
D. for(i=2;i<=12;i++) {i=i+2; document.write(i);}

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź for(i=2;i<=12;i+=2) {document.write(i);} jest prawidłowa, ponieważ prawidłowo implementuje pętlę for w języku JavaScript, aby wydrukować sześć kolejnych liczb parzystych, zaczynając od 2 i kończąc na 12. Pętla ta inicjuje zmienną i na wartość 2, a następnie kontynuuje iterację, aż do osiągnięcia wartości 12, zwiększając i o 2 w każdej iteracji. Dzięki temu osiągamy pożądane liczby: 2, 4, 6, 8, 10 i 12. Użycie operatora inkrementacji (i+=2) jest zgodne z dobrymi praktykami programistycznymi, ponieważ jest bardziej zwięzłe i jednoznaczne w porównaniu do zwiększania zmiennej w każdej iteracji o 1, a następnie dodawania 1 w ciele pętli. W praktyce, można stosować takie podejście do generowania sekwencji liczb w różnych zastosowaniach, na przykład w wizualizacji danych lub grach, gdzie potrzebujemy pracować z parametrami o określonej wartości. Ponadto, pętle w JavaScript są fundamentalnym elementem skryptów, pozwalającym na automatyzację powtarzalnych zadań, co czyni programowanie bardziej efektywnym.

Pytanie 26

W ramce przedstawiono kod JavaScript z błędem logicznym. Program powinien wypisywać informację, czy liczby są sobie równe, czy nie, lecz nie wykonuje tego. Wskaż odpowiedź, która dotyczy błędu.

var x=5;
var y=3;
if(x=y) document.getElementById("demo").innerHTML='zmienne są równe';
else    document.getElementById("demo").innerHTML='zmienne się różnią';
A. Zawartość sekcji if oraz else powinna być zamieniona miejscami
B. Brak średnika przed klauzulą else
C. Zmienne zostały zadeklarowane w niewłaściwy sposób
D. W klauzuli if użyto przypisania zamiast porównania

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W analizowanym kodzie JavaScript występuje błąd związany z użyciem operatora przypisania zamiast operatora porównania w klauzuli if. W języku JavaScript do porównania dwóch wartości używa się operatora '===' lub '=='. Operator '=' to operator przypisania, który przypisuje wartość z prawej strony do zmiennej po lewej stronie. W kontekście warunków if, należy użyć operatora porównania, aby ocenić, czy dwie zmienne są równe. W poprawnej wersji kodu, linia if x = y powinna być zmieniona na if (x === y). Dodatkowo, warto pamiętać o umieszczeniu wartości porównawanych w nawiasach, co zwiększa czytelność i poprawność kodu. Przykład prawidłowego kodu to: var x = 5; var y = 3; if (x === y) { document.getElementById('demo').innerHTML = 'zmienne są równe'; } else { document.getElementById('demo').innerHTML = 'zmienne się różnią'; }. Taki zapis zapewnia, że program poprawnie zidentyfikuje różnicę między zmiennymi x i y i odpowiednio wyświetli komunikat.

Pytanie 27

Która z wymienionych metod umożliwia wyświetlenie komunikatu w konsoli przeglądarki internetowej przy użyciu języka JavaScript?

A. console.log("test");
B. console.echo("test");
C. console.write("test");
D. console.print("test");

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'console.log("test");' jest poprawna, ponieważ jest to standardowa metoda w JavaScript, służąca do wypisywania komunikatów w konsoli przeglądarki. Funkcja console.log jest powszechnie stosowana przez programistów do debugowania kodu i monitorowania wartości zmiennych w czasie rzeczywistym. Umożliwia to efektywne śledzenie działania aplikacji internetowych oraz szybkie identyfikowanie błędów. Przykładowo, jeśli chcemy sprawdzić wartość zmiennej, możemy użyć polecenia console.log(myVariable);, co pozwoli nam zobaczyć aktualny stan zmiennej w konsoli. Warto również pamiętać, że console.log obsługuje różne typy danych, w tym obiekty i tablice, co czyni go niezwykle wszechstronnym narzędziem w arsenale programisty. Używanie tej metody jest zgodne z dobrymi praktykami w programowaniu, ponieważ pozwala na przejrzystość i lepsze zrozumienie logiki aplikacji. W kontekście pracy z konsolą, warto zaznajomić się również z innymi metodami, takimi jak console.error, console.warn czy console.info, które umożliwiają różnicowanie wypisywanych komunikatów według ich znaczenia.

Pytanie 28

Aby uruchomić kod JavaScript w przeglądarce, potrzebne jest

A. przetwarzanie na kod maszynowy
B. kompilowanie
C. interpretowanie
D. debugowanie

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wykonanie kodu JavaScript w przeglądarce wymaga jego interpretowania, co oznacza, że kod jest analizowany i wykonywany linia po linii bezpośrednio przez silnik JavaScript wbudowany w przeglądarkę, taki jak V8 w Google Chrome czy SpiderMonkey w Firefoxie. W odróżnieniu od kompilacji, gdzie cały kod źródłowy jest przekształcany w kod maszynowy przed jego uruchomieniem, interpretacja pozwala na bardziej elastyczne i interaktywne programowanie. Dzięki temu programiści mogą dynamicznie modyfikować i testować skrypty bez potrzeby każdorazowego kompilowania. Przykładem zastosowania jest wbudowana konsola w przeglądarkach, gdzie można na bieżąco wprowadzać i testować fragmenty kodu JavaScript. Interpretacja jest zgodna z zasadami dobrych praktyk programowania webowego, takim jak szybka iteracja i prototypowanie, co czyni ją kluczowym elementem w tworzeniu aplikacji internetowych. Dodatkowo, dzięki interpretacji, JavaScript może być łatwo integrowany z HTML i CSS, co przyczynia się do rozwoju bogatych interfejsów użytkownika w aplikacjach webowych.

Pytanie 29

W jakim formacie będzie wyświetlana data po uruchomieniu przedstawionego kodu?

<?php
  echo date'l, dS F Y');
?>
A. Poniedziałek, 10th lipca 2017
B. Poniedziałek, 10 lipca 2017
C. 10, poniedziałek lipca 2017
D. Poniedziałek, 10th lipca 17

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Przy analizie podanego kodu PHP, kluczowym elementem jest sposób, w jaki funkcja date() interpretuje format daty. W kodzie występuje błąd składniowy, ponieważ użycie funkcji date() powinno być w postaci date('format'). Zakładając, że błąd zostanie naprawiony na date('I, dS F Y'), funkcja ta zwraca datę w określonym formacie. 'I' oznacza pełną nazwę dnia tygodnia, 'dS' to dzień miesiąca z odpowiednim suffix, 'F' to pełna nazwa miesiąca, a 'Y' to rok w formacie czterocyfrowym. Przykładowe wyjście dla daty 10 lipca 2017 roku będzie wyglądać tak: 'Monday, 10th July 2017'. Użycie 'dS' generuje dodatek 'th' dla dni 10, 11 i 12 oraz 'st', 'nd', 'rd' dla innych dni, co jest zgodne z konwencją zapisu dat w języku angielskim. Warto podkreślić, że PHP korzysta z własnej biblioteki do zarządzania datami i czasem, co zapewnia dużą elastyczność w formatowaniu dat. Przykłady zastosowania tej funkcji można znaleźć w dokumentacji PHP, co czyni ją niezbędnym narzędziem w codziennym programowaniu.

Pytanie 30

Skrypt napisany w języku JavaScript wylicza cenę promocyjną dla swetrów w kolorach: zielonym i niebieskim (zmienna kolor) przy zakupach powyżej 200 zł (zmienna zakupy). Warunek do obliczeń powinien być sformułowany za pomocą wyrażenia logicznego?

A. zakupy > 200 || kolor == 'zielony' || kolor == 'niebieski'
B. zakupy > 200 && kolor == 'zielony' && kolor == 'niebieski'
C. zakupy > 200 || (kolor == 'zielony' && kolor == 'niebieski')
D. zakupy > 200 && (kolor == 'zielony' || kolor == 'niebieski')

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to "zakupy > 200 && (kolor == 'zielony' || kolor == 'niebieski')". Wyrażenie to jest zgodne z logiką obliczeń cen promocyjnych. Użycie operatora koniunkcji (&&) wskazuje, że oba warunki muszą być spełnione, aby cena promocyjna mogła być zastosowana. Po pierwsze, wartość zakupów musi przekraczać 200 zł, co jest kluczowym warunkiem, aby móc skorzystać z promocji. Po drugie, kolor swetra musi być jednym z dozwolonych, czyli zielonym lub niebieskim, co zostało zrealizowane za pomocą operatora alternatywy (||). Używając nawiasów, wyraźnie wskazujemy, że sprawdzenie koloru jest niezależne od warunku dotyczącego wartości zakupów. Taka konstrukcja jest zgodna z dobrą praktyką programistyczną, zapewniając czytelność i ułatwiając późniejszą modyfikację kodu. W kontekście praktycznym, można zastosować tę logikę w aplikacjach e-commerce, gdzie dynamiczne obliczenia cen promocyjnych w zależności od różnych kryteriów są powszechne. Przykładowo, przy dodawaniu nowych kolorów lub zmieniając próg zakupów, wystarczy jedynie edytować odpowiednie warunki, co czyni kod bardziej elastycznym i łatwym do zarządzania.

Pytanie 31

W obiektowym programowaniu w języku JavaScript zapis: this.zawod w podanym kodzie oznacza

function Uczen(){
  this.imie = '';
  this.nazwisko = '';
  this.technik = 'informatyk';
  this.zawod = function() {
    return this.technik;
  };
}
A. właściwość
B. klasę
C. metodę
D. konstruktor

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W programowaniu obiektowym w JavaScript słowo kluczowe this odnosi się do kontekstu bieżącego obiektu. W przedstawionym kodzie mamy do czynienia z funkcją konstrukcyjną Uczen, która jest używana do tworzenia nowych obiektów. Wewnątrz tej funkcji, this związuje się z nowo tworzonym obiektem. Metoda this.zawod, która jest zdefiniowana jako funkcja, odwołuje się do właściwości technik za pomocą słowa this i zwraca jej wartość. W JavaScript metody są funkcjami, które są przypisane do właściwości obiektu i które mogą być wywoływane jako część tego obiektu. Zapis this.zawod = function() { return this.technik; } definiuje metodę zawod w kontekście obiektu tworzonego przez konstruktor Uczen. Praktyczne zastosowanie tej metody umożliwia dostęp do wartości właściwości technik w sposób kontrolowany, co jest zgodne z dobrymi praktykami programowania obiektowego, gdzie enkapsulacja i zarządzanie dostępem do danych są kluczowymi elementami. Metody w JavaScript są podstawowym elementem umożliwiającym realizację zachowań obiektów dzięki czemu programy są bardziej modularne i łatwiejsze do utrzymania

Pytanie 32

Jaki wynik wyświetli poniższy fragment kodu JavaScript?

x='Powodzenia na egzaminie';
z=x.substring(3,9);
y=z.substring(2,4);
document.write(y);
A. owodzeni
B. ze
C. wodzenia
D. wo

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W przedstawionym kodzie JavaScript użyto funkcji substring aby wyodrębnić fragmenty tekstu z ciągu znaków. Początkowa zmienna x zawiera tekst Powodzenia na egzaminie. Pierwsza funkcja x.substring(3,9) zwraca fragment tekstu zaczynający się od indeksu 3 do 8 włącznie co daje fragment wodzen. Wartość ta jest przypisana do zmiennej z. Następnie funkcja z.substring(2,4) wyodrębnia fragment zaczynający się od indeksu 2 do 3 włącznie z tego nowego ciągu wodzen co daje rezultat ze. Wynik ten zostanie wypisany na ekranie przez document.write(y). Praktyczne zastosowanie metody substring polega na manipulacji tekstem co jest powszechne w web development np. do parsowania danych tekstowych lub przygotowania tekstu do wyświetlenia. Dobre praktyki obejmują użycie substring do przetwarzania danych wejściowych np. w formularzach czy przekształcanie danych użytkownika. Ważne jest zrozumienie indeksowania od zera oraz poprawne określenie zakresu aby uniknąć błędów logicznych w kodzie. W kontekście substringu warto pamiętać że drugi parametr jest ekskluzywny co oznacza że nie jest uwzględniany w wyniku. Takie detale są kluczowe dla programistów aby efektywnie zarządzać danymi tekstowymi w różnorodnych zastosowaniach.

Pytanie 33

W formularzu, wartości z pola input o typie number zostały przypisane do zmiennej a, a następnie przetworzone w skrypcie JavaScript w pokazany sposób. Jaki typ będzie miała zmienna x?

var x = parseInt(a);
A. napisowy
B. zmiennoprzecinkowy
C. liczbowy, całkowity
D. NaN

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja parseInt() w JavaScript jest super przydatna, bo pozwala zamienić ciąg znaków na liczbę całkowitą. Jak masz zmienną a, która bierze dane z inputu typu number, to parseInt() łapie te liczby i wyrzuca wszystko, co nie jest cyfrą. Dzięki temu dostajesz liczby całkowite. Warto wiedzieć, że ta funkcja nie zaokrągla wyników, tylko obcina część dziesiętną. To świetna opcja, gdy potrzebujesz tylko całkowitych wartości. parseInt() dobrze działa w programowaniu – często wykorzystuje się go do walidacji i manipulacji liczbami. Z mojego doświadczenia, kiedy pracujesz z różnymi typami danych, musisz zadbać, żeby przekształcenia były na miejscu, bo to bardzo ważne dla aplikacji. Użycie parseInt() jest zgodne z zasadami ECMAScript, co oznacza, że działa w różnych środowiskach JavaScript. Przykładem dobrego zastosowania są aplikacje webowe, gdzie często potrzebujesz liczb całkowitych, na przykład w kalkulatorach czy formularzach z wyborem ilości produktów.

Pytanie 34

Który zapis w języku JavaScript daje jednakowy rezultat do przedstawionego kodu?

x = 0;
x += 10;
A. x = 0; x++; x = x + 9;
B. x = 0; x--; x *= 9;
C. x = 10; x = x + 10;
D. x = 10; x = 0;

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Doskonale! Wybrałeś prawidłową odpowiedź, która jest zgodna z przykładem kodu przedstawionym na zdjęciu. W JavaScript, zapis 'x = 0; x++; x = x + 9;' działa w następujący sposób: najpierw zmienna 'x' jest inicjalizowana wartością 0. Następnie, operator inkrementacji '++', zwiększa wartość zmiennej 'x' o 1. Końcowa instrukcja dodaje 9 do obecnej wartości zmiennej 'x', która wynosi 1. W rezultacie końcowa wartość zmiennej 'x' wynosi 10, co jest zgodne z kodem przedstawionym na zdjęciu. To jest praktyczne zastosowanie operatorów inkrementacji oraz dodawania w JavaScript, umożliwiające manipulację wartościami zmiennych. To jest ważne w kontekście algorytmów i operacji matematycznych. Warto zwrócić uwagę, że operator '++' jest skrótem dla 'x = x + 1', co jest zgodne ze standardami JavaScript.

Pytanie 35

Wskaż funkcję w JavaScript, która pozwoli obliczyć połowę kwadratu liczby podanej jako argument.

A. function wynik(a) { return a/2+a/2; }
B. function wynik(a) { return a*2/2; }
C. function wynik(a) { return 2*a/a; }
D. function wynik(a) { return a*a/2; }

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja function wynik(a) { return a*a/2; } jest całkiem w porządku. Działa, bo fajnie oblicza połowę kwadratu liczby, którą podajesz jako argument. W praktyce, 'a*a' to nic innego jak kwadrat liczby 'a', a potem dzielimy to przez 2, co nam daje wartość połowy tego kwadratu. To, co zrobiłeś, jest zgodne z zasadami matematyki i jak na programowanie w JavaScript to też się sprawdza. Na przykład, jak podstawisz '4', to funkcja zwróci 8, bo (4*4)/2 = 16/2 = 8. Takie obliczenia mogą się przydać w różnych aplikacjach, np. przy obliczeniach inżynieryjnych czy analizie danych, gdzie często korzysta się z takich wzorów. Użycie zmiennych i funkcji w programowaniu ułatwia zarządzanie danymi, a do tego można łatwiej się orientować w kodzie, co jest super.

Pytanie 36

W języku JavaScript, aby zweryfikować, czy liczba leży w zakresie 100,200>, należy użyć:

A. if (liczba>100 || liczba<=200)
B. if(liczba>100 && liczba <=200)
C. if(liczba<100 && liczba<=200)
D. if(liczba<100 || liczba>=200)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Aby sprawdzić, czy liczba znajduje się w przedziale od 100 do 200 włącznie w języku JavaScript, należy użyć operatora logicznego AND (&&). Wyrażenie if(liczba > 100 && liczba <= 200) oznacza, że liczba musi być większa niż 100 oraz jednocześnie mniejsza lub równa 200. Przykład: jeśli mamy liczby 150 i 250, to 150 spełnia warunki tego warunku (jest większa od 100 i mniejsza lub równa 200), podczas gdy 250 nie spełnia (jest większa od 200). Kluczowe jest zrozumienie operatorów porównania oraz logicznych w JavaScript. Zgodnie z ECMAScript, językiem, na którym oparty jest JavaScript, użycie operatora AND w tym kontekście jest standardowym podejściem do określenia, czy wartość znajduje się w danym przedziale. Poprawne użycie tych operatorów jest istotne dla logiki programów oraz dostosowywania warunków do różnych sytuacji, co jest niezbędne w codziennej pracy programisty.

Pytanie 37

Jakie będzie wynik działania programu napisanego w JavaScript, umieszczonego w ramce, kiedy wprowadzisz wartość 5?

var n, i;
var a = 1;

n = prompt("Podaj n:", "");

for (i=n; i>=2; i--)
    a*=i;

document.write("Wynik ",a);
A. 625
B. 60
C. 120
D. 125

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Program jest przykładem prostego algorytmu obliczającego silnię liczby n, którą użytkownik wprowadza za pomocą funkcji prompt. Zmienna a jest inicjalizowana wartością 1 i służy do przechowywania wyniku. Pętla for rozpoczyna się od wartości n i zmniejsza wartość i do 2, za każdym razem mnożąc a przez i. Dla n=5 pętla wykona się pięć razy, obliczając kolejno 5*4*3*2*1, co daje wynik 120. Metoda document.write wyświetla wynik na stronie. Rozumienie mechanizmu działania pętli for i operatora *= jest kluczowe w zrozumieniu algorytmów obliczeniowych używanych w programowaniu JavaScript. Silnia jest podstawowym przykładem algorytmu rekurencyjnego, który można również zaimplementować za pomocą funkcji rekurencyjnej, co jest często stosowane w programowaniu funkcyjnym. Znajomość takich konstrukcji pozwala na tworzenie bardziej zaawansowanych algorytmów przetwarzania danych i optymalizację kodu, co jest cenioną umiejętnością w branży IT.

Pytanie 38

Jaką wartość będzie mieć zmienna str2 po wykonaniu poniższego fragmentu kodu JavaScript?

var str1 = "JavaScript"; var str2 = str1.substring(2, 6);
A. avaScr
B. vaScri
C. vaSc
D. avaS

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Metoda substring w JavaScript służy do wycinania fragmentów łańcucha znaków na podstawie podanych indeksów. W przypadku kodu str1.substring(2 6) metoda pobiera znaki zaczynając od indeksu 2 do indeksu 6 wyłącznie. Indeksowanie w JavaScript jest zerowe oznacza to że pierwszy znak ma indeks 0 drugi indeks 1 itd. Dlatego dla łańcucha JavaScript indeks 2 odpowiada trzeciemu znakowi a jest to literka v. Idąc dalej indeks 3 to a indeks 4 to S i indeks 5 to c. Indeks 6 jest wyłączny co oznacza że znak na tym miejscu nie jest uwzględniany w wyniku końcowym. Dlatego też wynikiem wywołania substring(2 6) jest ciąg znaków vaSc. Metoda substring jest przydatna w sytuacjach gdzie potrzebujemy wyodrębnić fragment ciągu znaków na przykład przy przetwarzaniu tekstów czy danych wejściowych z formularzy. Dobra praktyka przy używaniu tej metody to zawsze uwzględnianie indeksów początkowego i końcowego w celu uniknięcia błędów logicznych w kodzie oraz zapewnienie czytelności i zrozumiałości kodu dla innych programistów.

Pytanie 39

Kod JavaScript uruchomiony w wyniku kliknięcia przycisku ma na celu <img id="i1" src="obraz1.gif"> <button onclick="document.getElementById('i1').src='obraz2.gif'"> test</button>

A. zamienić obraz1.gif na obraz2.gif
B. ukryć obraz2.gif
C. wyświetlić obraz2.gif obok obraz1.gif
D. zmienić styl obrazu o id równym i1

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 'zamienić obraz1.gif na obraz2.gif' jest poprawna, ponieważ kod JavaScript w przycisku jest odpowiedzialny za zmianę źródła obrazu. W momencie kliknięcia przycisku, funkcja `document.getElementById('i1').src='obraz2.gif'` przypisuje nowe źródło do elementu o identyfikatorze 'i1', co efektywnie powoduje wyświetlenie obraz2.gif zamiast obraz1.gif. Tego typu manipulacje DOM są powszechnie stosowane w interaktywnych aplikacjach webowych, gdzie użytkownik wchodzi w interakcję z różnymi elementami. Przykładem zastosowania tej techniki może być tworzenie galerii zdjęć, gdzie użytkownik klika na miniaturkę, a główny obrazek zostaje zmieniony na wybrane zdjęcie. Warto również zauważyć, że ta zmiana jest realizowana bez potrzeby reładowania strony, co znacząco poprawia doświadczenie użytkownika. Takie podejście jest zgodne z dobrymi praktykami w zakresie tworzenia dynamicznych interfejsów użytkownika.

Pytanie 40

Które stwierdzenie na temat funkcji fun1 zapisanej w języku JavaScript jest prawdziwe?

var x = fun1(3, 24, "Mnożymy");

function fun1(a, b, c) {
    return a * b;
}
A. Ma dwa parametry liczbowe i zwraca wartość typu napisowego.
B. Zwraca dwie wartości przechowywane w zmiennych a i b.
C. Ma trzy parametry wejściowe, w tym jeden typu napisowego, i zwraca wartość numeryczną.
D. Przyjmuje trzy parametry, lecz nie zwraca wartości.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Gratulacje, Twoja odpowiedź jest poprawna. Istotą funkcji w JavaScript jest to, że mogą one przyjmować dowolną liczbę argumentów i mogą zwracać wartość. W przypadku funkcji fun1, przyjmuje ona trzy parametry: a, b, c. Parametr c jest typu napisowego, co jest istotne, ponieważ JavaScript jest językiem słabo typowanym, co oznacza, że możemy przekazywać różne typy zmiennych jako argumenty dla funkcji. Funkcja fun1 zwraca wynik mnożenia dwóch pierwszych parametrów, co jest wartością numeryczną. To jest zgodne z zasadami JavaScript, gdzie funkcje mogą zwracać dowolne wartości - w tym przypadku wartość numeryczną. W praktyce, funkcje takie jak ta mogą być używane w różnych kontekstach, na przykład do manipulacji danymi wejściowymi i zwracania przetworzonych wyników.