1 条题解
-
0
C :
#include <stdio.h> #include <string.h> #include <ctype.h> #include <iso646.h> #include <math.h> #include <malloc.h> double fact(int m) { int i; double s=1; for (i=1;i<=m;i++) s*=i; return s; } double mypow(double y,int m) { double z; z=pow(y,m); return z; } int main() { double x; int i,n; double ns,xs,s,sum=0; scanf ("%lf %d",&x,&n); for (i=1;i<=n;i++) { ns=fact(i); xs=mypow(x,i); s=xs/ns; if (i%2==0) s*=-1; sum+=s; } printf ("%.4lf\n",sum); return 0; }
C++ :
#include<iostream> using namespace std; double fact(int); double mypow(double, int); int main() { double x; int n; double sum = 0.0; cin >> x >> n; for(int i=1; i <= n; ++i){ if(i % 2 == 1){ sum += mypow(x, i) / fact(i); }else if(i % 2 == 0){ sum -= mypow(x, i) / fact(i); } } // int i = 1; // while (i <= n){ // // } printf("%.4f", sum); return 0; } double fact(int n){ long f = 1; if(n == 0 || n == 1) f = 1; else f = fact(n-1) * n; return (double)f; } double mypow(double x, int n){ double p = 1.0; if(n == 0) p = 1.0; else if (n > 0){ p = mypow(x, n-1) * x; } return p; }
- 1
信息
- ID
- 1936
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 上传者