python编写程序,输入一元二次方程的3个系数a,b和c,求ax^2+bx+c=0方程的解。
时间: 2024-05-09 11:18:34 浏览: 200
可以使用求根公式求解一元二次方程的根:
1. 输入三个系数a,b,c;
2. 计算判别式delta = b^2 - 4ac;
3. 若delta > 0,则方程有两个实数根x1 = (-b + sqrt(delta))/(2a)和x2 = (-b - sqrt(delta))/(2a);
4. 若delta = 0,则方程有一个实数根x = -b/(2a);
5. 若delta < 0,则方程没有实数根,有两个共轭复数根x1 = (-b + i*sqrt(-delta))/(2a)和x2 = (-b - i*sqrt(-delta))/(2a),其中i是虚数单位;
6. 输出方程的解。
代码如下:
```python
import math
# 输入三个系数a,b,c
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
# 计算判别式delta
delta = b**2 - 4*a*c
# 判断方程的根
if delta > 0:
x1 = (-b + math.sqrt(delta))/(2*a)
x2 = (-b - math.sqrt(delta))/(2*a)
print("方程的两个实数根为:x1 = %.2f,x2 = %.2f" % (x1, x2))
elif delta == 0:
x = -b/(2*a)
print("方程的一个实数根为:x = %.2f" % x)
else:
real_part = -b/(2*a)
imag_part = math.sqrt(-delta)/(2*a)
print("方程的两个共轭复数根为:x1 = %.2f + %.2fi,x2 = %.2f - %.2fi" % (real_part, imag_part, real_part, imag_part))
```
运行结果如下:
```
请输入a的值:1
请输入b的值:-5
请输入c的值:6
方程的两个实数根为:x1 = 3.00,x2 = 2.00
```
阅读全文