如何用对象中的成员函数求出三角形的面积
时间: 2024-05-01 22:16:59 浏览: 40
可以定义一个三角形类,其中包含三个点的坐标,然后在类中定义一个成员函数来计算三角形的面积。具体实现如下:
```python
class Triangle:
def __init__(self, x1, y1, x2, y2, x3, y3):
self.x1 = x1
self.y1 = y1
self.x2 = x2
self.y2 = y2
self.x3 = x3
self.y3 = y3
def area(self):
return abs((self.x1*(self.y2-self.y3) + self.x2*(self.y3-self.y1) + self.x3*(self.y1-self.y2))/2)
```
在这个类中,`__init__`函数用来初始化三个点的坐标,`area`函数用来计算三角形的面积。这里使用了海龙公式来计算三角形的面积。
相关问题
需要求3个三角形的面积,请编写一个面向对象的程序。数据成员包括三角形的三边长a、b、 c。要求用成员函数实现以下功能:定义构造函数完成三角形的初始化;求三角形的周长;求三角形的面积; 输出三角形信息。
非常感谢您的问题,以下是面向对象的程序:
```lua
-- 定义 Triangle 类
Triangle = {}
-- 定义 Triangle 的构造函数
function Triangle:new(a, b, c)
local obj = {}
obj.a = a
obj.b = b
obj.c = c
setmetatable(obj, self)
self.__index = self
return obj
end
-- 定义 Triangle 的成员函数
function Triangle:perimeter()
return self.a + self.b + self.c
end
function Triangle:area()
local p = self:perimeter() / 2
return math.sqrt(p * (p - self.a) * (p - self.b) * (p - self.c))
end
function Triangle:info()
print("Triangle sides: " .. self.a .. ", " .. self.b .. ", " .. self.c)
print("Triangle perimeter: " .. self:perimeter())
print("Triangle area: " .. self:area())
end
-- 创建 Triangle 对象并调用成员函数
t1 = Triangle:new(3, 4, 5)
t1:info()
t2 = Triangle:new(5, 12, 13)
t2:info()
```
希望这个程序能够帮助您解决问题。
用C++编写一个程序,编写一个三角形类,数据成员为三角形的三条边,成员函数包括构造函数、计算面积函数。由三角形类派生出三棱柱,新增成员数据-高,新增成员函数--计算体积函数和构造函数。在主函数中定义一个三棱柱对象,计算并输出其体积
好的,根据您的要求,我来为您编写一个三角形类和三棱柱类的程序。代码如下:
```c++
#include <iostream>
#include <cmath>
using namespace std;
class Triangle {
public:
Triangle(double a, double b, double c) : a(a), b(b), c(c) {}
double area() {
double p = (a + b + c) / 2;
return sqrt(p * (p - a) * (p - b) * (p - c));
}
protected:
double a, b, c;
};
class TriangularPrism : public Triangle {
public:
TriangularPrism(double a, double b, double c, double h) : Triangle(a, b, c), h(h) {}
double volume() {
return area() * h;
}
private:
double h;
};
int main() {
TriangularPrism tp(3, 4, 5, 6);
cout << "Triangular Prism Volume: " << tp.volume() << endl;
return 0;
}
```
程序中定义了一个三角形类Triangle,数据成员为三角形的三条边,成员函数包括构造函数和计算面积函数。由Triangle类派生出了三棱柱类TriangularPrism,新增成员数据-高,新增成员函数--计算体积函数和构造函数。在主函数中定义了一个三棱柱对象tp,并计算并输出其体积。
程序输出为:Triangular Prism Volume: 36
希望我的回答能够帮助您!
阅读全文