[此贴子已经被作者于2007-9-17 22:27:20编辑过]
[此贴子已经被作者于2007-9-17 22:27:20编辑过]
我写了呀!但是不对,才求救于这里!!大家可以告诉我吗?谢谢了
#include<iostream.h>
#include<iomanip.h>
void main()
{
float a, c=1,i=1,sum1=1,sum;
for(a=1;sum1>0.000001;a++)
{
for(i=1;i<=a;i++)
c*=i;
sum1=1/c;
}
sum+=sum1;
cout<<c<<setiosflags(ios::fixed)<<setprecision(6)<<"e="<<sum1<<endl;
}
这个我以前写过,但是是计算到公式的第50项
#include <iostream>
using namespace std;
double LadderMultiply(int a);
void main()
{
int e=1;
for(int c=1;c<50;c++)
{
e+=1/LadderMultiply((double)c);
}
cout<<"利用公式e=1+1/1!+1/2!+1/3!+1/4!+…,计算到前50项,e="<<e<<endl;
}
double LadderMultiply(int a)
{
if(a<0)
{
return -1.0;
}
if(a==0)
return 0.0;
if(a>0)
for(int b=a;b>=1;b--)
a*=b;
return a;
}
[此贴子已经被作者于2007-9-18 23:07:06编辑过]
#include<iostream.h>
void main()
{
int i,n;
double e,a;
a=1;
e=1;
cout<<"please input the number of n"<<endl;
cin>>n;
for(i=1;i<=n;i++)
{
a=a*(1.0/i);
e=e+a;
}
cout.precision(8);
cout<<"the answer is:"<<e<<endl;
}