请编写函数fun,其功能是计算并输出如下多项式的值,Sn=1+1/1!+1/2!+1/3!+1/n!
时间: 2023-09-10 08:12:56 浏览: 99
好的,我来为您编写这个函数。以下是 Python 代码实现:
```python
import math
def fun(n):
sum = 0
for i in range(n+1):
sum += 1 / math.factorial(i)
print("Sn =", sum)
```
函数名为 `fun`,接受一个参数 `n`,表示求和的范围。在函数内部,我们使用一个变量 `sum` 来保存每一项的和。使用 `for` 循环遍历从 0 到 n 的每一个整数,计算 1/i! 的值,并将其加入 `sum` 中。最后,输出 `Sn =` 和计算得到的和。
您可以调用这个函数来计算不同范围内的多项式值,例如 `fun(5)` 将输出 Sn = 2.7166666666666663。
相关问题
c语言编写函数fun,其功能是:计算并输出下列多项式值:Sn=1+1/1!+1/2!+1/3!+1/4!+......+1/n!
以下是C语言编写的函数fun,其功能是计算并输出多项式值Sn=1+1/1!+1/2!+1/3!+1/4!+......+1/n!:
```c
#include <stdio.h>
double fun(int n) {
double t, sn = 1.0;
int i, j;
for (i = 1; i < n; i++) {
t = 1.0;
for (j = 1; j <= i; j++) {
t = t * j;
}
sn += 1.0 / t;
}
return sn;
}
int main() {
double sum = fun(4);
printf("sum is %f\n", sum);
return 0;
}
```
其中,fun函数的参数n表示要计算多项式的前n项的和,函数返回值为多项式的和。在函数中,使用了两个循环,分别计算阶乘和多项式的和。在计算阶乘时,使用了变量t来保存每一项的阶乘值,然后将其加入到多项式的和中。
/*请编写函数fun,其功能是计算并输出如下多项式的值: Sn=l+1/1!+1/2!+1/3!+1/4!+…+1/n!
*/#include <stdio.h>
double fun(int n)
{
double result = 0, factorial = 1;
int i;
for (i = 1; i <= n; i++) {
factorial *= i;
result += 1 / factorial;
}
return result;
}
int main()
{
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("Sn的值为:%lf\n", fun(n));
return 0;
}
阅读全文