Я использую ряд Тейлора для вычисления sin()
. Ряд Тейлора для греха:
Реализация, которую я использую, выглядит следующим образом:
float sine(float x, int j)
{
float val = 1;
for (int k = j - 1; k >= 0; --k)
val = 1 - x*x/(2*k+2)/(2*k+3)*val;
return x * val;
}
Насколько я понимаю, этот код представляет собой аппроксимацию j
членов полинома (другими словами, аппроксимация представляет собой суммирование от нуля до j
, а не от нуля до ∞), k
равно n
в формуле, и, конечно, x
равно x
.
Я пытаюсь понять эту реализацию, то есть преобразование формулы выше в код. Моя цель — написать такую же реализацию для серии cos()
.
Не могли бы вы помочь мне понять это?