Zadanie 38 z arkusza INF.03, przykładowy arkusz CKE

JavaScript Poziom: trudne

Programista napisał w języku JavaScript pętlę, która miała obliczyć wynik działania 5! (5! = 1 * 2 * 3 * 4 * 5). Popełnił jednak błąd logiczny polegający na tym, że

a = 1;
for (i = 1; i < 5; i++) {
    a = a * i;
}
Console.log(a);
Wybierz odpowiedź

Cały arkusz INF.03, przykładowy arkusz CKE Było też: EE.09, czerwiec 2019

Pokaż odpowiedź i wyjaśnienie

Poprawna odpowiedź: D

w drugim parametrze pętli powinno być porównanie i < 6 zamiast i < 5.

Dlaczego

Przy warunku i < 5 pętla mnoży tylko przez 1, 2, 3 i 4, więc wychodzi 24. Żeby uwzględnić 5, warunek musi brzmieć i < 6 (lub i <= 5). Start od 0 dałby wynik 0.