题目描述
输入一个正数x和一个正整数n,求下列算式的值。要求顶一个调用2个函数:fact(n)计算n的阶乘;mypow(x,n)计算x的n次幂(即xn),两个函数的返回值类型是double。
x - x2/2! + x3/3! + ... + (-1)n-1xn/n!
×输出保留4位小数。
输入
x n
输出
数列和
样例输入
2.0 3
样例输出
1.3333
代码如下:
#include<stdio.h>
#include<math.h>
double fact(int n){
int i=0;
long f=1;
for(i=2;i<=n;i++){
f=f*i;
}
return (double)f;
}
double mypow(double x,int n){
int i=0;
double m=1;
for(i=1;i<=n;i++){
m=m*x;
}
return m;
}
int main(){
int i,n,s;
double x,sum;
scanf("%lf%d",&x,&n);
sum=x;
s=1;
for(i=2;i<=n;i++){
s=s*(-1);
sum=sum+s*mypow(x,i)/fact(i);
}
printf("%.4f\n",sum);
return 0;
}