#include
void main()
{
double s=0,a=1,b=1,x;
int n,N;
cin>>n>>x;
N=n;
a=x;
//b=n; 这里去掉
for (int i=1;i<=N;i++)
{
if (N==0)
{
cout<break; //如果N=0,跳出for循环
}
else
{
s+=a/b;
a*=x; //得到x的(i+1)次方
b*=(i+1); //得到(i+1)的阶乘
}
}
cout<}
修改如上
不懂再问啦
这是泰勒展开式
递推算出x^n和n!
#include
using namespace std;
double f[1000001],ans;
long long power[1000001];
int main(){
int x,n;
cin>>x>>n;
power[1]=f[1]=ans=x;//递推边界
for(int i=2;i<=n;i++){
power[i]=power[i-1]*x;
f[i]=power[i]/(power[i-1]/f[i-1]*i);
ans+=f[i];
}
cout<
怎么没有命名空间
using name space std;//加到第二行试试
#include
#include
void main()
{
float x,s;
int i,j,m,n;
cin>>n>>x;
s=x;
if(s==0)
{
cout<}
else if(n==0||n==1)
{
s=1;
cout<}
else
{
for(i=2;i<=n;i++)
{
for(j=1,m=1;j<=i;j++)
m*=j;
s+=pow(x,i)/m;
}
cout<}
}