求数学常数e,pta有一个测试点一直过不去
下面是我写的代码,三个测试点,最后一个过不去。
程序代码:#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int fac(int n)
{
int i,f=1;
for (i=1;i<=n;i++)
f*=i;
return f;
}
int main(void)
{
int i,n;
double e=1;
cin >> n;
for (i=1;fac(i)<=pow(10,n);i++) {
e+=(double)1/fac(i);
}
cout << fixed << setprecision(n) <<e;
return 0;
}[此贴子已经被作者于2021-3-21 00:36编辑过]


