Интерфейс для геометрических фигур
Go
Средний
interfaces
Задача «Интерфейс для геометрических фигур»
Реализуйте интерфейс Shape, который содержит метод Area() float64. Создайте структуры Circle и Rectangle, реализующие этот интерфейс. Для круга площадь вычисляется как π * r^2, для прямоугольника — a * b. Затем напишите функцию PrintArea(s Shape), которая выводит площадь фигуры с точностью до двух знаков после запятой. Входные данные: тип фигуры (1 — круг, 2 — прямоугольник) и соответствующие параметры (радиус для круга, стороны a и b для прямоугольника). Вывести площадь фигуры.
Формат ввода
Первая строка: целое число t (1 ≤ t ≤ 100) — количество фигур. Для каждой фигуры: первая строка — целое число type (1 или 2). Если type=1, следующая строка содержит одно вещественное число — радиус. Если type=2, следующая строка содержит два вещественных числа — стороны a и b.
Формат вывода
Для каждой фигуры выведите её площадь с точностью до двух знаков после запятой, каждое на новой строке.
Примеры
Пример 1
ВВОД
1
0
ВЫВОД
1
Пример 2
ВВОД
4
ADD Task A 1
ADD Task B 4
COMPLETE Task C
PENDING
ВЫВОД
Task not found
Task B, Task A
main.go