Python解一元二次方程
时间: 2023-05-18 10:02:32 浏览: 100
可以使用以下代码解一元二次方程:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
delta = b**2 - 4*a*c
if delta < 0:
print("方程无实数解")
elif delta == 0:
x = -b / (2*a)
print("方程有唯一解:x = ", x)
else:
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
print("方程有两个实数解:x1 = ", x1, ",x2 = ", x2)
```
注意:这个代码只能解一元二次方程,如果输入的系数不符合要求,程序会出错。
相关问题
python解一元二次方程
以下是一个解一元二次方程的Python代码示例:
```python
import math
def solve_quadratic_eq(a, b, c):
""" 解一元二次方程 ax^2 + bx + c = 0 """
delta = b**2 - 4*a*c # 计算判别式
if delta < 0:
return None # 无实数解
elif delta == 0:
x = -b / (2*a) # 有唯一实数解
return x
else:
x1 = (-b + math.sqrt(delta)) / (2*a) # 有两个实数解
x2 = (-b - math.sqrt(delta)) / (2*a)
return x1, x2
# 调用函数,求解方程 x^2 - 5x + 6 = 0 的解
a, b, c = 1, -5, 6
x = solve_quadratic_eq(a, b, c)
print("x =", x)
```
输出结果为:
```
x = (3.0, 2.0)
```
说明方程的两个实数解分别为 3 和 2。如果方程无实数解,则输出为 `None`。
python解一元二次方程代码
当然,我可以为您提供一个Python解一元二次方程的代码示例:
```python
import math
def solve_quadratic_equation(a, b, c):
discriminant = b**2 - 4*a*c
if discriminant > 0:
root1 = (-b + math.sqrt(discriminant)) / (2*a)
root2 = (-b - math.sqrt(discriminant)) / (2*a)
return root1, root2
elif discriminant == 0:
root = -b / (2*a)
return root
else:
return "No real roots"
# 示例用法
a = 1
b = -3
c = 2
roots = solve_quadratic_equation(a, b, c)
print(roots)
```
这段代码定义了一个名为`solve_quadratic_equation`的函数,它接受三个参数`a`、`b`和`c`,分别代表一元二次方程的系数。函数内部使用判别式来判断方程的根的情况,并根据不同的情况返回相应的结果。
请注意,这只是一个简单的示例代码,可能无法处理所有特殊情况。在实际使用中,您可能需要添加更多的错误处理和边界情况的判断。
阅读全文