Protocolos para figuras: cálculo de área e perímetro
Swift
Medium
protocols
Tarefa «Protocolos para figuras: cálculo de área e perímetro»
Implemente o protocolo Shape com os métodos area() -> Double e perimeter() -> Double. Crie as estruturas Circle (propriedade radius: Double) e Rectangle (propriedades width: Double, height: Double), que estão em conformidade com este protocolo. Escreva a função printShapeInfo(shape: Shape), que exibe a área e o perímetro da figura. Dados de entrada: um número inteiro n (quantidade de figuras), em seguida, para cada figura, uma string com o tipo ('circle' ou 'rectangle') e os parâmetros correspondentes (para circle — raio, para rectangle — largura e altura). Para cada figura, exiba seu tipo e os valores de área e perímetro com precisão de duas casas decimais.
Formato de Entrada
Primeira linha: um inteiro n (1 ≤ n ≤ 100). Em seguida, n linhas: cada linha contém o tipo da figura e seus parâmetros (separados por espaço). Para circle: 'circle <raio>'. Para rectangle: 'rectangle <largura> <altura>'. Todos os parâmetros são números inteiros de 1 a 1000.
Formato de Saída
Para cada figura, em uma linha separada: '<Tipo da figura>: Área = <área>, Perímetro = <perímetro>'. A área e o perímetro são exibidos com duas casas decimais.
Exemplos
Exemplo 1
ENTRADA
3
circle 5
rectangle 4 7
circle 10
SAÍDA
Circle: Площадь = 78.54, Периметр = 31.42
Rectangle: Площадь = 28.00, Периметр = 22.00
Circle: Площадь = 314.16, Периметр = 62.83
Exemplo 2
ENTRADA
1
rectangle 3 8
SAÍDA
Rectangle: Площадь = 24.00, Периметр = 22.00
Exemplo 3
ENTRADA
5
3 apple
-1 banana
0 cherry
4 date
-2 elderberry
SAÍDA
main.swift