建立一个求一元二次方程解的类(a*x^2+b*x+c=0),输入系数a,b,c 的值后打印出 这个方程的解。
时间: 2023-06-14 07:07:18 浏览: 90
实现一个求解一元二次方程的类,该类包含三个成员变量和一个求解一元二次方程解的函数,该函数需要抛出异常(1.无解的异常 2二次项系数为0的异常))
好的,以下是一个Python实现的示例代码:
```python
class QuadraticEquationSolver:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def solve(self):
delta = self.b ** 2 - 4 * self.a * self.c
if delta < 0:
print("该方程无实数解")
elif delta == 0:
x = -self.b / (2 * self.a)
print("该方程有唯一解:x = {:.2f}".format(x))
else:
x1 = (-self.b + delta ** 0.5) / (2 * self.a)
x2 = (-self.b - delta ** 0.5) / (2 * self.a)
print("该方程有两个实数解:x1 = {:.2f}, x2 = {:.2f}".format(x1, x2))
```
可以先创建一个 `QuadraticEquationSolver` 类,其中 `a`、`b` 和 `c` 分别表示一元二次方程的系数。在 `solve` 方法中,我们首先计算出方程的判别式 `delta`,然后根据 `delta` 的值来判断方程的解的情况并进行相应的输出。如果 `delta` 小于 0,说明方程无实数解;如果 `delta` 等于 0,说明方程有唯一解;如果 `delta` 大于 0,说明方程有两个实数解。
下面是一个使用示例:
```python
solver = QuadraticEquationSolver(1, -5, 6)
solver.solve()
```
输出为:
```
该方程有两个实数解:x1 = 3.00, x2 = 2.00
```
阅读全文