qq飞车终极猛兽性能:编写程序,求e的值.e=1+1/1!+1/2!+1/3!+1/4!+....+1/n!(1)

来源:百度文库 编辑:高考问答 时间:2024/05/06 00:12:26
用for循环,计算前50项,用while循环,要求直到最后一项的值小于10-4.
我是初学者,请各位帮忙解决一下,谢谢了.
请问一下,为什么我把下边的程序掉到C里,运行后的结果是:
(Floating point error: Dinide by 0.)
这是为什么啊!谁能告诉我一下,谢谢了!

main(){
int i,j=1,number,s=1;
double m=0,t=0;
for(number=1;number<=50;number++) {
for(;j<=number;j++)
s=s*j;
m=m+1.0/s;
}
//m即为前50项的和

s=1;
i=1;
do {
s=s*(i++);
t=t+1.0/s;
}
while(1.0/s>=0.0001) ;
//t即为当最后一项小于10-4时的e的近似值。

}

以上是用C语言编的程序。

}

main()
{
int i,n,s=1;
double m=0;
for(n=1;n<=50;n++)
{
for(i=1;i<n;i++)
s=s*i;
m=m+1.0/s;
}
}//求前50项的和

main()
{
int i=1,s=1,n;
double m=0;
for(n=1;n<=50;n++)
{
do
{ s=s*(i++);
t=t+1.0/s;
}
while(1.0/s>=0.0001)
}
}//求前n项的和直到最后一项的值小于"10的-4方"

简单,就是简单的循环
可以用递归做

此问题太过简单 不于回答