用c++语言:编写程序求无理数e的值并输出。计算公式为:e=1+1/1!+1/2!+1/3!+......+1/n! (1)用for循环,计算前30项。(2)用while循环,要求直至最后一项的值小于10-6
时间: 2023-10-09 08:08:27 浏览: 97
以下是使用C++编写的程序,分别使用for循环和while循环计算e的值:
使用for循环计算e的值:
```c++
#include <iostream>
using namespace std;
int main()
{
int n = 30;
double e = 1.0, factorial = 1.0;
for(int i = 1; i <= n; i++)
{
factorial *= i;
e += 1.0 / factorial;
}
cout << "e = " << e << endl;
return 0;
}
```
使用while循环计算e的值:
```c++
#include <iostream>
using namespace std;
int main()
{
int n = 1;
double e = 1.0, factorial = 1.0, term = 1.0;
while(term >= 1e-6)
{
factorial *= n;
term = 1.0 / factorial;
e += term;
n++;
}
cout << "e = " << e << endl;
return 0;
}
```
在以上代码中,我们使用了一个变量n来控制循环次数,同时使用一个变量factorial来计算阶乘,一个变量term来记录每一项的值。在for循环中,我们计算了前30项的和,而在while循环中,我们一直循环直到最后一项的值小于10的负6次方。
阅读全文