public double CalcularElAreaDelTriangulo(VariablesDelCalculo v)
 {
     double resultado = 0;
     resultado = Math.Sqrt(v.GetSemiPerimetro() * (v.GetSemiPerimetro() - v.getLado1()) *
         (v.GetSemiPerimetro() - v.getLado2()) * (v.GetSemiPerimetro() - v.getLado3()));
     return resultado;
 }
 public bool ValidarLosLados(VariablesDelCalculo v)
 {
     bool resultado = false;
     if (v.getLado1() != 0 && v.getLado2() != 0 && v.getLado3() != 0)
     {
         resultado = true;
     }
     return resultado;
 }
 public void PruebaUnitariaLadosTrianguloValidados()
 {
     CalcularAreaTrianguloHeron.CalcularAreaTriangulo triangulo = new CalcularAreaTrianguloHeron.CalcularAreaTriangulo();
     VariablesDelCalculo v = new VariablesDelCalculo();
     v.setLado1(5);
     v.setLado2(5);
     v.setLado3(19);
     triangulo.CalculoDelAreaTriangular(v);
 }
 public double CalcularElSemiPerimetro(VariablesDelCalculo variables)
 {
     ValidarLados vL = new ValidarLados();
     double resultado = 0;
     if (vL.ValidarLosLados(variables))
     {
         resultado = (variables.getLado1() + variables.getLado2() + variables.getLado3()) / 2;
     }
     return resultado;
 }
        public bool ValidarLaAltura(double h, VariablesDelCalculo v)
        {
            bool resultado = false;
             if (h > 0.0)
            {
                resultado = true;
            }

            return resultado;
        }
        public void PrubaUnitariaMedidasMayoresACero()
        {
            double lado1Esperado =0;
            double lado2Esperado=0;
            double lado3Esperado=0;

            VariablesDelCalculo variables = new VariablesDelCalculo(2,3,0);
            Assert.IsTrue((variables.getLado1() != lado1Esperado) ||
                          (variables.getLado2() != lado2Esperado)||
                          (variables.getLado3() != lado3Esperado));
        }
        public double CalculoDeLaAlturaEnC(VariablesDelCalculo v)
        {
            ValidarAltura vH = new ValidarAltura();
            double resultado = 0;
            resultado = ((2 / v.getLado3()) * v.getArea());
            if (vH.ValidarLaAltura(resultado, v))
            {
                v.setAlturaEnC(resultado);

            }
            return resultado;
        }
 public void PruebaWcfCorrecto()
 {
     double semiPerimetroEsperado = 6;
     double areaEsperado = 36;
     CalcularAreaTrianguloHeron.VariablesDelCalculo v = new VariablesDelCalculo();
     v.setLado1(3);
     v.setLado2(4);
     v.setLado3(5);
     CalcularAreaTrianguloHeron.CalcularAreaTriangulo triangulo = new CalcularAreaTriangulo();
     triangulo.CalculoDelAreaTriangular(v);
     Assert.IsTrue((semiPerimetroEsperado == v.GetSemiPerimetro()) ||
                   (areaEsperado == v.getArea()));
 }
 public bool ValidarAreaTriangular(VariablesDelCalculo variables)
 {
     bool resultado = false;
     if ((variables.getLado1() + variables.getLado2()) > variables.getLado3())
     {
         if ((variables.getLado1() + variables.getLado3()) > variables.getLado2())
         {
             if ((variables.getLado2() + variables.getLado3()) > variables.getLado1())
             {
                 resultado = true;
             }
         }
     }
     return resultado;
 }
        public double CalculoDelAreaTriangular(VariablesDelCalculo variables)
        {
            double s = 0;
            double a = 0;
            CalcularSemiPerimetro semiP = new CalcularSemiPerimetro();
            CalculoAreaT area = new CalculoAreaT();
            ValidarAreaTriangulo validador = new ValidarAreaTriangulo();
            if(validador.ValidarAreaTriangular(variables))
            {

                s= semiP.CalcularElSemiPerimetro(variables);
                variables.setSemiPerimetro(s);
                a= area.CalcularElAreaDelTriangulo(variables);
                variables.setArea(a);

            }
            return a;
        }
 public double GetPerimetroTriangulo(double lado1, double lado2, double lado3)
 {
     VariablesDelCalculo variables = new VariablesDelCalculo(lado1, lado2, lado3);
     variables.setPerimetro(lado1, lado2, lado3);
     return variables.getPerimetro();
 }
 public double GetAreaTriangulo(double lado1, double lado2, double lado3)
 {
     VariablesDelCalculo variables = new VariablesDelCalculo(lado1, lado2, lado3);
     CalcularAreaTriangulo areaTriangulo = new CalcularAreaTriangulo();
     return areaTriangulo.CalculoDelAreaTriangular(variables);
 }