3、编写一个函数模块,用泰勒级数sin(x),计算sin(x)的值。要求最后一项的绝对值小于10-5(最后一项要算在累加和中) 在main函数中调用这个函数并输出结果

如图编写一个函数模块,用泰勒级数sin(x),计算sin(x)的值。要求最后一项的绝对值小于10的-5次方(最后一项要算在累加和中〉

img

供参考:

#include <stdio.h>
#include <math.h>
double sinval(double x)
{
    int  n = 0;
    double item = x, sum = 0, s;//item 为泰勒级数公式中的当前项,初始设为第一项
    while(fabs(item) >= 1e-5) //如果当前项的绝对值大于10-5,则继续循环
    {
        sum = sum + item; //将当前项加入到总和里
        n++;             //项数+1
        s = (2*n+1)*2*n; //分母中比前项多出的两项的乘积
        item=(-1)*item*x*x/s; //在前项的基础上计算当前项。即当前项=-前项xx/s
    }
    return sum;
}
int main()
{
    double x;
    scanf("%lf", &x);
    printf("%f",sinval(x));
    return 0;
}