当我运行此代码时:
import math
print "welcome !This program will solve your quadratic equation"
A = input("inter a =")
B = input("inter b =")
C = input("inter c =")
J=math.pow(B,2)-4*A*C
X1=-B+math.sqrt(J)/2*A
X2=-B-(math.sqrt(J))/(2*A)
print "your roots is :" , X1 , X2
它给了我错误?!为什么
谢谢^
答案 0 :(得分:1)
您的print
已遗失()
。修正版:
import math
print("welcome !This program will solve your quadratic equation")
A = input("inter a =")
B = input("inter b =")
C = input("inter c =")
J = math.pow(B,2)-4*A*C
X1 = -B+math.sqrt(J)/2*A
X2 = -B-(math.sqrt(J))/(2*A)
print("your roots is :" , X1 , X2)
我只修复了错误,我不知道它是否正确计算你需要的东西。
P.S有我的建议。尝试在默认的Python解释器中查找错误,并在放弃和提问之前阅读代码
P.P.S我也没有注意到错误的变量赋值。它必须是J = (...)
,而不是J=(...)
。我也根据这个
答案 1 :(得分:0)
如果没有关于程序引发哪种错误的任何信息,我认为该问题与 math.sqrt 函数有关,该函数找不到复杂的根。
所以我建议您以这种方式使用 cmath :
import cmath, math
print "welcome !This program will solve your quadratic equation"
A = input("inter a =")
B = input("inter b =")
C = input("inter c =")
J=math.pow(B,2)-4*A*C
X1=-B+cmath.sqrt(J)/2*A
X2=-B-(cmath.sqrt(J))/(2*A)
print "your roots is :" , X1 , X2
此外,我建议您对输入执行一些检查,因为用户可以插入字符串或 null 值(如@Ted Klein Bergman建议的那样)。< / p>
如果这不能解决您的问题,请修改您的问题并添加有关错误的更多详细信息。