我正在尝试编写一个函数,该函数将多项式 p(x) 的系数列表 (a0, a1, a2, a3.....an) 和值 x 作为输入。该函数将返回 p(x),它是多项式在 x 处计算时的值。
系数为 a0, a1, a2, a3........an 的 n 次多项式是函数
p(x)= a0+a1*x+a2*x^2+a3*x^3+.....+an*x^n
所以我不确定如何解决这个问题。我在想我需要一个范围,但我怎样才能使它可以处理 x 的任何数字输入?我不指望你们给出答案,我只是需要一个小小的开始。我需要一个 for 循环、while 循环还是递归是一个选项?
def poly(lst, x)
我需要迭代列表中的项目,我是否为此使用索引,但是如何让它迭代未知数量的项目?
我想我可以在这里使用递归:
def poly(lst, x):
n = len(lst)
If n==4:
return lst[o]+lst[1]*x+lst[2]*x**2+lst[3]*x**3
elif n==3:
return lst[o]+lst[1]*x+lst[2]*x**2
elif n==2:
return lst[o]+lst[1]*x
elif n==1:
return lst[o]
else:
return lst[o]+lst[1]*x+lst[2]*x**2+lst[3]*x**3+lst[n]*x**n
这适用于 n<=4,但我得到一个索引错误:list index out of range for n>4,但不知道为什么。