数学常数e是数学中一个重要的常数,它是一个无限不循环小数,其值约为2.71828。其计算公式为:
e=1+1!1+2!1+3!1+⋯+i!1
这里输入需要的e值精度n(即参与计算e值的项i!1都不小于10n1),3≤n≤10。编程计算输出相应精度的e值(保留n+1位小数)。
输入格式:
输入需要的e值精度n。
输出格式:
输出相应精度的e值,保留n+1位小数(四舍五入)。
输入样例:
3
输出样例:
2.7181
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main()
{
long long int n, s= 1,i=1;
cin >> n;
long double e = 1.0;
for (;;) // i!<=10^n需要
{
e = e + 1.0 / i;
s++;
i *= s;
if (i > (pow(10, n)))break;
}
cout << fixed << setprecision(n + 1) << e;
return 0;
}