用python写一个程序计算一元二次方程的根
时间: 2023-03-31 17:02:20 浏览: 162
你好,以下是回答:
可以使用以下代码计算一元二次方程的根:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
delta = b**2 - 4*a*c
if delta < :
print("无实数根")
elif delta == :
x = -b / (2*a)
print("方程的根为:", x)
else:
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
print("方程的根为:", x1, "和", x2)
```
希望能够帮到你!
相关问题
用python定义一个函数计算一元二次方程的根
好的,这是一个用Python定义函数计算一元二次方程根的示例代码:
```python
import cmath
def quadratic_equation(a,b,c):
delta = b**2 - 4*a*c
sqrt_delta = cmath.sqrt(delta)
x1 = (-b + sqrt_delta) / (2*a)
x2 = (-b - sqrt_delta) / (2*a)
return x1, x2
```
其中,a、b、c 分别为一元二次方程的系数。`delta` 表示判别式,`sqrt_delta` 表示判别式的平方根,`x1`、`x2` 分别为方程的两个根。注意,在 a 和 b 都为 0 的情况下,该方程没有意义,应该进行异常处理。
希望这个例子能够帮助你!如果你有任何问题,可以继续问我。
编写一个Python程序,计算一元二次方程的根(包括复数根)
```
import math
def quadratic(a, b, c):
delta = b * b - 4 * a * c
if delta < 0:
realPart = -b / (2 * a)
imagPart = math.sqrt(-delta) / (2 * a)
print("该方程有两个复数根:")
print("x1 = ", realPart, "+", imagPart, "i")
print("x2 = ", realPart, "-", imagPart, "i")
elif delta == 0:
x = -b / (2 * a)
print("该方程有一个实根:")
print("x = ", x)
else:
x1 = (-b + math.sqrt(delta)) / (2 * a)
x2 = (-b - math.sqrt(delta)) / (2 * a)
print("该方程有两个实根:")
print("x1 = ", x1)
print("x2 = ", x2)
# 测试
quadratic(1, -2, 1) # delta = 0,有一个实根,x = 1.0
quadratic(1, 2, 1) # delta = 0,有一个实根,x = -1.0
quadratic(1, 1, 1) # delta < 0,有两个复数根,x1 = -0.5 + 0.8660254037844386i,x2 = -0.5 - 0.8660254037844386i
quadratic(1, -5, 6) # delta > 0,有两个实根,x1 = 3.0,x2 = 2.0
```
阅读全文