求出 e 的值
题目描述
利用公式 e = 1 + 1 / 1 ! + 1 / 2 ! + 1 / 3 ! + ⋯ + 1 / n ! e=1+1/1!+1/2!+1/3!+ \cdots +1/n! e=1+1/1!+1/2!+1/3!+⋯+1/n!,求 e e e 的值,要求保留小数点后 10 10 10 位。
输入格式
输入只有一行,该行包含一个整数 n n n,表示计算 e e e 时累加到 1 / n ! 1/n! 1/n!。
输出格式
输出只有一行,该行包含计算出来的 e e e 的值,要求打印小数点后 10 10 10 位。
样例 #1
样例输入 #1
10
样例输出 #1
2.7182818011
提示说明
2 ≤ n ≤ 15 2 \le n \le 15 2≤n≤15。
代码内容
// #include <iostream>
// #include <algorithm>
// #include <cstring>
// #include <stack>//栈
// #include <deque>//堆/优先队列
// #include <queue>//队列
// #include <map>//映射
// #include <unordered_map>//哈希表
// #include <vector>//容器,存数组的数,表数组的长度
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll n;
cin>>n;
double e=1,sum=1;
for(ll i=1;i<=n;i++)
{
e*=i;
sum+=1/e;
}
printf("%0.10lf",sum);
return 0;
}