如何编写一个程序,能够接收用户通过键盘输入的一元二次方程系数a, b和c,然后求解并显示该方程的根?
时间: 2024-12-20 07:24:48 浏览: 5
要编写一个程序来解决一元二次方程,你可以按照以下步骤操作,这里以Python为例:
首先,你需要导入`cmath`库,它包含了解复数运算,因为一元二次方程可能存在负判别式的情况。
```python
import cmath
```
接下来,定义一个函数,接受三个输入参数a、b和c,计算判别式(Δ = b**2 - 4*a*c),并根据判别式的值决定求实数根还是复数根。
```python
def solve_quadratic_equation(a, b, c):
# 计算判别式
delta = (b ** 2) - (4 * a * c)
# 实数根
if delta >= 0:
real_roots = (-b + cmath.sqrt(delta)) / (2 * a), (-b - cmath.sqrt(delta)) / (2 * a)
return "实数根为:", real_roots
# 复数根
else:
complex_roots = ((-b) / (2 * a), cmath.sqrt(-delta) / (2 * a))
return "复数根为:", complex_roots
```
最后,你可以创建一个循环来不断接收用户的输入,并调用这个函数展示结果。
```python
while True:
try:
a = float(input("请输入一元二次方程的a系数: "))
b = float(input("请输入b系数: "))
c = float(input("请输入c系数: "))
result = solve_quadratic_equation(a, b, c)
print(result)
except ValueError:
print("输入无效,请输入数字。")
```
阅读全文