Написать программу для вычисления приближенного значения 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
→ Ссылка