Вычислить заданную функцию, что разложена в ряд Маклорена - C (СИ)
Формулировка задачи:
Здравствуйте.
Требуется составить функцию, которая вычисляет заданную функцию, что разложена в ряд Маклорена.
Вычислить cos 18 з точностью до 0,00001.
cosx=1 - x^2\2! + x^4\4!+ ....+(-1)^n * (x^2n)\ (2n)! +..,
Буду благодарна, если найдутся люди, которые помогут)
Решение задачи: «Вычислить заданную функцию, что разложена в ряд Маклорена»
textual
Листинг программы
double mycos(double x) { int n; double s,an; an=1;// нулевой член ряда s=an; // суммируем нулевой член n=1; // следуюший член первый while(fabs(an)>=0.00001) { an*=-x*x/(2*n-1)/(2*n); // пересчитываем следующий член ряда через предыдущий s+=an; // суммируем n++; // переходим к следующему члену } return s; }
Объяснение кода листинга программы
- Переменная
n
инициализируется значением 1. - Переменная
an
инициализируется значением 1. (Нулевой член ряда) - Переменная
s
инициализируется значениемan
. (Сумма нулевого члена ряда) - Переменная
an
обновляется значением -xx/(2n-1)/(2*n). (Пересчет следующего члена ряда через предыдущий) - Переменная
s
обновляется значением суммыan
и предыдущего значенияs
. (Суммирование ряда) - Переменная
n
обновляется значением следующего члена ряда. - Цикл выполняется до тех пор, пока значение
an
не станет меньше или равным 0.00001. - Функция возвращает значение переменной
s
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д