Python求取一元一次方程(ax²+bx+c=0)的实解。(考虑a是否大于0以及该方程是否存在实根即b²-4ac是否大于0)输入a、b、c
时间: 2024-09-06 14:02:56 浏览: 26
在Python中,求解一元二次方程 \(ax^2 + bx + c = 0\) 的实根,可以通过判别式 \(b^2 - 4ac\) 来确定根的情况。具体步骤如下:
1. 计算判别式 \(D = b^2 - 4ac\)。
2. 判断判别式的值:
- 如果 \(D > 0\),方程有两个不同的实根。
- 如果 \(D = 0\),方程有两个相同的实根(重根)。
- 如果 \(D < 0\),方程没有实根,而是有两个复数根。
对于有实根的情况,可以使用求根公式来计算:
\[x = \frac{-b \pm \sqrt{D}}{2a}\]
以下是一个简单的Python函数,用于计算一元二次方程的实根:
```python
import math
def solve_quadratic(a, b, c):
# 计算判别式
D = b**2 - 4*a*c
# 判断根的情况
if D > 0:
# 两个不同的实根
root1 = (-b + math.sqrt(D)) / (2*a)
root2 = (-b - math.sqrt(D)) / (2*a)
return (root1, root2)
elif D == 0:
# 两个相同的实根
root = -b / (2*a)
return (root,)
else:
# 没有实根
return ()
# 示例使用
a, b, c = 1, -3, 2 # 以方程 x^2 - 3x + 2 = 0 为例
roots = solve_quadratic(a, b, c)
print("方程的实根为:", roots)
```
这段代码会根据输入的a、b、c值,计算并返回一元二次方程的实根。如果方程没有实根,函数返回一个空元组。
阅读全文