Protocoles pour les figures : calcul de l’aire et du périmètre

Swift Medium protocols

Tâche «Protocoles pour les figures : calcul de l’aire et du périmètre»

Implémentez le protocole Shape avec les méthodes area() -> Double et perimeter() -> Double. Créez les structures Circle (propriété radius: Double) et Rectangle (propriétés width: Double, height: Double) qui se conforment à ce protocole. Écrivez une fonction printShapeInfo(shape: Shape) qui affiche l’aire et le périmètre de la figure. Entrée : un entier n (nombre de figures), puis pour chaque figure une chaîne avec le type ('circle' ou 'rectangle') et les paramètres correspondants (pour circle — le rayon, pour rectangle — la largeur et la hauteur). Pour chaque figure, affichez son type ainsi que les valeurs de l’aire et du périmètre avec une précision de deux chiffres après la virgule.

Format d\ entrée

Première ligne : un entier n (1 ≤ n ≤ 100). Ensuite n lignes : chaque ligne contient le type de figure et ses paramètres (séparés par un espace). Pour circle : 'circle <rayon>'. Pour rectangle : 'rectangle <largeur> <hauteur>'. Tous les paramètres sont des entiers de 1 à 1000.

Format de sortie

Pour chaque figure, sur une ligne séparée : '<Type de figure> : Aire = <aire>, Périmètre = <périmètre>'. L’aire et le périmètre sont affichés avec deux chiffres après la virgule.

Exemples

Exemple 1

ENTRÉE
3 circle 5 rectangle 4 7 circle 10
SORTIE
Circle: Площадь = 78.54, Периметр = 31.42 Rectangle: Площадь = 28.00, Периметр = 22.00 Circle: Площадь = 314.16, Периметр = 62.83

Exemple 2

ENTRÉE
1 rectangle 3 8
SORTIE
Rectangle: Площадь = 24.00, Периметр = 22.00

Exemple 3

ENTRÉE
5 3 apple -1 banana 0 cherry 4 date -2 elderberry
SORTIE
main.swift