c++给出三角形的三边 a, b, c,求三角形的面积。只有 a+b>c,b+c>a,c+a>b 时才 能构成三角形。设置异常处理,对不符合三角形条件的输出警告信息,不予计算。
时间: 2024-03-16 07:48:06 浏览: 62
好的,下面是 C++ 的代码实现:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double a, b, c;
cout << "请输入三角形的三条边:" << endl;
cin >> a >> b >> c;
if (a + b > c && b + c > a && c + a > b) {
double p = (a + b + c) / 2;
double S = sqrt(p * (p - a) * (p - b) * (p - c));
cout << "三角形的面积为:" << S << endl;
} else {
cout << "这不是一个三角形!" << endl;
}
return 0;
}
```
这段代码中,我们使用了 `if` 语句来判断输入的三条边是否能构成三角形,如果不能,则输出警告信息,如果能,则使用海伦公式计算三角形的面积。最后,我们使用 `cout` 语句输出结果。
需要注意的是,我们在计算平方根时,需要使用 `cmath` 库中的 `sqrt` 函数。
相关问题
已知三角形的三边长a b c,求面积的公式为p=(a+b+c/2S=sqrt(p(p-a)(p-b)(b-c)给出计算三角形面积的C++代码)
以下是计算三角形面积的C++代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double a, b, c, p, s;
cout << "请输入三角形的三边长a b c:" << endl;
cin >> a >> b >> c;
p = (a + b + c) / 2;
s = sqrt(p * (p - a) * (p - b) * (p - c));
cout << "三角形的面积为:" << s << endl;
return 0;
}
```
输入三角形的三边长a b c后,计算出p和s,最后输出三角形的面积。
输入三角形的三边a,b,c,计算三角形的面积的公式是 area=√s(s-a)(s-b)(s-c),s=a+2+c 形成三角形的条件是:a+b>c,b+c>a,c+a>b 编写程序,输入ab,c,检查a,b,c是否满足以上条件,如不满足,由cerr输出有关出错信息。
好的,以下是对应的C++代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double a, b, c;
cout << "请输入三角形的三边a,b,c:";
cin >> a >> b >> c;
if (a + b > c && b + c > a && c + a > b) {
double s = (a + b + c) / 2;
double area = sqrt(s * (s - a) * (s - b) * (s - c));
cout << "该三角形的面积为:" << area << endl;
} else {
cerr << "输入的三边无法构成三角形!" << endl;
}
return 0;
}
```
当输入的三边无法构成三角形时,程序会输出 "输入的三边无法构成三角形!" 的错误信息,通过 cerr 输出。
阅读全文