#include <stdio.h> #include <stdlib.h> double mypow(double x, int n) { double result =1;; for(int i=0; i<n; ++i) { result *= x; } // printf("mypow: %lf/n",result); return result; } double fact(int n) { double ans = 1; for(int i=2; i<=n; ++i) { ans *= i; } // printf("fact: %lf/n",ans); return ans; } double item(double x, int n) { int sign = 1; if((n-1)%2 != 0) sign = -1; double mol = mypow(x,2*n-1); double deno = fact(2*n-1); // printf ( "item:%lf /n", sign*mol/deno); return sign*mol/deno; } int main ( int argc, char *argv[] ) { int n; double x,ans =0; printf("n x:"); scanf("%d %lf",&n, &x); for(int i=1; i<=n; ++i) { ans += item(x,i); } printf("%lf/n",ans); return EXIT_SUCCESS; } /* ---------- end of function main ---------- */
不用math.h 求sinx (无穷级数)
最新推荐文章于 2020-12-02 16:39:38 发布