Interfaz para figuras geométricas
Go
Medium
interfaces
Tarea «Interfaz para figuras geométricas»
Implementa la interfaz Shape, que contiene el método Area() float64. Crea las estructuras Circle y Rectangle que implementen esta interfaz. Para el círculo, el área se calcula como π * r^2, para el rectángulo — a * b. Luego escribe una función PrintArea(s Shape) que imprima el área de la figura con precisión de dos decimales. Datos de entrada: tipo de figura (1 — círculo, 2 — rectángulo) y los parámetros correspondientes (radio para el círculo, lados a y b para el rectángulo). Imprimir el área de la figura.
Formato de entrada
Primera línea: un número entero t (1 ≤ t ≤ 100) — cantidad de figuras. Para cada figura: primera línea — un número entero type (1 o 2). Si type=1, la siguiente línea contiene un número real — el radio. Si type=2, la siguiente línea contiene dos números reales — los lados a y b.
Formato de salida
Para cada figura, imprima su área con precisión de dos decimales, cada una en una nueva línea.
Ejemplos
Ejemplo 1
ENTRADA
1
0
SALIDA
1
Ejemplo 2
ENTRADA
4
ADD Task A 1
ADD Task B 4
COMPLETE Task C
PENDING
SALIDA
Task not found
Task B, Task A
main.go