求sinx的近似值利用公式求sin(x)的近似值(精度为10e-6).sinx=x-x3/3!+.
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/22 14:38:47
求sinx的近似值利用公式求sin(x)的近似值(精度为10e-6).sinx=x-x3/3!+.
求sinx的近似值
利用公式求sin(x)的近似值(精度为10e-6).
sinx=x-x3/3!+.
求sinx的近似值利用公式求sin(x)的近似值(精度为10e-6).sinx=x-x3/3!+.
1 #include
2 #include
3 #include
4 double abs(double a) {
5 return a > 0 ? a : -a;
6 }
7 int fun(int a) {
8 if (a == 1) return 1;
9 return a * fun(a-1);
10 }
11 double _sin(double a) {
12 double result = 0.0;
13 double last = 0.0;
14 for(int i = 0; i < 100 ; i ++) {
15 result += (pow(a,(2.0*i+1.0) * 1.0) * pow(-1.0,i * 1.0)) / (1.0 * fun(2*i+1));
16 printf("tmp last:%lf result:%lf (%lf)\n",last,result,result - last);
17
18 if (abs(result - last) < 10e-6) {break;}
19 last = result;
20 }
21 return result;
22 }
23 int main(int argc,char *argv[]) {
24 double number;
25 scanf("%lf",&number);
26 printf("%lf\n",_sin(number));
27 return 0;
28 }