2.编写一个程序,求输入数的平方根。设置异常处理,对输入负数的情况给出提示。 提示:#include<math> #include <iostream> using namespace std; double Sq(double x) í if (x<0) throw x; return sqrt(x); )
时间: 2023-06-19 08:08:20 浏览: 124
以下是实现该功能的程序:
```c++
#include <iostream>
#include <math.h>
using namespace std;
double Sq(double x) {
if (x < 0) {
throw "输入负数,无法进行平方根计算!";
}
return sqrt(x);
}
int main() {
double n;
cout << "请输入一个数:" << endl;
cin >> n;
try {
double result = Sq(n);
cout << "该数的平方根为:" << result << endl;
}
catch (const char* msg) {
cerr << "错误信息: " << msg << endl;
}
return 0;
}
```
程序首先定义了一个求平方根的函数 Sq(double x),如果输入的数小于 0,则会抛出一个异常。然后在主函数中,通过 try-catch 块来捕获异常,如果捕获到异常,则输出错误信息。否则,输出该数的平方根。
运行程序并输入一个正数,可以得到以下输出:
```
请输入一个数:
9
该数的平方根为:3
```
如果输入一个负数,则会得到以下输出:
```
请输入一个数:
-5
错误信息: 输入负数,无法进行平方根计算!
```
相关问题
编写一个程序,求输入数的平方根。设置异常处理,对输入负数的情况给出提示。 提示:#include #include using namespace std; double Sq(double x) { if (x < 0) throw x; return sqrt(x); } ……、
好的,以下是一个简单的程序实现:
```c++
#include <iostream>
#include <cmath>
using namespace std;
double Sq(double x) {
if (x < 0) throw x; // 如果输入为负数,抛出异常
return sqrt(x);
}
int main() {
double num;
cout << "请输入一个数:";
cin >> num;
try {
double result = Sq(num);
cout << "该数的平方根为:" << result << endl;
}
catch (double x) {
cout << "输入的数为负数,请输入非负数!" << endl;
}
return 0;
}
```
程序中利用了 `try-catch` 语句来捕获异常。如果输入的数为负数,则会抛出异常并被 `catch` 捕获,然后输出提示信息。如果输入的数为非负数,则调用 `Sq()` 函数计算平方根并输出结果。
注意,在程序的开头需要包含头文件 `#include <cmath>` 来使用 `sqrt()` 函数。
编写一个程序,求输入数的平方根。设置异常处理,对输入负数的情况给出提示。 提示:#include<math> #include <iostream> using namespace std; double Sq(double x) { if (x < 0) throw x; return sqrt(x); }
好的,您可以参考以下代码:
```
#include <iostream>
#include <math.h>
using namespace std;
double Sq(double x) {
if (x < 0)
throw x;
return sqrt(x);
}
int main() {
double num;
cout << "请输入一个数:";
cin >> num;
try {
double result = Sq(num);
cout << "该数的平方根为:" << result << endl;
}
catch (double x) {
cout << "输入的数为负数,无法计算平方根!" << endl;
}
return 0;
}
```
其中,程序通过调用Sq函数来计算输入数的平方根,如果输入数为负数,则抛出异常并在try-catch语句中进行捕获并给出提示。
阅读全文