示例#1
0
        public Polinomio retornarPolinomio(List <List <float> > fs, List <float> xs)
        {
            String    polinomioSinResolver = "P(x)=";
            Polinomio polInterpolante      = new Polinomio();

            for (int j = 0; j < fs.Count; j++)
            {
                if (fs[j].Count != 0)//sin este if rompe al tener solo un punto
                {
                    Polinomio termino = new Polinomio();
                    termino.AgregarCoeficiente(1);

                    polinomioSinResolver += fs[j].First().ToString();
                    for (int i = 0; i < j; i++)
                    {
                        Polinomio aux = new Polinomio();
                        aux.AgregarCoeficiente(-xs[i]);
                        aux.AgregarCoeficiente(1);
                        polinomioSinResolver += "(x-" + xs[i] + ")";
                        termino = termino.Multiplicar(aux);
                    }
                    if (j != fs.Count - 1)
                    {
                        polinomioSinResolver += "+";
                    }
                    termino         = termino.MultiplicarEscalar(fs[j].First());
                    polInterpolante = polInterpolante.Sumar(termino);
                    pasos.Add(polinomioSinResolver);
                }
            }
            return(polInterpolante);
        }
示例#2
0
        public Polinomio Sumar(Polinomio polinomio)
        {
            Polinomio resultado = new Polinomio();

            for (int i = 0; i < Grado(); i++)
            {
                resultado.AgregarCoeficiente(coeficientes[i]);
            }

            for (int i = 0; i < polinomio.Grado(); i++)
            {
                if (i < resultado.GetCoeficientes().Count)
                {
                    resultado.GetCoeficientes()[i] += polinomio.GetCoeficientes()[i];
                }
                else
                {
                    resultado.AgregarCoeficiente(polinomio.GetCoeficientes()[i]);
                }
            }
            return(resultado);
        }