public void ResolverLaEcuacionCuadratica(EspecificarVariables variables) { //calcular el discriminante CalcularDiscriminante accCalcularDiscriminante = new CalcularDiscriminante(); variables.setDiscriminante (accCalcularDiscriminante.CalcularElDiscriminante(variables)); //validar el discriminante ValidarDiscriminante validarDiscriminante = new ValidarDiscriminante(); if (validarDiscriminante.ValidarElDiscriminanteMayorQueCero(variables)) { //calcular las raices CalcularRaices calcularRaices = new CalcularRaices(); calcularRaices.CalcularLasRaices(variables); } else //levante una excepción { Exception ex = new Exception(string.Format("Ocurrió un error al calcular las raices," + " ya que el discriminante [{0}] es menor que cero", variables.getDiscriminante().ToString())); throw ex; } }
public void CalcularLasRaices(EspecificarVariables variables) { variables.setPrimeraRaiz ((-variables.getSegundoNumero() + Math.Sqrt(variables.getDiscriminante())) / (2 * variables.getPrimerNumero())); variables. setSegundaRaiz ((-variables.getSegundoNumero() - Math.Sqrt(variables.getDiscriminante())) / (2 * variables.getPrimerNumero())); }
public bool ValidarElDiscriminanteMayorQueCero(EspecificarVariables variables) { bool resultado = false; resultado = (variables.getDiscriminante() >= 0); return resultado; }