python求解一元二次方程代码
时间: 2023-07-02 08:16:07 浏览: 109
以下是一个求解一元二次方程的 Python 代码:
```python
import math
# 获取用户输入的 a、b、c 值
a = float(input("请输入 a:"))
b = float(input("请输入 b:"))
c = float(input("请输入 c:"))
# 计算判别式的值
delta = b**2 - 4*a*c
if delta < 0:
# 当判别式小于 0 时,方程无实数解
print("该方程无实数解。")
elif delta == 0:
# 当判别式等于 0 时,方程有一个实数解
x = -b / (2*a)
print("该方程有一个实数解 x = ", x)
else:
# 当判别式大于 0 时,方程有两个实数解
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
print("该方程有两个实数解 x1 = ", x1, ",x2 = ", x2)
```
该代码首先获取用户输入的一元二次方程的三个系数 a、b、c 的值,然后计算方程的判别式 delta 的值。根据判别式的值,分别判断方程的解的情况,并打印出相应的结果。需要注意的是,在计算平方根时需要使用 math 模块中的 sqrt() 函数。
相关问题
python求解一元二次方程
一元二次方程的一般形式为 $ax^2+bx+c=0$,其中 $a,b,c$ 是实数且 $a\neq 0$。求解一元二次方程有公式:$$x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}$$
可以使用 Python 代码实现:
```python
import math
def quadratic_equation(a, b, c):
delta = b**2 - 4*a*c
if delta < 0:
return "无实数解"
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
# 示例
print(quadratic_equation(1, -3, 2))
# 输出: (2.0, 1.0)
```
其中,`quadratic_equation` 函数接受三个参数 `a`、`b`、`c`,分别代表一元二次方程中的系数。如果方程无实数解,则返回字符串 `"无实数解"`。如果方程有两个实数解,则以元组的形式返回两个解。如果方程有一个实数解,则直接返回该解。
Python求解一元二次方程
可以使用 Python 中的数学库 math 来求解一元二次方程。一元二次方程的一般形式为:ax^2 + bx + c = 0,其中 a、b、c 为实数,且 a ≠ 0。
以下是一个求解一元二次方程的 Python 代码:
```python
import math
def solve_quadratic_equation(a, b, 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)
# 举例:求解 x^2 + 5x + 6 = 0
a = 1
b = 5
c = 6
solve_quadratic_equation(a, b, c)
```
运行结果为:
```
该方程有两个实根:x1 = -2.0 ,x2 = -3.0
```
注意,如果方程无实根,则输出提示信息。
阅读全文