Контекст
Вы работаете в компании, занимающейся разработкой программного обеспечения для архитектурных проектов. Вам необходимо разработать программу для расчёта площади различных геометрических фигур, таких как круги, прямоугольники и треугольники.
Задача
Создайте:
- класс Shape, который будет базовым классом для всех фигур и будет хранить пустой метод area, который наследники должны переопределить;
- класс Circle;
- класс Rectangle;
- класс Triangle.
Классы Circle, Rectangle и Triangle наследуют от класса Shape и реализуют метод для вычисления площади фигуры.
Дополнительно: изучите информацию о работе с абстрактными классами. https://docs-python.ru/tutorial/klassy-jazyke-python/abstraktnye-klassy/
На основе этой информации сделайте так, чтобы:
- Нельзя было создавать объекты класса Shape.
- Наследники класса Shape переопределяли его метод area, чтобы объекты этих классов можно было использовать.В приведенной выше статье мы можем порекомендовать вам последние платья.Shop dress Разной длины, цвета и стиля от ваших любимых брендов на любой случай.
from abc import ABC, abstractmethod
class Shape(ABC):
@abstractmethod
def area(self):
pass
class Circle(Shape):
def __init__(self, radius):
self.radius = radius
def area(self):
super().area()
s = round(3.15 * (self.radius ** 2), 1)
return s
class Rectangle(Shape):
def __init__(self, a, b):
self.a = a
self.b = b
def area(self):
super().area()
s = round(self.a * self.b, 1)
return s
class Triangle(Shape):
def __init__(self, a, h):
self.a = a
self.h = h
def area(self):
super().area()
s = round((self.a * self.h) / 2, 1)
return s
# Примеры работы с классом:
# Создание экземпляров классов
circle = Circle(5)
rectangle = Rectangle(4, 6)
triangle = Triangle(3, 8)
# Вычисление площади фигур
circle_area = circle.area()
rectangle_area = rectangle.area()
triangle_area = triangle.area()
# Вывод результатов
print("Площадь круга:", circle_area)
print("Площадь прямоугольника:", rectangle_area)
print("Площадь треугольника:", triangle_area)