补全代码:#定义正多边形类 class Polygon: #属性 n = 0 side = 0 def angle(self): #求内角公式 a = 180 - 360/n print('正 %d 边形的内角是:%.2f' % (n, a)) #创建一个实例 #求第一个正多边形的内角 p1 = Polygon() p1.n = int(input()) p1.side = float(input()) p1.angle() #创建第二个实例 #创建第二个实例 #求第二个正多边形的内角 p2 = Polygon() p2.n = int(input()) p2.side = float(input()) p2.angle() #初始化属性 #访问实例方法,输出结果
时间: 2024-04-17 17:28:07 浏览: 43
#定义正多边形类
class Polygon:
#属性 n = 0
side = 0
def angle(self):
#求内角公式
a = 180 - 360/self.n
print('正 %d 边形的内角是:%.2f' % (self.n, a))
#创建一个实例
#求第一个正多边形的内角
p1 = Polygon()
p1.n = int(input())
p1.side = float(input())
p1.angle()
#创建第二个实例
#求第二个正多边形的内角
p2 = Polygon()
p2.n = int(input())
p2.side = float(input())
p2.angle()
相关问题
定义一个Polygon类,包含属性:点坐标数组、点数等,和三个函数分别为:赋值、求多边形周长函数、求多边形面积函数
好的,这是一个关于编程的问题,我可以回答。定义一个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函数用于重新赋值多边形的各个顶点坐标。
C++编程定义一个Polygon类,包含属性:点坐标数组、点数等,和三个函数分别为:赋值、求多边形周长函数、求多边形面积函数
好的,这是一个关于编程的问题,我可以回答。Polygon类可以定义如下:
```c++
class Polygon {
private:
int numPoints; // 点数
vector<pair<double, double>> points; // 点坐标数组
public:
// 赋值函数
void setPoints(vector<pair<double, double>> p) {
numPoints = p.size();
points = p;
}
// 求多边形周长函数
double perimeter() {
double p = 0;
for (int i = 0; i < numPoints; i++) {
int j = (i + 1) % numPoints;
double dx = points[i].first - points[j].first;
double dy = points[i].second - points[j].second;
p += sqrt(dx * dx + dy * dy);
}
return p;
}
// 求多边形面积函数
double area() {
double a = 0;
for (int i = 0; i < numPoints; i++) {
int j = (i + 1) % numPoints;
a += points[i].first * points[j].second - points[j].first * points[i].second;
}
return abs(a) / 2;
}
};
```
以上是一个简单的Polygon类的定义,其中包含了点坐标数组、点数等属性,以及赋值、求多边形周长函数、求多边形面积函数三个函数。