public static decimal CalcularPerimetro(FormaGeometricaModel forma) { switch (forma.Tipo) { case Cuadrado: return(forma.Lado * 4); case Circulo: return((decimal)Math.PI * forma.Lado); case TrianguloEquilatero: return(forma.Lado * 3); case Trapecio: return(forma.Lado + forma.Lado * 4); default: throw new ArgumentOutOfRangeException(@"Forma desconocida"); } }
public static decimal CalcularArea(FormaGeometricaModel forma) { switch (forma.Tipo) { case Cuadrado: return(forma.Lado * forma.Lado); case Circulo: return((decimal)Math.PI * (forma.Lado / 2) * (forma.Lado / 2)); case TrianguloEquilatero: return(((decimal)Math.Sqrt(3) / 4) * forma.Lado * forma.Lado); case Trapecio: return(((forma.Lado * 2) / 2) * 2); default: throw new ArgumentOutOfRangeException(@"Forma desconocida"); } }