利用公式e=1+1/1!+1/2!+1/3!+…+1/n! ,编程计算 e 的近似值,直到最后一项的绝对值小于 10^{-5}为止,统计累加的项数。
输入
无。
输出
在一行内输出一个小数和一个整数,分别表示 e 的值和累加的项数,两个数用空格分开。
其中 e 的值将被认定为正确当且仅当你的答案和标准答案的差值小于等于 0.0001。
#include <cstdio>
#include <cmath>
#include <iostream>
using namespace std;
int func(int n) {
int re = 1;
for (int i = 1; i <= n; i++) {
re = re * i;
}
return re;
}
int main() {
double e = 1;
int j = 1;
double yinzi = 0;
while (1.0 / func(j) >= pow(10, -5)) {
yinzi = 1.0 / func(j);
j++;
e = e + yinzi;
}
printf("%lf %d\n", e,j+1);
}