好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

多项式求值问题(horner规则)——Python实现

# 多项式求值(Horner规则) # 输入:A[a0,a1,a2...an],x的值 # 输出:给定的x下多项式的值p   # Horner迭代形式实现

1 # 在此修改初值
2 A = [2, 6, 15, -5, 34]
3 x = 2
4 # 主程序
5 p = A[-1]       # 将索引指定为 -1 ,可让 Python 返回最后一个列表元素
6 for i in range(1,len(A)):
7     p = p*x + A[-1-i]
8 print(‘迭代法,该多项式的值为:‘,p)

 

# Horner递归形式实现
# 在此修改初值
A = [2, 6, 15, -5, 34]
x = 2
# 主程序
p = A[-1]
i = 1
def horner(A,x,p,i):
    p = p*x + A[-1-i]
    if i < len(A)-1:
        horner(A,x,p,i+1)
    else:
        print(‘递归法,该多项式的值为: ‘,p)
# 函数调用
horner(A,x,p,i)

 

运行结果:

迭代法,该多项式的值为: 578
递归法,该多项式的值为:  578

查看更多关于多项式求值问题(horner规则)——Python实现的详细内容...

  阅读:29次