Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe Algorytmy i podstawy informatyki JavaScript

Skrypt JavaScript obsługujący płace pracowników ma wygenerować raport dla osób zatrudnionych na umowę zlecenie, które zarabiają w przedziale obustronnie domkniętym od 3000 do 3500 zł. Który warunek należy zastosować?

A.
umowa == 'zlecenie' || (pensja >= 3000 && pensja <= 3500)
B.
umowa == 'zlecenie' || (pensja >= 3000 || pensja <= 3500)
C.
umowa == 'zlecenie' && (pensja >= 3000 || pensja <= 3500)
D.
umowa == 'zlecenie' && (pensja >= 3000 && pensja <= 3500)
Poprawny warunek to umowa == 'zlecenie' && (pensja >= 3000 && pensja <= 3500). Operator && oznacza logiczne „i”, więc wszystkie połączone nim warunki muszą być prawdziwe jednocześnie. Najpierw sprawdzany jest rodzaj umowy, a następnie zakres pensji. Zapis pensja >= 3000 && pensja <= 3500 odpowiada przedziałowi obustronnie domkniętemu od 3000 do 3500 zł, czyli uwzględnia również wartości graniczne 3000 i 3500. Do zapamiętania: przedział zamknięty zapisuje się jako dolna_granica <= wartość && wartość <= górna_granica, w JavaScript zwykle w formie wartość >= dolna_granica && wartość <= górna_granica. Taki warunek stosuje się przy filtrowaniu danych, np. podczas generowania raportów kadrowych lub zestawień płacowych.
W tym zadaniu trzeba jednocześnie ograniczyć typ umowy i zakres wynagrodzenia. Warunek umowa == 'zlecenie' || (pensja >= 3000 || pensja <= 3500) jest zbyt szeroki: operator || oznacza „lub”, więc wystarczy spełnienie jednego fragmentu. Dodatkowo pensja >= 3000 || pensja <= 3500 dla wartości liczbowych praktycznie nie ogranicza pensji do podanego przedziału. Warunek umowa == 'zlecenie' && (pensja >= 3000 || pensja <= 3500) poprawnie wymaga umowy zlecenia, ale błędnie opisuje zakres pensji, ponieważ używa || zamiast && między granicami. Warunek umowa == 'zlecenie' || (pensja >= 3000 && pensja <= 3500) wybierze wszystkie osoby na umowie zlecenie niezależnie od pensji oraz osoby z innych umów, jeśli mieszczą się w przedziale. Poprawny zapis to umowa == 'zlecenie' && (pensja >= 3000 && pensja <= 3500). Typowy błąd polega na traktowaniu operatora || jak zawężenia, choć w filtrach zwykle rozszerza on zbiór wyników.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.