KWALIFIKACJA INF3 - STYCZEŃ 2021

PYTANIE NR 9.
Wskaż funkcję JavaScript, za pomocą której można obliczyć połowę kwadratu liczby przekazanej jako argument.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Połowa kwadratu liczby a to wartość (a·a)/2. Poprawna funkcja musi więc najpierw obliczyć kwadrat argumentu (mnożenie a przez a), a następnie podzielić wynik przez 2 i zwrócić go instrukcją return. Pozostałe propozycje liczą co najwyżej a lub stałą, a nie (a²)/2.

Pełne wyjaśnienie:

Sformułowanie "połowę kwadratu liczby przekazanej jako argument" oznacza konkretny wzór matematyczny:

(a2)/2, czyli (a·a)/2.

W JavaScript najprościej zapisać to jako wyrażenie a*a/2 (mnożenie oraz dzielenie). Instrukcja return zwraca obliczoną wartość, dzięki czemu można jej użyć dalej w programie, np. przypisać do zmiennej lub wyświetlić.

Dlaczego pozostałe odpowiedzi są błędne?

  • Wyrażenie a*2/2 upraszcza się do a, bo mnożenie przez 2 i dzielenie przez 2 znoszą się. To nie jest kwadrat liczby.
  • Wyrażenie a/2+a/2 daje w sumie a (dwie połówki tej samej liczby). Nadal brakuje kwadratu.
  • Wyrażenie 2*a/a dla a≠0 daje stałą wartość 2. Dodatkowo dla a=0 prowadzi do dzielenia przez zero, co jest błędem obliczeniowym.

Wskazówka egzaminacyjna: gdy masz wątpliwości, podstaw prostą wartość, np. a=3. Poprawny wynik to (9)/2=4,5. Jeśli funkcja zwraca 3 lub 2, to na pewno nie liczy połowy kwadratu.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
To zapis matematyczny (a²)/2, czyli najpierw liczysz kwadrat liczby (a·a), a dopiero potem dzielisz wynik przez 2. W kodzie JavaScript typowo zapisuje się to jako a*a/2, a wynik zwraca się przez return.
Użyj składni function nazwa(parametr) { return wyrażenie; }. Kluczowe jest słowo return, bo bez niego funkcja nie zwróci obliczonej wartości do miejsca wywołania. W zadaniach obliczeniowych najczęściej w return podajesz gotowe wyrażenie.
Bo a*2/2 upraszcza się do a: mnożenie przez 2 i dzielenie przez 2 wzajemnie się znoszą. W tym wyrażeniu w ogóle nie ma kwadratu (a·a). "Połowa kwadratu" wymaga najpierw potęgowania (tu: mnożenia a przez a).
Nie. a/2 + a/2 to po prostu a (dwie połówki tej samej liczby). Natomiast a*a/2 rośnie znacznie szybciej, bo zawiera kwadrat. Dla a=4: a/2+a/2=4, a a*a/2=8. To zupełnie inne wyniki.
Gdy a=0, bo pojawia się dzielenie przez zero (w JS daje to wartości specjalne typu Infinity lub NaN, zależnie od sytuacji). Nawet dla a≠0 wyrażenie 2*a/a zwykle daje stałe 2, więc nie oblicza "połowy kwadratu".
Najprościej podstaw do argumentu łatwą liczbę, np. 2 lub 3, i policz "na kartce". Jeśli zadanie mówi o (a²)/2, to dla a=3 wynik to 4,5. Gdy w odpowiedzi wychodzi 3 albo 2, wiesz, że wzór w kodzie nie odpowiada treści zadania.
Wystarczą dwa: * do obliczenia kwadratu jako a*a oraz / do podzielenia wyniku przez 2. Nie trzeba używać żadnych bibliotek ani funkcji matematycznych, bo kwadrat liczby w najprostszym przypadku to zwykłe mnożenie.
Tak, można zapisać kwadrat jako Math.pow(a, 2), a następnie podzielić przez 2. W zadaniach egzaminacyjnych często preferuje się jednak prostszy zapis a*a, bo jest czytelny i nie wymaga pamiętania składni funkcji z obiektu Math.
Najczęściej myli się sens wyrażenia i liczy się tylko "połowę liczby" (a/2+a/2) albo wykonuje się operacje, które się znoszą (a*2/2). Typowy błąd to też brak kwadratu (brak a*a). Pomaga szybki test z a=3 lub a=4.
Bez return funkcja nie przekazuje wyniku na zewnątrz, więc wywołanie nie daje wartości do dalszych obliczeń. W zadaniach egzaminacyjnych chodzi zwykle o funkcję, która zwraca obliczony wynik, a nie tylko wykonuje działania "wewnątrz" bez efektu dla programu.
info

Statystycznie 77% uczniów zna prawidłową odpowiedź. średnio łatwe

Według specjalistów z branży: "Połowa kwadratu liczby a to wartość (a·a)/2."

Źródła:

  • MDN Web Docs: Functions — https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Functions (dostęp: 2026-02-27)
  • MDN Web Docs: Multiplication operator (*) — https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Multiplication (dostęp: 2026-02-27)
  • MDN Web Docs: Division operator (/) — https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Division (dostęp: 2026-02-27)

Materiały:

  • Dokumentacja MDN: funkcje w JavaScript
  • Dokumentacja MDN: operator mnożenia (*) i dzielenia (/)
  • Ćwiczenia: tworzenie funkcji zwracających wynik obliczeń dla różnych argumentów

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego