用C++来计算三角形面积,要求使用子函数
时间: 2024-11-27 14:24:01 浏览: 25
在C++中,计算三角形面积通常会使用海伦公式(Heron's formula),它不需要直接输入三角形的边长,而是通过半周长来求得面积。这里是一个简单的示例,展示了如何使用子函数(即函数定义)来实现这个功能:
```cpp
#include <iostream>
#include <cmath>
// 子函数,用于计算半周长
double semiPerimeter(double a, double b, double c) {
return (a + b + c) / 2;
}
// 子函数,用于计算三角形面积
double triangleArea(double a, double b, double c) {
double s = semiPerimeter(a, b, c);
return std::sqrt(s * (s - a) * (s - b) * (s - c));
}
int main() {
double side_a, side_b, side_c;
std::cout << "请输入三角形的三条边长:";
std::cin >> side_a >> side_b >> side_c;
// 检查输入是否能构成三角形
if (side_a + side_b > side_c && side_a + side_c > side_b && side_b + side_c > side_a) {
double area = triangleArea(side_a, side_b, side_c);
std::cout << "三角形的面积为:" << area << std::endl;
} else {
std::cout << "无法构成三角形,输入的边长无效。\n";
}
return 0;
}
```
在这个程序中,`semiPerimeter()`函数负责计算半周长,而`triangleArea()`函数则利用半周长来计算面积。在`main()`函数中,用户会被提示输入三角形的三条边长,然后根据输入验证并计算面积。
阅读全文