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

如何使用in运算符遍历系数实现三次多项式P = A + BX + CX² + DX³计算?

三次多项式计算代码实现

需求约束

  • 计算三次多项式值:( P = A + BX + CX^2 + DX^3 )
  • 禁止使用如下直接计算的实现方式:
a = float(input(" give a "))
b = float(input(" give b "))
c = float(input(" give c "))
d = float(input(" give d "))
x = float(input(" give x "))
p = a + b*x + c*x*x + d*x*x*x
print(" p = ", p)
  • 必须使用指定循环结构实现核心逻辑:
for i in (a, b, c, d):
    . . .

实现思路

遍历系数元组(a,b,c,d)时同步维护当前项对应的x幂次即可:

  1. 初始化结果p为0,幂次计数器exponent为0
  2. 每次循环取出对应系数,计算当前项值累加到结果中
  3. 循环结束后幂次自增1,匹配下一个系数对应的幂级

最终可运行代码

a = float(input(" give a "))
b = float(input(" give b "))
c = float(input(" give c "))
d = float(input(" give d "))
x = float(input(" give x "))

p = 0
exponent = 0
# 按要求使用指定循环结构
for i in (a, b, c, d):
    p += i * (x ** exponent)
    exponent += 1

print(" p = ", p)

可选优化方案(霍纳法则)

如果允许调整系数遍历顺序,可使用霍纳法则减少乘法运算次数,计算效率更高:

p = 0
# 按最高次到最低次遍历系数
for i in (d, c, b, a):
    p = p * x + i
print(" p = ", p)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 20:06:03