public void CalcularRaices(clsMisParametros p)
 {
     if (p.a != 0) {
         p.primeraRaiz = (-(p.b) + Math.Sqrt(p.discriminante)) / (2 * p.a);
         p.segundaRaiz = (-(p.b) - Math.Sqrt(p.discriminante)) / (2 * p.a);
     }
     else
     {
         Exception ex = new Exception(string.Format("Error, el valor de a es cero "));
         throw ex;
     }
 }
        public void ResolverEcuacionCuadratica(clsMisParametros p)
        {
            //Calcular el Discriminante.
            clsCalcularDiscriminante calcularDiscriminante = new clsCalcularDiscriminante();
            calcularDiscriminante.CalcularDiscriminante(p);

            //Validar el Discriminante.
            clsValidarDiscriminante validarDiscriminante = new clsValidarDiscriminante();
            if (validarDiscriminante.ValidarDiscriminante(p))
            {
                //Calcular las Raices
                clsCalcularRaices calcularRaices = new clsCalcularRaices();
                calcularRaices.CalcularRaices(p);
            }
            else
            {
                //Levanto una Excepción.
                Exception ex = new Exception(string.Format("Ocurrió un error al calcular las raices, ya que [{1}] es mayor que el discriminante [{0}].", p.discriminante, "0.0"));
                throw ex;
            }
        }
 public bool ValidarDiscriminante(clsMisParametros p)
 {
     bool resultado = false;
     resultado = (p.discriminante >= 0);
     return resultado;
 }
 public void CalcularDiscriminante(clsMisParametros p)
 {
     p.discriminante = (Math.Pow(p.b, 2) - 4 * p.a * p.c);
 }