>>208
やってることは219と一緒
課題の内容として「xが0近傍の方が誤差は少ない」ってことを学習するためにやってるなら必要ないけど
単純に精度出したい時はmysin内のコメント外してmynorm使ってください
mainは219と同じ物使うなり適当に
#include <math.h>
//#include <stdio.h>

double mynorm(double x){
/*xを-2π〜+2πにする*/
x=fmod(x,M_PI*2);
/*xを-π〜+πにする*/
if(x<-M_PI)x=x+M_PI*2;
else if(x>M_PI)x=x-M_PI*2;
/*xを-π/2〜+π/2にする*/
if(x>M_PI_2)x=M_PI-x;
else if(x<-1*M_PI_2)x=-M_PI-x;

return x;
}
double mysin(double x){

double x2=x*x,y=1;
int i;
//x=mynorm(x);
for(i=39;i>=3;i=i-2){
y=1-x2*y/(i*(i-1));
}
y=x*y;

return y;
}