public ResultadoEcuacionCuadratica ResolverEcuacionCuadratica(float a, float b, float c) { var laAccion = new Logica.Accion.ResolverEcuacionCuadratica(); ResultadoEcuacionCuadratica elResultado = laAccion.ResuelvaEcuacionCuadratica(a, b, c); return(elResultado); }
public void ElHappyDayFlotanteAproximado() { // preparar el escenario float coeficienteA = 4; float coeficienteB = 2; float coeficienteC = -3; ResultadoEcuacionCuadratica elResultadoActual; var elResultadoEsperado = new ResultadoEcuacionCuadratica(); elResultadoEsperado.PrimeraRaiz = -1.15137; elResultadoEsperado.SegundaRaiz = 0.65137; elResultadoEsperado.Discriminante = 52; var laEspecificacion = new MiLogicaDeNegocio.Logica.Especificacion.ResuelvaEcuacionCuadratica(); // ejecutar la prueba elResultadoActual = laEspecificacion.ResolverEcuacionCuadratica(coeficienteA, coeficienteB, coeficienteC); // verificar el resultado obtenido Assert.AreEqual(elResultadoEsperado.Discriminante, elResultadoActual.Discriminante); // verificar el resultado obtenido Assert.IsTrue( (Math.Round((double)elResultadoEsperado.PrimeraRaiz, numDecimales) == Math.Round((double)elResultadoActual.PrimeraRaiz, numDecimales)) || (Math.Round((double)elResultadoEsperado.PrimeraRaiz, numDecimales) == Math.Round((double)elResultadoActual.SegundaRaiz, numDecimales)) ); Assert.IsTrue( (Math.Round((double)elResultadoEsperado.SegundaRaiz, numDecimales) == Math.Round((double)elResultadoActual.PrimeraRaiz, numDecimales)) || (Math.Round((double)elResultadoEsperado.SegundaRaiz, numDecimales) == Math.Round((double)elResultadoActual.SegundaRaiz, numDecimales)) ); Assert.AreEqual(elResultadoEsperado.Discriminante, elResultadoActual.Discriminante); }
internal ResultadoEcuacionCuadratica ResuelvaEcuacionCuadratica(float a, float b, float c) { var elResultado = new ResultadoEcuacionCuadratica(); elResultado.PrimeraRaiz = elResultado.SegundaRaiz = null; // validar las entradas var laValidacion = new Validacion.EcuacionesCuadraticas(); if (laValidacion.AEsDiferenteDeCero(a)) { elResultado.Discriminante = CalcularDiscriminante(a, b, c); if (laValidacion.ElDiscriminanteEsMayorOIgualQueCero(elResultado.Discriminante)) { elResultado.PrimeraRaiz = CalcularRaiz(a, b, c, elResultado.Discriminante, true); elResultado.SegundaRaiz = CalcularRaiz(a, b, c, elResultado.Discriminante, false); } } return(elResultado); }
public void ElValorDeAEsCero() { // preparar el escenario float coeficienteA = 0; float coeficienteB = 123; float coeficienteC = 1234; ResultadoEcuacionCuadratica elResultadoActual; var elResultadoEsperado = new ResultadoEcuacionCuadratica(); elResultadoEsperado.PrimeraRaiz = elResultadoEsperado.SegundaRaiz = null; var laEspecificacion = new MiLogicaDeNegocio.Logica.Especificacion.ResuelvaEcuacionCuadratica(); // ejecutar la prueba elResultadoActual = laEspecificacion.ResolverEcuacionCuadratica(coeficienteA, coeficienteB, coeficienteC); // verificar el resultado obtenido Assert.AreEqual(elResultadoEsperado.PrimeraRaiz, elResultadoActual.PrimeraRaiz); Assert.AreEqual(elResultadoEsperado.SegundaRaiz, elResultadoActual.SegundaRaiz); }