功能:编写函数求表达式的和(n的值由主函数输入)。 1-1/2+1/3-1/4+......+1/m 例如:当n=20时,表达式的值为0.668771。 请补充下列程序,使其输出正确结果。
时间: 2024-01-21 11:18:03 浏览: 71
C语言程序设计-编写函数求表达式的和(n的值由主函数输入);1-12+13-14+......+1m
5星 · 资源好评率100%
以下是一个可能的解法:
```python
def sum_expression(n):
"""
计算表达式的和
"""
s = 0 # 初始化和为0
flag = 1 # 标记正负号,初始为1表示加号
for m in range(1, n+1):
s += flag * (1 / m) # 累加每一项
flag *= -1 # 每一项后面的符号取反
return s
n = 20
result = sum_expression(n)
print("n={}时,表达式的值为{}".format(n, result))
```
该程序使用循环遍历表达式中的每一项,根据奇偶性在每一项后面添加正号或负号,并将每一项的值累加到总和中。最后返回总和即可。
注意,本题中的表达式要求从1开始而非从0开始,因此循环的范围应该是1到n而非0到n-1。
阅读全文