一道计算题.怎么也算不出.帮帮忙好吗?谢谢

skiwaid 2004-05-02 05:10:56
题目是计算出常数E
要求精确到小数点后4位
公式是;
e=2+1/2!+1/3!+2!+1/4!+.....+2!+1/....../n!

我做了一个.但总是得不到最后结果也不知道是哪里错了.

double e=1;
int n=3;
while (e%1/10000<0.00001&&e%1==0)//计算出除以N!前面的数的直
{

double x=1,a=3;//A就是分母中的除第1个阶乘的直(如4!+3!+2!+1中 A=3!+2!+1) X就分母中的第一个阶乘直.如4!+3!+2!+1中 X=4!

for (int N=1;N==n;N++)//计算出X的阶乘
{
x=x*(N+1);
}
n++;
e=e/(x+a);
a=x+a;
}

double Xa=1;
for(int Na=1;Na==n;Na++)//计算出N!
{

Xa=Xa*(Na+1);
}
e=e/Xa;//算出最后结果
Console.WriteLine(e)

还有不知道我的算法对不对.能不能把更简单的算法写出来呢
...全文
22 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanbest 2004-05-02
  • 打赏
  • 举报
回复
1/3!+2!。。。。。。肯定错了。

ei=1/i!;e=e1+e2+e3....我记得没错的话就是这样。

#define N 100

#include"stdio.h"
#include<iostream>
using namespace std;
float e=2.0;
float x=1.0;
void main()
{
for(int i=2;i<=N;i++)
{
x=x/i;
e=e+x;
}

cout<<e;

}

这样不就行了,没必要去计算什么N!,也计算不出来的。
lxcc 2004-05-02
  • 打赏
  • 举报
回复
找到1/2!+1/3!+2!+1/4!+.....+2!+1/....../n!的通项公式
好象是那个e常数,2.71828
fanbest 2004-05-02
  • 打赏
  • 举报
回复
wait..float数可以用%运算吗?

还有你常数e的公式是不是错了?

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧