求解一元二次方程,包括求解方程根的成员函数和输出结果的成员函数,要求加入构造函数,使用默认参数的方法
时间: 2024-05-11 15:16:54 浏览: 39
好的,以下是符合您要求的一元二次方程求解的类:
```
class QuadraticEquation {
public:
QuadraticEquation(double a = 0.0, double b = 0.0, double c = 0.0)
: a_(a), b_(b), c_(c) {}
void solve_equation() {
double delta = b_ * b_ - 4 * a_ * c_;
if (delta < 0) {
std::cout << "This equation has no real roots." << std::endl;
return;
}
double root1 = (-b_ + std::sqrt(delta)) / (2 * a_);
double root2 = (-b_ - std::sqrt(delta)) / (2 * a_);
std::cout << "The roots of the equation are: "
<< root1 << " and " << root2 << std::endl;
}
private:
double a_, b_, c_;
};
```
上述类包含了三个参数 a,b,c,分别代表一元二次方程中的系数,可以使用默认参数来构造函数。函数 solve_equation 可以求解方程根并输出结果。需要注意的是,这里假设用户输入的系数确保有解,否则会输出 "This equation has no real roots."。
请问还有其他问题需要解答吗?
阅读全文