public ResultadoIntegracionNumerica MetodoDelTrapecioSimple(ParametroTrapecioSimple parametro)
        {
            double resultado = 0;

            var resultadoA = Utilidad.EvaluarFuncion(parametro.Funcion, parametro.ValorA);
            var resultadoB = Utilidad.EvaluarFuncion(parametro.Funcion, parametro.ValorB);

            if (double.IsNaN(resultadoA) || double.IsNaN(resultadoB))
            {
                throw new ArgumentException("Verificar Función");
            }

            resultado = ((resultadoA + resultadoB) * (parametro.ValorB - parametro.ValorA)) / 2;

            return(new ResultadoIntegracionNumerica()
            {
                Valor = resultado
            });
        }
Ejemplo n.º 2
0
        private void btn_TrapecioSimple_Click(object sender, EventArgs e)
        {
            try
            {
                ParametroTrapecioSimple parametro = new ParametroTrapecioSimple
                {
                    Funcion = txt_Funcion.Text,
                    ValorA  = Convert.ToDouble(txt_ValorA.Text),
                    ValorB  = Convert.ToDouble(txt_ValorB.Text)
                };

                var resultado = integracionNumerica.MetodoDelTrapecioSimple(parametro);
                txt_Resultado.Text = resultado.Valor.ToString("0.000000");
                lbl_NomMetodo.Text = btn_TrapecioSimple.Text;
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
        }