用多项式来近似表示余弦函数cosx

6-5 用多项式来近似表示余弦函数cosx (20 分)
在数学上对一些复杂的函数,常用多项式来近似表示函数。例如正弦函数cosx是用如下多项式来近似表达的:

cosx=1−
2!
x
2

  • 4!
    x
    4



6!
x
6


+⋯+(−1)
n−1

(2n−2)!
x
2n−2


+⋯

在实际计算时当多项式尾项(−1)
n−1

(2n−2)!
x
2n−2


的绝对值小于一个预定值ε(例如10
−5
或10
−6
)时可认为达到了计算精度要求,结束计算。请根据题目描述编写函数计算在x∈[0,π]处点的余弦值。

编程要求:
编写两个函数,一个是求cosx的函数MyCos(x),另一个是求n!的函数fact(n)。在函数MyCos(x)中调用fact(n)函数。其中公式中的x
n
可用库函数pow(x,n)来实现。

函数接口定义:
求n!的函数接口:
double fact(int n);
参数n是要求阶乘的数,是一个整数类型的参数,函数的返回值为double型.

求sinx值的函数:
double MyCos(double x,double epsilon);
其中x是cosx的自变量参数,epsilon是计算精度要求参数。

裁判测试程序样例:
#include <stdio.h>
/* 请在这里填写答案 */

int main()
{
double x,epsilon;
scanf("%lf%lf",&x,&epsilon);
printf("%.15f\n",MyCos(x,epsilon));
return 0;
}
输入说明:
在一行内输入两个数,两数之间用空格间隔,其中第一个数是自变量的值,第二者数是计算精度要求值。

输出说明:
输出一个值,输出保留17位小数。