用python编写程序,解一元二次方程 a*x2+bx+c=0。 用户输入系数a,b,c, 如果有实根计算实根 并显示,如果没有, 显示“没有实根”
时间: 2024-03-06 09:47:13 浏览: 63
好的,我可以帮你写这段程序。请看下面的代码:
```python
import math
a = float(input("请输入a的值:"))
b = float(input("请输入b的值:"))
c = float(input("请输入c的值:"))
if a == 0:
print("a不能为0")
else:
delta = b ** 2 - 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)
```
这段程序会首先要求用户输入三个系数a、b、c的值。然后程序会判断a是否为0,如果是,则无法解出一元二次方程,程序会退出。如果a不为0,程序会计算出判别式delta的值,然后根据delta的值来判断方程是否有实根。如果delta小于0,则没有实根;如果delta等于0,则方程只有一个实根;如果delta大于0,则方程有两个实根。最后程序会输出方程的解。
相关问题
用python编写程序,解一元二次方程 a*x2+bx+c=0。 用户输入系数a,b,c, 如果有实根计算实根 并显示,如果没有, 显示“没有实根”
好的,下面是用 Python 编写的解一元二次方程的程序:
```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(f"有一个实根:x={x}")
else:
x1 = (-b + math.sqrt(delta)) / (2 * a)
x2 = (-b - math.sqrt(delta)) / (2 * a)
print(f"有两个实根:x1={x1}, x2={x2}")
```
程序首先要求用户输入方程的系数 a、b、c,然后计算方程的判别式 delta。根据判别式的值,程序分别判断方程的根的个数,并计算出实根的值并输出。
注意,上述程序中使用了 math 模块中的 sqrt 函数,需要在程序开头引入该模块。
请用python定义一个函数quadratic(a,b,c),接受3个参数,返回一元二次方程ax**2+bx+c=0的两个解
好的,我可以回答这个问题。以下是定义一个函数quadratic(a,b,c)的Python代码:
```python
def quadratic(a, b, c):
delta = b**2 - 4*a*c
if delta < :
return "无实数解"
elif delta == :
x = -b / (2*a)
return x
else:
x1 = (-b + delta**.5) / (2*a)
x2 = (-b - delta**.5) / (2*a)
return x1, x2
```
这个函数接受三个参数a、b、c,返回一元二次方程ax**2+bx+c=的两个解。如果方程无实数解,则返回字符串"无实数解"。如果方程有一个实数解,则返回这个实数解。如果方程有两个实数解,则返回这两个实数解。
阅读全文