所以我对编写python是一个相当新手,所以我决定试着做一个二次方程解算器。输入所有用户输入的变量后,我得到以下错误:
Traceback (most recent call last):
File "C:/Users/insertnamehere/Desktop/quadratic formula solver.py", line 6, in <module>
root=math.sqrt((b**2)-4*a*c)
ValueError: math domain error
我的代码是:
^{pr2}$任何帮助都将不胜感激。在
编辑: 忘了加上我输入的实际值。在
A?: 6
B?: 1
C?: 2
这是9年级学生的一个基本数学问题:
二次方程并不总是有实值解,因为你不能取负数的平方根。你已经输入了一个二次方程的值,这个二次方程在实数范围内无法求解。在
编辑:您发布了您的值:
那么,什么是(1²-2*6*2)的平方根?你找不到这个问题的实数解,python也找不到,这就是为什么它会给你一个数学域错误的原因。在
这样看:6x²+x+2=0确实没有真正的解。提示:看graph
Python可以处理复数,但是
math
模块不处理负数的平方根,因此需要使用cmath。在演示:
输出
^{pr2}$尽管
i
通常被数学家用作负一平方根的符号,但Python使用j
;这种约定在电子工程师中很常见,因为他们使用i
来表示电流。在因此上述输出等于(-1±sqrt(-3))/2
相关问题 更多 >
编程相关推荐