Quadratic equation: TypeError: bad operand type for unary -: 'str'

Quadratic equation: TypeError: bad operand type for unary -: 'str'

我是 Python 的新手,一直在尝试编写二次方程的代码,但我将 运行 留在了这个错误中: 类型错误:一元的错误操作数类型-:'str'

def quad_gleichung():
a = input('a:')
b = input('b:')
c = input('c:')

x1 = int(-b + (b**2 - (4*a*c))**(0.5)) / (2*a)
x2 = int(-b - (b**2 - (4*a*c))**(0.5)) / (2*a)


print('Lösung 1:', x1)
print('Lösung 2:', x2)

quad_gleichung()

谁能帮帮我?

谢谢!

input的return类型是字符串。它需要转换为某种数字类型,floatint,具体取决于用例。

因此,将 a, b, c 的分配更改为:

a = int(input("a: ")) # or float(input("a: "))
b = int(input("b: ")) # or float(input("b: "))
c = int(input("c: ")) # or float(input("c: "))