помогите срочно python!!!!!
Python
Создайте абстрактный класс Figure с абстрактным методом calculate_square для подсчета фигуры. Унаследуйте от класса Figure несколько классов геометрических фигур со специфическими для них свойствами. Например для окружности - радиус, для треугольника - длину основания и высоту, для прямоугольника - длины двух сторон. Также у каждой фигуры должно быть название. В унаследованных классах переопределите метод calculate_square для подсчета площади каждой фигуры.
Answers & Comments
Ответ:
from abc import ABC, abstractmethod
from typing import Union
class Figure(ABC):
def __init__(self):
self.S = 0
@abstractmethod
def calculate_square(self):
return self.S
class Circle(Figure):
def __init__(self, radius):
super().__init__()
self.R = radius
def calculate_square(self) -> Union[int, float]:
from math import pi
self.S = pi * self.R ** 2
return self.S
class Triangular(Figure):
def __init__(self, b: Union[int, float], h: Union[int, float]):
self.b = b
self.h = h
super().__init__()
def calculate_square(self) -> Union[int, float]:
self.S += 0.5 * self.h * self.b
return self.S
class Square(Figure):
def __init__(self, a):
super().__init__()
self.a = a
def calculate_square(self):
self.S = self.a ** 2
return self.S
В случае ошибки напишите в комментарии
Если вам потребуется объяснение напишите в комментарии