为二次方程式 ax^2+bx+c=0设计一个名为Equation 的类,这个类包括: * 代表3个系数的成员变量a、b,c; * 一个参数为a、b、c的构造方法; * 一个名为getDiscriminant()的方法返回判别式的值; * 一个名为getRoot1()和 getRoot2()的方法返回等式的两个根,如果判别式为负,这些方法返回 0。python
时间: 2024-02-01 22:14:45 浏览: 89
以下是一个实现上述要求的Equation类示例代码:
```python
class Equation:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def getDiscriminant(self):
return self.b**2 - 4*self.a*self.c
def getRoot1(self):
discriminant = self.getDiscriminant()
if discriminant < 0:
return 0
else:
return (-self.b + discriminant**0.5) / (2*self.a)
def getRoot2(self):
discriminant = self.getDiscriminant()
if discriminant < 0:
return 0
else:
return (-self.b - discriminant**0.5) / (2*self.a)
```
这个Equation类包括3个成员变量a、b、c,以及一个构造方法,一个返回判别式值的方法getDiscriminant(),以及两个返回方程根的方法getRoot1()和getRoot2()。如果判别式为负,则这两个方法返回0。
阅读全文