C++利用构造函数对三角形三个边初始化,输出周长和面积
时间: 2024-09-20 16:09:39 浏览: 50
c++编写的计算三角形的面积
在C++中,我们可以创建一个`Triangle`类来表示一个三角形,并使用构造函数接收三个边长作为输入。然后,我们可以计算并存储周长和面积。这里是一个简单的例子:
```cpp
#include <iostream>
#include <cmath>
class Triangle {
private:
double a, b, c; // 三角形的三边
public:
// 构造函数,用于初始化三个边
Triangle(double side1, double side2, double side3) : a(side1), b(side2), c(side3) {
if (a + b > c && a + c > b && b + c > a) { // 验证是否能构成三角形
perimeter(); // 计算并打印周长
area(); // 计算并打印面积
} else {
std::cout << "Invalid sides for a triangle." << std::endl;
}
}
// 计算周长
void perimeter() {
double perimeter = a + b + c;
std::cout << "Perimeter: " << perimeter << std::endl;
}
// Heron公式计算面积(假设两边之和大于第三边)
void area() {
double s = (a + b + c) / 2; // 半周长
double area = sqrt(s * (s - a) * (s - b) * (s - c));
std::cout << "Area: " << area << std::endl;
}
};
int main() {
Triangle triangle(3.0, 4.0, 5.0); // 创建一个直角三角形示例
return 0;
}
```
在这个例子中,用户通过`Triangle(3.0, 4.0, 5.0)`这样的形式创建了一个三角形对象,构造函数会自动计算并显示其周长和面积。如果提供的边长无法构成三角形,程序会给出错误提示。
阅读全文