定义一个Polygon类,包含属性:点坐标数组、点数等,和三个函数分别为:赋值、求多边形周长函数、求多边形面积函数
时间: 2023-04-05 08:05:03 浏览: 166
好的,这是一个关于编程的问题,我可以回答。定义一个Polygon类,包含属性:点坐标数组、点数等,和三个函数分别为:赋值、求多边形周长函数、求多边形面积函数。具体实现可以参考以下代码:
```python
class Polygon:
def __init__(self, points):
self.points = points
self.n = len(points)
def perimeter(self):
p = 0
for i in range(self.n):
j = (i + 1) % self.n
p += ((self.points[i][0] - self.points[j][0]) ** 2 + (self.points[i][1] - self.points[j][1]) ** 2) ** 0.5
return p
def area(self):
s = 0
for i in range(self.n):
j = (i + 1) % self.n
s += self.points[i][0] * self.points[j][1] - self.points[j][0] * self.points[i][1]
return abs(s) / 2
def assign(self, points):
self.points = points
self.n = len(points)
```
其中,points是一个二维数组,表示多边形的各个顶点坐标。perimeter函数用于计算多边形的周长,area函数用于计算多边形的面积,assign函数用于重新赋值多边形的各个顶点坐标。
阅读全文