Interfaz para figuras geométricas: cálculo de área y perímetro
TypeScript
Medium
interfaces
Tarea «Interfaz para figuras geométricas: cálculo de área y perímetro»
Cree una interfaz Shape que contenga los métodos getArea() y getPerimeter(), que devuelvan un número. Implemente las clases Circle (recibe el radio) y Rectangle (recibe el ancho y la altura), que implementen esta interfaz. Luego, escriba la función processShape, que recibe un arreglo de figuras y muestra para cada figura su área y perímetro separados por un espacio. Todos los datos de entrada se leen desde stdin: primero un número n (cantidad de figuras), luego n líneas, cada una comienza con el tipo de figura ('circle' o 'rectangle'), seguido de los parámetros (radio para el círculo, ancho y altura para el rectángulo). Muestre para cada figura su área y perímetro, redondeados a dos decimales, cada par en una nueva línea.
Formato de entrada
Primera línea: un número entero n (1 ≤ n ≤ 100). Luego n líneas, cada una en el formato: <tipo> <parámetros>. Para circle: radius (entero o real). Para rectangle: width height (enteros o reales).
Formato de salida
n líneas, cada una contiene dos números separados por un espacio: el área y el perímetro, redondeados a dos decimales.
Ejemplos
Ejemplo 1
ENTRADA
2
circle 1
rectangle 0.5 0.5
SALIDA
3.14 6.28
0.25 2.00
Ejemplo 2
ENTRADA
5
1 1 2 3 3
SALIDA
1 2 2 1 3 2
main.ts