Python输入一元二次方程的3个系数a、b、c,求方程ax²+bx+c=0的根
时间: 2023-05-31 11:02:58 浏览: 122
可以使用求根公式来解决这个问题:
x1 = (-b + sqrt(b^2 - 4ac)) / 2a
x2 = (-b - sqrt(b^2 - 4ac)) / 2a
其中,sqrt表示开平方,即求平方根。
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)
注意,由于开平方可能得到一个复数,因此需要使用math库中的sqrt函数来求平方根。另外,根据判别式的值,方程可能无实数根、有一个实数根或有两个实数根。
相关问题
python编辑程序,输入一元二次方程的三个系数a、b和c,求ax²+bx+c=0方程的解。
在Python中,你可以使用math库中的sqrt函数来处理平方根,并结合公式(-b ± sqrt(b² - 4ac)) / 2a 来计算一元二次方程的解。下面是一个简单的实现示例:
```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 f"两个实数根:{root1} 和 {root2}"
elif discriminant == 0:
root = -b / (2 * a)
return f"唯一实数根:{root}"
else:
return "无实数根,有两个共轭复数根"
# 用户输入系数
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
# 调用函数计算并打印结果
solution = solve_quadratic_equation(a, b, c)
print(solution)
请生成一段输入一元二次方程的三个系数a,b,c,求方程ax²+bx+c=0的根的Python代码
以下是输入一元二次方程的三个系数a,b,c,求方程ax² bx c=0的根的Python代码:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
delta = b * b - 4 * a * c
if delta < 0:
print("该方程无实数根")
elif delta == 0:
x = -b / (2 * a)
print("该方程有一个实数根:", x)
else:
x1 = (-b + math.sqrt(delta)) / (2 * a)
x2 = (-b - math.sqrt(delta)) / (2 * a)
print("该方程有两个实数根:", x1, x2)
```
首先,我们通过input函数获取用户输入的一元二次方程的三个系数a、b、c。然后,我们计算delta的值,delta = b² - 4ac。根据delta的值,我们可以判断方程的根的情况。
如果delta小于0,则方程无实数根;如果delta等于0,则方程有一个实数根,x = -b / 2a;如果delta大于0,则方程有两个实数根,x1 = (-b + √delta) / 2a,x2 = (-b - √delta) / 2a。
最后,我们通过print函数输出方程的根的情况。
阅读全文