Problem1057--求出e的值1057: 求出e的值
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 28 Solved: 19
[Submit] [Status] [Web Board] [Creator:]Description
利用公式e = 1 + 1/1! + 1/2! + 1/3! + ... + 1/n! 求e
Input
输入只有一行,该行包含一个整数n(2<=n<=15),表示计算e时累加到1/n!。
Output
输出只有一行,该行包含计算出来的e的值,要求打印小数点后10位。
Sample Input
10
Sample Output
2.7182818011
HINT
提示:
1、e以及n!用long double的类型,这样有效位数更多。
2、要输出浮点数、长双精度数小数点后10位数字,可以用下面这种形式:
printf("%.10Lf", num); //long double类型的num值输出时要用Lf格式。
时间限制:1000ms
空间限制:128MByte
#include <iostream>
using namespace std;
int main()
{
long double sum,t;
int i,n;
i=1;sum=1;t=1;
cin>>n;
while(i<=n)
{
sum=sum*i;
t=t+1.0/sum;
i++;
}
printf("%.10Lf",t);
return 0;
}
Source/Category
[Submit] [Status]