joj1020
1020: u Calculate e
Result | TIME Limit | MEMORY Limit | Run Times | AC Times | JUDGE |
---|---|---|---|---|---|
3s | 8192K | 6098 | 1521 | Standard |
Background
A simple mathematical formula for e is
where n is allowed to go to infinity. This can actually yield very accurate approximations of e using relatively small values of n.
Output
Output the approximations of e generated by the above formula for the values of n from 0 to 9. The beginning of your output should appear similar to that shown below.
Sample Output
n e - ----------- 0 1 1 2 2 2.5 3 2.666666667 4 2.708333333
#include<stdio.h>
double factoral(double);
double showsum(int );
int main(void)
{
int n, i;
double sum = 0;
printf("n e\n");
printf("- -----------\n");
printf("0 1\n");
printf("1 2\n");
printf("2 2.5\n");
for (i=3; i<=9; i++)
{
printf("%d ", i);
printf("%.9lf\n",1+showsum(i));
}
return 0;
}
double factoral(double i)
{
if (i == 0)
return 1;
else
return i*factoral(i-1);
}
double showsum(int n)
{
double sum=0;
for(int i=1;i<=n;i++)
{
sum+=(double)1/factoral(i);
}
return sum;
}
This problem is used for contest: 76 182
Submit / Problem List / Status / Discuss