u Calculate e
Problem Description
A simplemathematical formula for e is
where n is allowed to go to infinity. This can actually yield very accurateapproximations of e using relatively small values of n.
其中n是允许去到无穷大。这实际上可以产生电子商务使用正的相对较小的值非常准确的近似值。
Output
Output theapproximations of e generated by the above formula for the values of n from 0to 9. The beginning of your output should appear similar to that shown below.
输出对n从0到9的值,上述公式产生的e的近似值你的输出的开始应该出现类似如下所示。
Sample Output
n e
- -----------
0 1
1 2
2 2.5
3 2.666666667
4 2.708333333
代码如下:
#include<stdio.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int ad(int b);
void main(){
int i,a;
printf("n e\n");
printf("--------------\n");
do{
float sum=1.0,num;
scanf("%d",&a);
if(a==0)
printf("1\n");
for(i=1;i<=a;i++)
{
num=(float)ad(i);
sum+=(float)1/num;
}
printf("%d的阶乘和=%11.9f\n",a,sum);
}while(a!=-1);
}
int ad(int b){
int m=1,j;
for(j=1;j<=b;j++)
{
m*=j;
}
return m;
}