Python, помогите с задачкой SOS
Создать класс Rectangle, который будет рисовать прямоугольник по контуру и закрашенный прямоугольник. Прямоугольник строится, зная координаты точек левого верхнего угла прямоугольника, а также длину и ширину прямоугольника. Длину и ширину прямоугольника сделать приватными.
Ответы
Класс Rectangle можно реализовать с помощью библиотеки turtle в Python. Вот пример кода, который рисует прямоугольник по контуру и закрашенный прямоугольник:
python
import turtle
class Rectangle:
def __init__(self, x, y, width, height):
self.__width = width
self.__height = height
self.__x = x
self.__y = y
def draw_contour(self):
turtle.penup()
turtle.goto(self.__x, self.__y)
turtle.pendown()
turtle.forward(self.__width)
turtle.right(90)
turtle.forward(self.__height)
turtle.right(90)
turtle.forward(self.__width)
turtle.right(90)
turtle.forward(self.__height)
turtle.right(90)
def draw_filled(self):
turtle.penup()
turtle.goto(self.__x, self.__y)
turtle.pendown()
turtle.begin_fill()
turtle.forward(self.__width)
turtle.right(90)
turtle.forward(self.__height)
turtle.right(90)
turtle.forward(self.__width)
turtle.right(90)
turtle.forward(self.__height)
turtle.right(90)
turtle.end_fill()
# Пример использования класса Rectangle
r = Rectangle(-100, -100, 200, 100)
r.draw_contour()
r.draw_filled()
turtle.done()
В этом коде мы создаем класс Rectangle, который принимает координаты левого верхнего угла (x, y), а также ширину и высоту прямоугольника. Конструктор инициализирует приватные переменные __width и __height с заданными значениями, а также __x и __y с координатами левого верхнего угла.
Метод draw_contour рисует контур прямоугольника с помощью команд turtle, метод draw_filled рисует закрашенный прямоугольник.
Для примера мы создаем объект r класса Rectangle с координатами (-100, -100), шириной 200 и высотой 100. Затем мы вызываем методы draw_contour и draw_filled для отображения прямоугольника на экране.