Protocolos para figuras: cálculo de área y perímetro
Swift
Medium
protocols
Tarea «Protocolos para figuras: cálculo de área y perímetro»
Implemente el protocolo Shape con los métodos area() -> Double y perimeter() -> Double. Cree las estructuras Circle (propiedad radius: Double) y Rectangle (propiedades width: Double, height: Double) que cumplan con este protocolo. Escriba la función printShapeInfo(shape: Shape) que muestre el área y el perímetro de la figura. Datos de entrada: un número entero n (cantidad de figuras), luego para cada figura una cadena con el tipo ('circle' o 'rectangle') y los parámetros correspondientes (para circle — el radio, para rectangle — el ancho y la altura). Para cada figura, muestre su tipo y los valores del área y perímetro con precisión de dos decimales.
Formato de entrada
Primera línea: un entero n (1 ≤ n ≤ 100). Luego n líneas: cada línea contiene el tipo de figura y sus parámetros (separados por un espacio). Para circle: 'circle <radio>'. Para rectangle: 'rectangle <ancho> <altura>'. Todos los parámetros son números enteros del 1 al 1000.
Formato de salida
Para cada figura en una línea separada: '<Tipo de figura>: Área = <área>, Perímetro = <perímetro>'. El área y el perímetro se muestran con dos dígitos después del punto decimal.
Ejemplos
Ejemplo 1
ENTRADA
3
circle 5
rectangle 4 7
circle 10
SALIDA
Circle: Площадь = 78.54, Периметр = 31.42
Rectangle: Площадь = 28.00, Периметр = 22.00
Circle: Площадь = 314.16, Периметр = 62.83
Ejemplo 2
ENTRADA
1
rectangle 3 8
SALIDA
Rectangle: Площадь = 24.00, Периметр = 22.00
Ejemplo 3
ENTRADA
5
3 apple
-1 banana
0 cherry
4 date
-2 elderberry
SALIDA
main.swift