示例#1
0
        private void ValorAEspecializar_TextChanged(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                try
                {
                    if (polInterpolante != null)
                    {
                        PolinomioEspecializado.Text = "P(" + ValorAEspecializar.Text + ") =" +
                                                      polInterpolante.Evaluar(float.Parse(ValorAEspecializar.Text)).ToString();
                    }
                    else
                    {
                        MessageBox.Show("Error: Polinomio interpolante debe ser calculado previamente", "Error al especializar", MessageBoxButtons.OK);
                    }
                }



                catch
                {
                    MessageBox.Show("Error: entrada inválida", "Error al especializar", MessageBoxButtons.OK);
                }
            }
        }
示例#2
0
        public bool necesitaRecalcular(Polinomio polInterpolante)
        {
            bool respuesta = false;

            if (polInterpolante.getGrado() >= tablaPuntos.Count)
            {
                return(true);
            }

            foreach (var par in tablaPuntos)
            {
                float key   = par.Key;
                float value = par.Value;
                respuesta = polInterpolante.Evaluar(key) != value;
                if (respuesta == true)
                {
                    return(respuesta);
                }
            }
            return(respuesta);
        }