3.定义一个三角形类Triangle,属性是三边的长度,求三角形的面积和周长。
时间: 2023-10-28 19:16:16 浏览: 407
可以使用以下代码定义一个三角形类Triangle,并实现计算面积和周长的方法:
```python
class Triangle:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def perimeter(self):
return self.a + self.b + self.c
def area(self):
# 根据海伦公式计算面积
s = (self.a + self.b + self.c) / 2
return (s * (s - self.a) * (s - self.b) * (s - self.c)) ** 0.5
```
在这个类中,我们使用构造函数 `__init__` 初始化三边的长度,并实现了两个方法 `perimeter` 和 `area`,用于计算三角形的周长和面积。
使用示例:
```python
t = Triangle(3, 4, 5)
print(t.perimeter()) # 输出: 12
print(t.area()) # 输出: 6.0
```
相关问题
python定义一个三角形类 Triangle,属性是三边的长度,求三角形的面积和周长
以下是Python定义一个三角形类Triangle,属性是三边的长度,求三角形的面积和周长的代码:
```python
class Triangle:
def __init__(self, a1, a2, a3, h):
# a1:底边 h:高
self.a1 = a1
self.a2 = a2
self.a3 = a3
self.h = h
def perimeter(self):
# 三角形求周长
per = self.a1 + self.a2 + self.a3
return per
def area(self):
# 三角形求面积
ar = (self.h * self.a1) / 2
return ar
```
在上述代码中,我们定义了一个Triangle类,它有四个属性:a1、a2、a3和h,分别表示三角形的三条边和高。我们还定义了两个方法:perimeter()和area(),分别用于计算三角形的周长和面积。
在perimeter()方法中,我们将三角形的三条边相加,得到三角形的周长。
在area()方法中,我们使用三角形的底边a1和高h计算三角形的面积。
如果要使用这个Triangle类,可以按照以下方式进行:
```python
if __name__ == '__main__':
while True:
a1 = int(input("a1:"))
a2 = int(input("a2:"))
a3 = int(input("a3:"))
h = int(input("h:"))
tri = Triangle(a1, a2, a3, h)
print("三角形周长为" + str(tri.perimeter()))
print("三角形面积为:" + str(tri.area()))
```
在上述代码中,我们首先判断当前模块是否为主模块,如果是,则执行以下代码:
1.使用input()函数获取三角形的三条边和高。
2.创建一个Triangle对象tri,并将三条边和高作为参数传递给它。
3.使用tri对象的perimeter()方法和area()方法分别计算三角形的周长和面积,并将结果打印出来。
定义一个三角形类 Triangle,属性是三边的长度,求三角形的面积和周长。
以下是定义三角形类Triangle并求解面积和周长的Python代码:
```python
class Triangle:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def getZC(self):
return self.a + self.b + self.c
def printArea(self):
p = (self.a + self.b + self.c) / 2
area = (p * (p - self.a) * (p - self.b) * (p - self.c)) ** 0.5
print("三角形面积为:%.2f" % area)
if __name__ == '__main__':
a1 = int(input("a1:"))
a2 = int(input("a2:"))
a3 = int(input("a3:"))
h = int(input("h:"))
tri = Triangle(a1, a2, a3)
print("三角形周长为" + str(tri.getZC()))
tri.printArea()
```
阅读全文