计算多项式的值
描述
对于多项式f(x) = ax3 + bx2 + cx + d 和给定的a, b, c, d, x,计算f(x)的值。
输入输入仅一行,包含5个实数,分别是x,及参数a、b、c、d的值,每个数都是绝对值不超过100的双精度浮点数。数与数之间以一个空格分开。输出输出一个实数,即f(x)的值,保留到小数点后7位。样例输入
2.31 1.2 2 2 3
样例输出
33.0838692
1 x,a,b,c,d=[float(i) for i in input().split()] 2 print("%.7f" % (a*x**3+b*x**2+c*x+d))
说明:
a,b=c,d复制的实际是讲一个列表赋值给了a,b。如:
>>> l=[1,2]
>>> a,b=l
>>> a
1
>>> b
2
而代码第1行就是将一个列表赋值给了5个变量
[float(i) for i in input().split()]是应用for...in 语句产生一个列表,如:
>>> l=[i for i in range(10)] >>> l [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> l=[i*i+2*i for i in range(10)] >>> l [0, 3, 8, 15, 24, 35, 48, 63, 80, 99]
还可以用for...in...if语句来产生一个列表,如:
>>> l=[i for i in range(10) if i%2==0] >>> l [0, 2, 4, 6, 8]
而float()是将字符串转变成了实数。如:
>>> float('3.1415926')
3.1415926
>>> float(10)
10.0
“**”是求幂。如x**y就是求x的y次方。
浙公网安备 33010602011771号