0
私は学習している本のコードをコピーしようとしています。プログラムは2次関数の平方根を見つけるはずですが、IDLEでモジュールを実行するとエラーが発生します。平方根のあるドメインエラー
#This is a program to find the square roots of a quadratic function.
import math
def main():
print ("this is a program to find square roots of a quadratic function")
print()
a,b,c = eval(input("enter the value of the coefficients respectively"))
discRoot = math.sqrt(b * b - 4 * a * c)
root1 = (- b + discRoot)/2 * a
root2 = (- b - discRoot)/2 * a
print ("The square roots of the equation are : ", root1, root2)
print()
main()
私は、次のエラーを取得しています:私はここで間違って正確に
Traceback (most recent call last):
File "/home/ubuntu/Desktop/untitled.py", line 21, in <module>
main()
File "/home/ubuntu/Desktop/untitled.py", line 13, in main
discRoot = math.sqrt(b * b - 4 * a * c)
ValueError: math domain error
何をしているのですか? discRoorの値が負になっているからでしょうか?
から4 * A * c'は負ですか? – DeepSpace
質問のタイトルをよりわかりやすくしてください –
'int'を使うときに' eval'を使うのはなぜですか? – Li357