输入一元二次方程的a、b、c ,求该方程的根。输入python代码
时间: 2024-10-18 13:09:42 浏览: 46
你可以使用Python的`cmath`模块(当涉及到复数解时)和`math`模块(仅用于实数解)来编写一个函数,计算一元二次方程的根。下面是一个示例代码:
```python
import cmath # 如果有复数解
def solve_quadratic(a, b, c):
delta = (b**2) - (4*a*c)
# 实数解
if delta >= 0:
root1 = (-b + cmath.sqrt(delta)) / (2 * a)
root2 = (-b - cmath.sqrt(delta)) / (2 * a)
return root1, root2
# 只有一个实数解或一对共轭复数解
elif delta == 0:
root = -b / (2 * a)
return (root,)
# 两对共轭复数解
else:
real_part = -b / (2 * a)
imaginary_part = cmath.sqrt(-delta) / (2 * a)
complex_root1 = complex(real_part, imaginary_part)
complex_root2 = complex(real_part, -imaginary_part)
return complex_root1, complex_root2
# 示例使用
a = float(input("请输入a的值: "))
b = float(input("请输入b的值: "))
c = float(input("请输入c的值: "))
solution = solve_quadratic(a, b, c)
print(f"一元二次方程 {a}x^2 + {b}x + {c} 的根是 {solution}")
```
当你运行此程序并输入方程的系数时,它将返回相应的根。请注意,如果输入的系数导致根为复数,`cmath.sqrt` 将返回虚部部分。
阅读全文