2、需要求3个三角形的面积,请编写一个面向对象的程序。数据成员包括三角形的三边长a、b、 c。要求用成员函数实现以下功能: (1) 定义构造函数完成三角形的初始化; (2) 求三角形的周长; (3) 求三角形的面积; (4) 输出三角形信息。
时间: 2023-04-10 18:04:50 浏览: 49
非常感谢您的提问!以下是面向对象的程序,实现了求三角形面积、周长和输出信息的功能:
```lua
-- 定义 Triangle 类
Triangle = {}
-- 构造函数
function Triangle:new(a, b, c)
local obj = {a = a, b = b, c = c}
setmetatable(obj, self)
self.__index = self
return obj
end
-- 求周长
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("三角形三边长分别为:" .. self.a .. "、" .. self.b .. "、" .. self.c)
print("三角形周长为:" .. self:perimeter())
print("三角形面积为:" .. self:area())
end
-- 创建三角形对象并调用方法
tri1 = Triangle:new(3, 4, 5)
tri1:info()
tri2 = Triangle:new(5, 6, 7)
tri2:info()
```
希望这个程序能够帮助到您!
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)