编写一个Python程序,求一元二次方程ax²+bx+c=0的根,并采用相关数据测试
时间: 2024-09-18 08:07:49 浏览: 106
用Java编写程序,求一元二次方程ax²+bx+c=0的根(系数在程序中给定),并输出。
在Python中,可以编写一个函数来计算一元二次方程的根。通常,这种方程有两个解,除非判别式(b² - 4ac)小于零,表示方程无实数解。这里是一个简单的示例:
```python
import cmath
def quadratic_solver(a, b, c):
# 计算判别式
discriminant = (b ** 2) - (4 * a * c)
# 实数解的情况
if discriminant >= 0:
root1 = (-b + cmath.sqrt(discriminant)) / (2 * a)
root2 = (-b - cmath.sqrt(discriminant)) / (2 * a)
return root1, root2
# 复数解的情况
else:
real_part = -b / (2 * a)
imaginary_part = cmath.sqrt(-discriminant) / (2 * a)
return complex(real_part, imaginary_part), complex(real_part, -imaginary_part)
# 测试数据
a = 1
b = -3
c = 2
roots = quadratic_solver(a, b, c)
print(f"当a={a}, b={b}, c={c}时,方程的根为: {roots}")
#
阅读全文