求解一元二次方程 ax2+bx+c=0的根,系数a、b、c的值从输入获取
时间: 2024-10-15 19:29:10 浏览: 42
求解一元二次方程的一般形式 \(ax^2 + bx + c = 0\) 的根,通常采用公式法,也称为韦达定理(Vieta's formulas)。当给定三个系数 a、b 和 c 后,我们可以计算出两个根 x1 和 x2,它们的关系是:
\[x_1 + x_2 = -\frac{b}{a}\]
\[x_1 \times x_2 = \frac{c}{a}\]
如果你需要编程实现这个过程,你需要首先检查 a 是否为零,因为如果 a=0,原方程将不再是一元二次方程。然后,可以使用这些公式计算根,或者借助于数学库中的 `sqrt()` 函数(对于实数根)以及复数运算(如果 b^2 - 4ac < 0 时有复数根)。
以下是一个简单的 Python 示例:
```python
import cmath
def solve_quadratic_equation(a, b, c):
discriminant = b**2 - 4*a*c
if a == 0:
raise ValueError("方程不是一元二次方程")
# 实数根
if discriminant >= 0:
x1 = (- cmath.sqrt(discriminant)) / (2 * a)
else:
# 复数根
real_part = -b / (2 * a)
imaginary_part = cmath.sqrt(-discriminant) / (2 * a)
x1 = complex(real_part, imaginary_part)
x2 = complex(real_part, -imaginary_part)
return x1, x2
# 示例
coefficients = float(input("请输入系数 a, b, c(以逗号分隔): "))
a, b, c = map(float, coefficients.split(','))
root1, root2 = solve_quadratic_equation(a, b, c)
print(f"方程的根是 {root1} 和 {root2}")
阅读全文