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

Python级数求和程序输出恒为0.00,求问题排查与修正

问题排查与代码修正

原代码的核心错误

  • 循环范围错误:range(numbed + 1) 会遍历从0到n的所有整数,但级数的第一项是x^1,不需要a=0的项
  • 符号逻辑颠倒:题目中级数的符号规律是:第a项(a从1到n)为+x^a/a(当a为奇数),-x^a/a(当a为偶数),原代码的符号判断正好相反
  • 分母错误:每一项的分母应该是当前的项数a,而非固定的numbed(n)

修正后的代码

x = float(input("Enter value of x: "))
n = int(input("Enter value of n: "))
summed = 0.0

for a in range(1, n + 1):
    # 奇数项为正,偶数项为负
    sign = 1 if a % 2 == 1 else -1
    # 计算当前项并累加
    term = sign * (x ** a) / a
    summed += term

print("Sum of series:", summed)

代码说明

  1. 将x的输入改为float,支持小数输入(输入整数也能正常处理)
  2. 循环从1开始到n,完全匹配级数的项数范围
  3. 用sign变量明确控制每一项的符号,贴合题目要求的规律
  4. 每一项的分母使用当前项数a,修正了原代码固定分母的错误
  5. 初始值summed设为0.0,确保浮点运算精度

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 20:00:58