您的位置:首页 > 游戏 > 游戏 > 在线代理网页版proxy_珠海香洲区疫情最新消息_网建_石家庄网站建设公司

在线代理网页版proxy_珠海香洲区疫情最新消息_网建_石家庄网站建设公司

2025/7/17 2:34:10 来源:https://blog.csdn.net/m0_67371175/article/details/146407706  浏览:    关键词:在线代理网页版proxy_珠海香洲区疫情最新消息_网建_石家庄网站建设公司
在线代理网页版proxy_珠海香洲区疫情最新消息_网建_石家庄网站建设公司

6-1 二维平面上的点操作(Python3)

题目描述

设计一个表示二维平面上点的类 Point。该类应该包含以下功能:

  • 两个私有属性 _x_y,分别表示点的横坐标和纵坐标。

  • 一个构造函数 __init__,用于初始化点的坐标。

  • 一个方法 distance_to_origin,返回该点到原点 (0, 0) 的欧几几何距离。

  • 一个方法 move_by,接受两个参数 dxdy,将点的横坐标和纵坐标分别增加 dxdy

  • 一个特殊方法 __str__,返回点的信息字符串,格式为 "Point(x, y)"

函数接口定义(你实现)

class Point:def __init__(self, x, y):# 初始化点的坐标passdef distance_to_origin(self):# 返回点到原点的距离passdef move_by(self, dx, dy):# 移动点的位置passdef __str__(self):# 返回点的信息字符串pass

裁判测试程序样例

def main():# 用户输入点的初始坐标 (x, y)# 使用 input() 读取一行输入,并用 split() 将其分割成两个字符串# 使用 map(float, ...) 将这两个字符串转换为浮点数x, y = map(float, input("请输入点的初始坐标 (x y): ").split())# 创建 Point 类的实例,传入初始坐标 (x, y)point = Point(x, y)# 调用 point 的 distance_to_origin 方法计算点到原点 (0, 0) 的距离# 使用 f-string 格式化输出,保留两位小数print(f"Distance to origin: {point.distance_to_origin():.2f}")# 用户输入移动量 (dx, dy)# 使用 input() 读取一行输入,并用 split() 将其分割成两个字符串# 使用 map(float, ...) 将这两个字符串转换为浮点数dx, dy = map(float, input("请输入移动量 (dx dy): ").split())# 调用 point 的 move_by 方法,将点的位置按 (dx, dy) 移动point.move_by(dx, dy)# 打印移动后的点的信息# 调用 point 的 __str__ 方法,返回点的字符串表示print(point)#执行 main 函数
if __name__ == "__main__":main()

输入样例

3 4
1 2

输出样例

Distance to origin: 5.00
Point(4.0, 6.0)

实现提示

  • 使用 math.sqrt 来计算欧几里得距离(开根号)。

  • 确保 __str__ 方法返回正确的字符串格式。

 代码

import math  class Point:  def __init__(self, x, y):  # 初始化点的坐标  self._x = x  self._y = y  def distance_to_origin(self):  # 返回点到原点的距离  return math.sqrt(self._x**2 + self._y**2)  def move_by(self, dx, dy):  # 移动点的位置  self._x += dx  self._y += dy  def __str__(self):  # 返回点的信息字符串  return f"Point({self._x}, {self._y})"  

 

 6-2 图形面积计算(Python3)

 

图形编辑器

题目描述

设计一个简单的图形编辑器系统,该系统包括以下类:

  • Shape:所有图形的基类。

  • Circle:表示圆形,继承自 Shape

  • Rectangle:表示矩形,继承自 Shape

  • Triangle:表示三角形,继承自 Shape

每个图形类都需要实现以下方法:

  • area():返回图形的面积。

  • perimeter():返回图形的周长。

此外,**题目已经编写好了主程序和测试函数,学生只需实现上述这些方法即可。

函数接口定义(你实现的部分)

class Shape:def area(self):raise NotImplementedError("This method should be overridden by subclasses")def perimeter(self):raise NotImplementedError("This method should be overridden by subclasses")class Circle(Shape):def __init__(self, radius):self.radius = radiusdef area(self):# 计算并返回圆的面积passdef perimeter(self):# 计算并返回圆的周长passclass Rectangle(Shape):def __init__(self, width, height):self.width = widthself.height = heightdef area(self):# 计算并返回矩形的面积passdef perimeter(self):# 计算并返回矩形的周长passclass Triangle(Shape):def __init__(self, a, b, c):self.a = aself.b = bself.c = cdef area(self):# 计算并返回三角形的面积passdef perimeter(self):# 计算并返回三角形的周长pass

 

裁判测试程序样例(判卷逻辑)

def print_shape_info(shape):# 打印给定形状的面积和周长print(f"Area: {shape.area():.2f}")print(f"Perimeter: {shape.perimeter():.2f}")def main():# 用户输入图形类型和相应的参数shape_type = input("")if shape_type == 'circle':radius = float(input(""))shape = Circle(radius)elif shape_type == 'rectangle':width, height = map(float, input("").split())shape = Rectangle(width, height)elif shape_type == 'triangle':a, b, c = map(float, input("").split())shape = Triangle(a, b, c)else:print("未知的图形类型")return# 打印图形的面积和周长print_shape_info(shape)if __name__ == "__main__":main()

输入样例 1

circle
5

输出样例 1

Area: 78.54
Perimeter: 31.42

输入样例 2

rectangle
4 6

输出样例 2

Area: 24.00
Perimeter: 20.00

输入样例 3

triangle
3 4 5

输出样例 3

Area: 6.00
Perimeter: 12.00

代码 

import math  class Shape:  def area(self):  raise NotImplementedError("This method should be overridden by subclasses")  def perimeter(self):  raise NotImplementedError("This method should be overridden by subclasses")  class Circle(Shape):  def __init__(self, radius):  self.radius = radius  def area(self):  # 计算并返回圆的面积  return math.pi * (self.radius**2)  def perimeter(self):  # 计算并返回圆的周长  return 2 * math.pi * self.radius  class Rectangle(Shape):  def __init__(self, width, height):  self.width = width  self.height = height  def area(self):  # 计算并返回矩形的面积  return self.width * self.height  def perimeter(self):  # 计算并返回矩形的周长  return 2 * (self.width + self.height)  class Triangle(Shape):  def __init__(self, a, b, c):  self.a = a  self.b = b  self.c = c  def area(self):  # 计算并返回三角形的面积(海伦公式)  s = (self.a + self.b + self.c) / 2  return math.sqrt(s * (s - self.a) * (s - self.b) * (s - self.c))  def perimeter(self):  # 计算并返回三角形的周长  return self.a + self.b + self.c  

 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com