- 844 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 18:58:17 ]
- >>841
#include <stdio.h> #include <math.h> double mysin(double x) { double sub = 1.0; int last = 1001; /* 奇数 */ while (last > 1) { sub = 1 - (x*x / ((last-1)*last)) * sub; last -= 2; } return x * sub; } int main(int argc, char *argv[]) { while (1) { double x; scanf("%lf", &x); printf("mysin(x) = %lf\t(sin(x) = %lf)\n", mysin(x), sin(x)); } } /* コメント:原点から遠ざかると近似が効かなくなるのはマクローリンの宿命だな */
|

|