C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值。
1-x+x²/2!-x³/3!+x^4/4!-..-x^2n-1/(2n-1)!+x^2n/2n!n!表示n的阶乘下面是关于这个式子的代码x-x...
1-x+x²/2!-x³/3!+x^4/4!-..-x^2n-1/(2n-1)!+x^2n/2n!
n!表示n的阶乘
下面是关于这个式子的代码x-x²/2!+x³/3!-x^4/4!+...+[(-1)^(n-1)](x^n)/n!
各位大神看下怎么改可以改到我上面的所要的式子
#include <stdio.h>
void main()
{
double s=0;
int x,n,i;
printf("请输入x和n的值:");
scanf("%d%d",&x,&n);
double fact(int n);
double mypow(int x,int n);
int a=1;
for(i=1;i<=n;i++)
{
s=s+a*mypow(x,i)/fact(i);
a=-a;
}
printf("%f",s);
}
double fact(int n)
{
int i;
double result=1;
for(i=1;i<=n;i++)
{
result*=i;
}
return result;
}
double mypow(int x,int n)
{
int i;
double m=1;
for(i=1;i<=n;i++)
m=m*x;
return m;
} 展开
n!表示n的阶乘
下面是关于这个式子的代码x-x²/2!+x³/3!-x^4/4!+...+[(-1)^(n-1)](x^n)/n!
各位大神看下怎么改可以改到我上面的所要的式子
#include <stdio.h>
void main()
{
double s=0;
int x,n,i;
printf("请输入x和n的值:");
scanf("%d%d",&x,&n);
double fact(int n);
double mypow(int x,int n);
int a=1;
for(i=1;i<=n;i++)
{
s=s+a*mypow(x,i)/fact(i);
a=-a;
}
printf("%f",s);
}
double fact(int n)
{
int i;
double result=1;
for(i=1;i<=n;i++)
{
result*=i;
}
return result;
}
double mypow(int x,int n)
{
int i;
double m=1;
for(i=1;i<=n;i++)
m=m*x;
return m;
} 展开
2个回答
展开全部
#include "stdio.h"
#include "math.h"
int jiecheng(int i)
{
int k = 1;
while(i>=1)
{
k*=i;
i--;
}
return k;
}
void main()
{
printf("请输入一个x和n\n");
double x,sum=0,elem=0;
int sign = 1;
scanf("%lf,%d",&x,&n);
int i = 1;
for (i=0;i<2*n;i++)
{
int k = jiecheng(i)
elem = sign*pow(x,i)/k;
sum+=elem;
sign*=-1;
i++;
}
printf("%lf",sum);
}
#include "math.h"
int jiecheng(int i)
{
int k = 1;
while(i>=1)
{
k*=i;
i--;
}
return k;
}
void main()
{
printf("请输入一个x和n\n");
double x,sum=0,elem=0;
int sign = 1;
scanf("%lf,%d",&x,&n);
int i = 1;
for (i=0;i<2*n;i++)
{
int k = jiecheng(i)
elem = sign*pow(x,i)/k;
sum+=elem;
sign*=-1;
i++;
}
printf("%lf",sum);
}
追问
表示不行
追答
#include "stdio.h"
#include "math.h"
int jiecheng(int i)
{
int k = 1;
while(i>=1)
{
k*=i;
i--;
}
return k;
}
void main()
{
printf("请输入一个x和n\n");
double sum=0,elem=0;
int sign = 1;
int x, n;
scanf("%d,%d",&x,&n);
int i = 0;
for (i=0;i<=2*n;i++)
{
int k = jiecheng(i);
elem = sign*pow(1.0*x,i)/k;
sum+=elem;
sign*=-1;
}
printf("%lf",sum);
return;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#include<math.h>
int main()
{
double fact(int n);
double mypow(double x,int n);
int n,i;
double x,sum=1.0;
scanf("%lf%d",&x,&n);
for(i=1;i<=n;i++){
sum += pow(-1,n-1)*(mypow(x,i)/fact(i));
}
printf("%lf",sum);
return 0;
}
double fact(int n)
{
double sum=1.0;
for(;n>0;n--)
sum*=n;
return (sum);
}
double mypow(double x,int n)
{
double a=0;
a=pow(x,n);
return a;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询