You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于公式实现无穷级数?Python编写cos_series求和函数结果不符求解

问题排查

  • 首先代码缺失math模块导入,运行时会直接抛出名称错误。
  • 符号逻辑错误:原级数的符号规则为第i项(从0开始计数)的符号是(-1)^i,你当前创建两个分别存储全正、全负项的列表后拼接切片的逻辑完全不符合符号规则,导致项重复、符号计算错误。
  • 冗余操作:不需要创建两个列表存储所有项,遍历计算时直接累加即可,减少不必要的内存占用。

修正后代码

import math

def cos_series(x, nterms):
    res = 0
    for i in range(nterms):
        # 计算当前项的符号、分子、分母
        sign = (-1) ** i
        numerator = x ** (2 * i)
        denominator = math.factorial(2 * i)
        res += sign * numerator / denominator
    return res

# 测试调用
print(cos_series(math.pi/3, 3))

验证结果

调用cos_series(math.pi/3, 3)时,计算过程为:

第0项:1 * ( (π/3)^0 / 0! ) = 1
第1项:-1 * ( (π/3)^2 / 2! ) ≈ -0.548311
第2项:1 * ( (π/3)^4 / 4! ) ≈ 0.050107
求和结果:1 - 0.548311 + 0.050107 ≈ 0.501796,和预期结果一致。

内容的提问来源于stack exchange,提问作者Averyf00350

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 17:24:03