设计一个坐标点类Point,它拥有两个成员变量:横坐标(x), 纵坐标(y),默认均为0。 拥有两个成员方法: move(x1, y1), 其中x1和y1表示移动的向量,表示当前对象按照(x1, y1)向量在坐标系上移动。 location(),按照样例显示当前位置。 任务:在一行中输入随机种子数x与步数n,以空格分隔。每步的移动向量(x1, y1)由random随机库生成(x1,y1在[-20, 20]范围内取值),并按样例格式化输出信息。
时间: 2024-03-07 17:46:25 浏览: 325
以下是实现上述要求的 Python 代码:
```python
import random
class Point:
def __init__(self, x=0, y=0):
self.x = x
self.y = y
def move(self, x1, y1):
self.x += x1
self.y += y1
def location(self):
print("Current location: ({}, {})".format(self.x, self.y))
random.seed(int(input("Enter seed: ")))
n = int(input("Enter number of steps: "))
p = Point()
for i in range(n):
x1, y1 = random.randint(-20, 20), random.randint(-20, 20)
p.move(x1, y1)
print("Step {}: ({}, {})".format(i+1, x1, y1))
p.location()
```
该程序首先读取随机数种子和步数,然后使用 Python 的 `random` 库生成每一步的移动向量。在每一步中,程序输出当前步数和移动向量,并将点对象移动到新位置。最后,程序输出当前点的位置。
相关问题
设计一个坐标点类Point,它拥有两个成员变量:横坐标(x), 纵坐标(y),默认均为0。 拥有两个成员方法: move(x1, y1), 其中x1和y1表示移动的向量,表示当前对象按照(x1, y1)向量在坐标系上移动。 location(),按照样例显示当前位置。 任务:在一行中输入随机种子数x与步数n,以空格分隔。每步的移动向量(x1, y1)由random随机库生成(x1,y1在[-20, 20]范围内取值),输出移动后点的位置
以下是实现上述要求的 Python 代码:
```python
import random
class Point:
def __init__(self, x=0, y=0):
self.x = x
self.y = y
def move(self, x1, y1):
self.x += x1
self.y += y1
def location(self):
print("({}, {})".format(self.x, self.y))
random.seed(int(input("Enter seed: ")))
n = int(input("Enter number of steps: "))
p = Point()
for i in range(n):
x1, y1 = random.randint(-20, 20), random.randint(-20, 20)
p.move(x1, y1)
p.location()
```
该程序首先读取随机数种子和步数,然后使用 Python 的 `random` 库生成每一步的移动向量。在每一步中,程序将点对象移动到新位置,并输出新位置的坐标。
设计实现一个Point类,满足以下要求: a. 该类包含两个整型成员变量x(横坐标)和y(纵坐标),以及一个输出函数Print()用来输出横坐标和纵坐标,要求不可以在类的外部直接访问成员变量; b.可以采用没有参数的构造函数初始化对象,此时的成员变量采用默认值0; c.可以采用直接输入参数的方式来初始化该类的成员变量; d.可以采用其它的Point对象来初始化该类的成员变量; e.设计一个主函数来测试以上功能。
class Point {
private:
int x;
int y;
public:
Point(): x(0),y(0){} // 无参构造函数
Point(int a, int b): x(a),y(b){} // 直接输入参数的构造函数
Point(const Point& p): x(p.x),y(p.y){} // 通过另一个Point对象来初始化的构造函数
void Print() { cout << "x:" << x << ", " << "y:" << y << endl; } // 输出函数
};
int main() {
Point p1; // 无参构造函数初始化对象
Point p2(1,2); // 直接输入参数的方式来初始化对象
Point p3(p2); // 通过另一个Point对象来初始化对象
p1.Print(); // 输出x:0, y:0
p2.Print(); // 输出x:1, y:2
p3.Print(); // 输出x:1, y:2
return 0;
}
阅读全文
相关推荐















