Написать программу для вычисления приближенного значения cos(x)

Вот такую формулу вывел

Написал код, но считается кажется вообще не так... Объясните пожалуйста задание
let x = prompt("введите х", '')
let N = prompt("введите N", '')
function factorial(c) {
return (c != 1) ? c * factorial(c - 1) : 1;
};
let fac = factorial;
function asd(N, x){
let k = (N+1)*N
let sum = 1 + ((Math.pow(-1, N)* Math.pow(x, k)/fac(2*N)));
alert(sum)
}
console.log(asd(5, 10))
Ответы (1 шт):
Автор решения: MBo
→ Ссылка
Такие вопросы каждый день появляются.
Ключевые моменты:
Вычисления нужно прервать по заданном условию (модуль слагаемого стал меньше заданной величины)
Очередное слагаемое нетрудно получить из текущего домножением без явного использования степеней и факториалов (в данном случае изменить знак, умножить на икс квадрат, разделить на k*(k+1) для получения в знаменателе k!=(2i)!)
Псевдокод:
y = 1
summ = 0
k = 1
while abs(y) > q:
summ += y
y = -y * x * x / (k * k + k)
k += 2