编写程序,输入一元二次方程的3个系数a、b、c,求方程ax^2+bx+c=0 的根
时间: 2023-12-15 11:19:22 浏览: 68
好的,以下是使用 Python 编写的程序,可以实现输入一元二次方程的三个系数 $a$、$b$、$c$,并求解该方程的根:
```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)
```
运行程序后,会提示输入三个系数 $a$、$b$、$c$,程序会自动计算出方程的判别式 $\Delta$,然后根据判别式的值分别输出方程的解。如果判别式 $\Delta < 0$,则说明该方程无实数解;如果 $\Delta = 0$,则说明该方程有唯一解;如果 $\Delta > 0$,则说明该方程有两个实数解。
相关问题
python编写程序,输入一元二次方程的3个系数a,b和c,求ax^2+bx+c=0方程的解。
可以使用求根公式求解一元二次方程的根:
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
```
输入一元二次方程的3个系数a ,b ,c ,求方程ax^2+bx+c=0的根。python
可以使用python的math库中的sqrt函数来求平方根,使用公式x1 = (-b + sqrt(b^2 - 4ac)) / 2a 和 x2 = (-b - sqrt(b^2 - 4ac)) / 2a 求解一元二次方程的根。
代码如下:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
delta = b**2 - 4*a*c
if delta > 0:
x1 = (-b + math.sqrt(delta)) / (2*a)
x2 = (-b - math.sqrt(delta)) / (2*a)
print("方程的两个实根分别为:%.2f 和 %.2f" % (x1, x2))
elif delta == 0:
x = -b / (2*a)
print("方程的唯一实根为:%.2f" % x)
else:
real_part = -b / (2*a)
imaginary_part = math.sqrt(-delta) / (2*a)
print("方程的两个虚根分别为:%.2f+%.2fi 和 %.2f-%.2fi" % (real_part, imaginary_part, real_part, imaginary_part))
```
例如,输入a=1,b=3,c=2,程序输出:
```
方程的两个实根分别为:-1.00 和 -2.00
```
再例如,输入a=1,b=2,c=2,程序输出:
```
方程的唯一实根为:-1.00
```
再例如,输入a=1,b=2,c=3,程序输出:
```
方程的两个虚根分别为:-1.00+1.41i 和 -1.00-1.41i
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)