Rasgo Geometry para calcular área y perímetro

Rust Medium traits

Tarea «Rasgo Geometry para calcular área y perímetro»

Implemente el rasgo Geometry con los métodos area() -> f64 y perimeter() -> f64. Cree las estructuras Circle (radio), Rectangle (ancho, alto) y Triangle (lados a, b, c). Para cada estructura, implemente el rasgo Geometry. En main, lea desde stdin tres líneas: para el círculo el radio (f64), para el rectángulo el ancho y el alto (f64 separados por espacio), para el triángulo los tres lados (f64 separados por espacio). Imprima para cada figura el área y el perímetro separados por espacio, cada par en una nueva línea. Redondee el área y el perímetro a dos decimales. Si el triángulo no existe (no se cumple la desigualdad triangular), imprima "Invalid triangle" en lugar de los números.

Formato de entrada

Tres líneas. La primera: un número f64 — el radio del círculo. La segunda: dos números f64 separados por espacio — el ancho y el alto del rectángulo. La tercera: tres números f64 separados por espacio — los lados del triángulo.

Formato de salida

Tres líneas. Para las dos primeras figuras: el área y el perímetro separados por espacio, redondeados a dos decimales. Para el triángulo: el área y el perímetro separados por espacio, redondeados a dos decimales, o la cadena "Invalid triangle".

Ejemplos

Ejemplo 1

ENTRADA
1.0 2.5 3.5 1.0 2.0 3.0
SALIDA
3.14 6.28 8.75 12.00 Invalid triangle

Ejemplo 2

ENTRADA
3 кот дом стол
SALIDA
кот дом стол

Ejemplo 3

ENTRADA
2 я мы
SALIDA
я мы
main.rs