定义多边形类 包含属性:点坐标数组,点数等信息,和三个函数分别为:赋值、求多变形周长函数、求多边形面积函数,用 main() 进行测试。
时间: 2024-06-09 20:08:48 浏览: 47
下面是多边形类的实现:
```python
class Polygon:
def __init__(self, points=[]):
self.points = points
self.num_points = len(points)
def assign_points(self, points):
self.points = points
self.num_points = len(points)
def perimeter(self):
perim = 0
for i in range(self.num_points):
x1, y1 = self.points[i]
x2, y2 = self.points[(i+1)%self.num_points]
perim += ((x2-x1)**2 + (y2-y1)**2)**0.5
return perim
def area(self):
area = 0
for i in range(self.num_points):
x1, y1 = self.points[i]
x2, y2 = self.points[(i+1)%self.num_points]
area += x1*y2 - x2*y1
return abs(area)/2
```
在这个类中,我们定义了一个构造函数,一个函数来赋值多边形的点坐标,一个函数来计算多边形的周长,以及一个函数来计算多边形的面积。
下面是 main() 函数的实现:
```python
if __name__ == '__main__':
p = Polygon()
p.assign_points([(0,0), (0,1), (1,1), (1,0)])
print("周长为:", p.perimeter())
print("面积为:", p.area())
```
在这个函数中,我们首先创建了一个多边形对象 p,并给它赋值了四个点的坐标。然后我们分别调用了它的周长和面积函数,并将它们的结果打印出来。
阅读全文