python求一元二次方程的实根
时间: 2024-11-10 09:14:54 浏览: 35
要使用Python计算一元二次方程的实根,可以利用数学库`math`中的`sqrt()`函数以及二次方程的求根公式。以下是实现这个功能的示例代码:
```python
import math
def quadratic_solver(a, b, c):
discriminant = b**2 - 4*a*c
if discriminant >= 0:
root1 = (- math.sqrt(discriminant)) / (2*a)
return (root1, root2) if discriminant != 0 else root1
else:
real_part = -b / (2*a)
imaginary_part = math.sqrt(-discriminant) / (2*a)
return (real_part, -imaginary_part), (real_part, imaginary_part)
# 示例测试
a = 1
b = -3
c = 2
solution = quadratic_solver(a, b, c)
if isinstance(solution, tuple):
print(f"实根: {solution}")
else:
print("复数根(共轭): ({solution.real}, {-solution.imag})")
```
在这个代码中,我们首先计算判别式(`discriminant`),如果它是非负的,那么方程有两个实根,使用公式计算并返回。如果是负的,那么方程有两个共轭虚根,我们只返回实部和虚部的一对。
阅读全文