JavaScript Preparation: Arithmetics

Колеги, тази простичка задача ми създава ядове и не разбирам защо. Адекватно си ги изчислявам, минава ми първия нулев тест както е показано, но не разбирам защо резултатите на втория са такива. Каква е причината на втория нулев, резултатите да са
6
2
3
2
3
Когато съберем 3 + 1 = 4
Когато извадим от 1 - 3 = -2
Остатъкът при делене от 3 на 1 = 0

Може ли условието на задачата?

https://judge.telerikacademy.com/problem/00108arithmetic

Здравей!

Сгрешен е output-a на теста в условието, но в judge би трябвало да мине. Условието вече е оправено. Благодаря за инфото и се извиняваме!

Поздрави

Здравейте,не мога да намеря за дачите може ли линк?

@stoyangeorgiev1978
Здравей

Можеш да се присъединиш към организацията на следния линк и след това ще имаш достъп до задачите.

Здравейте.
В условието на тази задача https://judge.telerikacademy.com/problem/00308calculate е описана формулата S = 1 + 1!/x + 2!/x2 + … + N!/xN, всъщност за да е вярна задачата x не се умножава, а се повдига на степен и формулата би трябвало да бъде такава S = 1 + 1!/x + 2!/x^2 + … + N!/x^N, или поне така мисля.
Поправете ме, ако греша. :slight_smile:

И двете формули са вярни с различни решения:

При S = 1 + 1!/x + 2!/x2 + … + N!/xN:

let n = +gets();
let x = +gets();
let factN = 1;
let mutiX = 1;
let result = 1;

for (let i = 1; i <= n; i++) {
    factN *= i;
    mutiX *= x;
    result += factN / mutiX;
} 
print(result.toFixed(5));

При S = 1 + 1!/X + 2!/X^2 + … + N!/X^N:

let n = +gets();
let x = +gets();
let result = 1;
let ifac = 1;

for (let i = 1; i <= n; i++) {
    ifac = 1;
    for (let j = i; j >= 1; j--) {
        ifac *= j;
    }
    result += ifac / Math.pow(x, i);
}
print(result.toFixed(5));

Поздрави!