编写函数fun,功能是计算如下多项式,s=1+x+x的平方/2!+x的三次方/3!+...+x的n次方/n!
时间: 2024-11-27 09:10:53 浏览: 31
编写一个名为`fun`的函数,用于计算给定次数n下的多项式表达式,即求和1 + x + x^2 / (2!) + x^3 / (3!) + ... + x^n / (n!)。这可以通过循环和数学库中的阶乘函数来实现。在Python中,我们可以用`math`模块的`factorial`函数来计算阶乘。
下面是函数的Python实现:
```python
import math
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n - 1)
def fun(x, n):
result = 1.0 # 初始化结果为1
for i in range(2, n + 1): # 从2开始,因为0和1的系数已包含在1中
term = x ** i / factorial(i) # 计算当前项
result += term # 将当前项加到总和上
return result
# 示例:
x = 2
n = 4
print("当x =", x, "和n =", n, "时,多项式的值为:", fun(x, n))
```
在这个函数中,我们首先检查是否n小于2,如果是,则直接返回1,因为前两项已经在初始结果1中包含了。然后通过循环,计算每一项,直到n次幂,将其除以对应的阶乘后再加到总和`result`上。函数最后返回计算得到的多项式值。
如果你想测试其他值,只需更改`x`和`n`变量即可。
阅读全文