計算多項式的值
阿新 • • 發佈:2020-09-10
描述
對於多項式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次方。