不用询问测试案例的数量,保证能进行多次计算
时间: 2024-04-15 18:31:13 浏览: 80
如果你想保留程序能进行多次计算而无需询问测试案例的数量,可以使用一个无限循环来实现。下面是修改后的代码:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
while (true) {
float a, b, c, x1, x2;
cout << "Enter coefficients a, b, and c (or enter q to quit): ";
if (!(cin >> a >> b >> c)) {
// 输入不是浮点数,退出循环
break;
}
float discriminant = b * b - 4 * a * c;
if (discriminant >= 0) {
x1 = (-b + sqrt(discriminant)) / (2 * a);
x2 = (-b - sqrt(discriminant)) / (2 * a);
cout << "Roots:" << endl;
cout << "x1=" << x1 << endl;
cout << "x2=" << x2 << endl;
} else {
cout << "No real roots exist." << endl;
}
cout << endl;
}
return 0;
}
```
在这个修改后的代码中,我们使用了一个无限循环 `while (true)`,并在每次循环开始时询问用户输入系数 `a`、`b` 和 `c`。如果用户输入的不是浮点数(例如输入了 `q`),则会跳出循环。否则,我们计算判别式,并根据判别式的值输出相应的结果。然后,在每次迭代后打印一个空行。
这样,你就可以连续进行多次计算,直到输入了非浮点数为止。希望这可以帮助到你!如果还有其他问题,请随时提问。
阅读全文