Está en la página 1de 31

| Walter Mora F.

| Revista Digital Matemtica, Educacin e


Internet |

1 2 3 4 5 6 7 8 9 10

Mtodo de la biseccin

Esta tcnica se basa en el teorema del valor intermedio y parte del supuesto que y
tienen signos opuestos. Aunque el procedimiento funciona bien para el caso en el que
existe ms de una solucin en el intervalo , se considera por simplicidad que es nica
la raz en dicho intervalo.
Bsicamente, el mtodo consiste en dividir a la mitad repetidamente los subintervalos de
y en cada paso, localizar la mitad que contiene a la solucin, .
Para empezar, hacemos y y calculamos el punto medio del intervalo
y lo llamamos

Si , entonces ; si no, tiene el mismo signo que o .
Si y tienen el mismo signo, entonces , y tomanos y
. Si y tienen el mismo signo, entonces , y tomanos
y . Luego repetimos este proceso al intervalo . Esto produce el
mtodo descrito en el algoritmo de la figura 3.

Figura 3: Algoritmo de la biseccin.

Observacin: como en cada iteracin el intervalo es la mitad del intervalo anterior,
podemos concluir que en la iteracin la solucin se encuentra en un intervalo de
longitud
Error Absoluto
para . Esto nos permite tener una idea de que tan cerca estamos de la solucin real,
incluso podemos usar esto para estimar el nmero de iteraciones necesarias para alcanzar
una presicin dada.
La implementacin de este algoritmo con Excel es muy sencillas, como veremos.
Ejemplo

Para ilustar la forma en que podemos usar Excel, vamos a aproximar la solucin de la
ecuacin

Lo primero es hallar un intervalo en el cual podamos garantizar la existencia de una
solucin. Por el teorema de las cotas sabemos que esta ecuacin tiene sus soluciones dentro
del intervalo . Ahora, podemos usar el teorema del valor intermedio para refinar el
intervalo a y el teorema de Sturm para garantizar la unicidad de la solucin real
([Childs 1995], [Kurosch 1987]). El prximo paso es usar Excel.

1. En las celdas A4 y B4 escribimos los valores de
y , respectivamente.
2. En la celda C4 escribimos la frmula que calcular
los puntos medios del intervalo:

3. En la celda D4 escribimos la frmula que calcular
:

4. En la celda E4 escribimos la frmula que calcular
:

5. En la celda F4 escribimos la frmula que calcular
:

6. En la celda G4 escribimos la frmula que calcular
el error

7. En la celda A5 escribimos la frmula que calcular
el nuevo extremo :

8. En la celda B5 escribimos la frmula que calcular
el nuevo extremo :


Y por ltimo, lo nico que debemos hacer es ir generando las aproximaciones, para esto
arrastramos cada columna una a una. El resultado de esto se muestra en la figura 4.


Figura 4: Mtodo de la biseccin:
El mtodo de la biseccin, aunque es conceptualmente claro, tiene inconvenientes
importantes. Es muy lento en su convergencia (es decir, tiene que ser muy grande para
que sea pequeo, por ejemplo, se requiere de iteraciones para obtener un
error absoluto menor a en el ejemplo anterior), adems una buena aproximacin
intermedia puede ser descartada inadvertidamente. Sin embargo, el mtodo tiene la
importante propiedad de que siempre converge a una solucin, adems de que lo nico que
se requiere es que sea continua


| Walter Mora F. | Revista Digital Matemtica, Educacin e
Internet |

1 2 3 4 5 6 7 8 9 10
Mtodo de Newton


Este es uno de los mtodos ms eficientes para aproximar las soluciones de la ecuacin
. El mtodo de Newton empieza con una aproximacin inicial , la siguiente
aproximacin corresponde a la interseccin con el eje de la recta tangente a la grfica
de en . La aproximacin corresponde a la interseccin con el eje de la
tangente a la grfica de en el punto , y as sucesivamente. Este proceso
genera una sucesin , definida por

para .
El algoritmo del mtodo se muestra en la figura 5

Figura 5: Mtodo de Newton

La implementacin de este mtodo, en Excel, es realmente simple. Para esto considere la
mismo ecuacin de antes: y con aproximacin inicial tomenos .

1. En la celda A4 escribimos muestra aproximacin inicial, en este caso,
5.
2. En la celda A5 escribimos la frmula que calcular las siguientes
aproximaciones






3.
4. Por ltimo, para generar las siguientes aproximaciones arrastramos la
celda A5

El resultado de este proceso se muestra en la figura 6. Observe la grfica de la funcin
, las rectas tangentes a en y respectivamente y
las dos aproximaciones generadas por estas aproximaciones.


Figura 6: Mtodo de la Newton aplicado a .
Cuando el mtodo de Newton converge se obtienen los resultados con relativa rapidez, ya
que para races no repetidas este mtodo converge con orden 2, y el error es proporcional al
cuadrado del error anterior, es decir, si el error , el siguiente error es
proporcional a y as sucesivamente. Con lo que podramos decir que en cada
iteracin aproximadamente se duplica el nmero de dgitos correctos.



| Walter Mora F. | Revista Digital Matemtica, Educacin e
Internet |


1 2 3 4 5 6 7 8 9 10

Sin embargo, algunas veces el mtodo de Newton no converge, sino que se encicla. Esto
puede ocurrir, por ejemplo, si no hay raz real, si la raz es un punto de inflexin o si la
aproximacin inicial est muy lejos de la raz buscada y el proceso de aproximacin cae en
un ciclo. Estas situaciones se ilustran en la figura 7a, 7b, 7c.

Figura 7a: Oscilaciones para una funcin sin raz
real.


Figura 7b: Oscilaciones para una funcin con punto de
inflexinl.


Figura 7c: Oscilaciones para una funcin con dos races reales.

En la figura 8 se muestra una situacin en la que no hay convergencia. Se est tratando de
aproximar la solucin de la ecuacin polinomial

con una aproximacin inicial de . Obsrvese que en este caso las aproximaciones van
creciendo y se alejan cada vez ms de la verdadera solucin . Para este ejemplo lo que
sucede es que una de las aproximaciones es solucin de la ecuacin .
Otra de las desventajas potenciales del mtodo de Newton es que requiere de la evaluacin
de la primera derivada de . Para la mayora de los problemas de los textos este
requisito es trivial, pero ste no es el caso en problemas reales donde, por ejemplo, la
funcin podra estar dada en forma tabular.

Figura 8: Situacin donde no hay convergencia, usando Excel.

Con el propsito de evitar esta desventaja, podemos sustituir la derivada por una
interpolacin lineal, es decir, podemos usar el hecho de que

Con lo cual la frmula recursiva del mtodo de Newton se reduce a

para .
Esta pequea variante da origen a un mtodo conocido como el mtodo de la secante, el
cual necesita de dos aproximaciones iniciales. En la figura 9 se muestran los resultados
obtenidos con este mtodo.

Figura 9: Mtodo de la secante.



BISECCION


#include <iostream>
#include <cmath>
using namespace std;
double f(double x);
double biseccion ( double a, double b, double tol, int maxlter);
int main()
{
double a, b, tol, raiz;
int maxlter;
cout<< "por favor digite a: ";
cin>>a;
cout<< "por favor digite b: ";
cin>>b;
cout<< "por favor digite tol: ";
cin>>tol;
cout<< "por favor digite maxlter: ";
cin>>maxlter;
raiz=biseccion(a,b,tol,maxlter);
cout<<"La raiz es: "<< raiz <<endl;
system("pause");
return 0;
}



double f(double x)
{
return x*x*x+4*x*x-10;
}
double biseccion(double a, double b, double tol, int maxlter)
{
double c;
int nolter=0;
do
{
c=(a+b)/2;
if(f(a)*f(c)<0)
{
b=c;
}
else
{
a=c;
}
cout<<nolter<<"\t"<<a<<"\t"<<b<<"\t"<<c<<"\t"<<f(c)<<endl;
nolter++;
}
while((abs(f(c))>tol)&&(nolter<maxlter));
return c;
}
Mtodo de biseccin
De Wikipedia, la enciclopedia libre
Saltar a navegacin, bsqueda


Unas cuantas iteraciones del mtodo de biseccin aplicadas en un intervalo [a
1
;b
1
]. El punto rojo
es la raz de la funcin.
En matemticas, el mtodo de biseccin es un algoritmo de bsqueda de races que trabaja
dividiendo el intervalo a la mitad y seleccionando el subintervalo que tiene la raz.
Contenido
[ocultar]
- 1 Introduccin
- 2 Algoritmo
- 3 Mtodo de biseccin en diferentes lenguajes de Programacin
o 3.1 C
o 3.2 C++
o 3.3 MatLab
o 3.4 Python
o 3.5 SciLab
- 4 Referencia
o 4.1 Bibliografa
[editar] Introduccin
Este es uno de los mtodos ms sencillos y de fcil intuicin para resolver ecuaciones en
una variable. Se basa en el teorema del valor intermedio (TVI), el cual establece que toda
funcin continua f en un intervalo cerrado [a,b] toma todos los valores que se hallan entre
f(a) y f(b). Esto es que todo valor entre f(a) y f(b) es la imagen de al menos un valor en el
intervalo [a,b]. En caso de que f(a) y f(b) tengan signos opuestos, el valor cero sera un
valor intermedio entre f(a) y f(b), por lo que con certeza existe un p en [a,b] que cumple
f(p)=0. De esta forma, se asegura la existencia de al menos una solucin de la ecuacin
f(a)=0.
El mtodo consiste en lo siguiente: de antemano, debe existir seguridad sobre la
continuidad de la funcin f(x) en el intervalo [a,b]. A continuacin se verifica que
. Se calcula el punto medio m del intervalo [a,b] y se evala f(m) si ese valor es
igual a cero, ya hemos encontrado la raz buscada. En caso de que no lo sea, verificamos si
f(m) tiene signo opuesto con f(a) o con f(b). Se redefine el intervalo [a, b] como [a, m] [m,
b] segn se haya determinado en cul de estos intervalos ocurre un cambio de signo. Con
este nuevo intervalo se contina sucesivamente encerrando la solucin en un intervalo cada
vez ms pequeo, hasta alcanzar la precisin deseada. En la siguiente figura se ilustra el
procedimiento descrito.
El mtodo de biseccin es menos eficiente que el mtodo de Newton, pero es mucho ms
seguro para garantizar la convergencia. Si f es una funcin continua en el intervalo [a, b] y
f(a)f(b) < 0, entonces este mtodo converge a la raz de f. De hecho, una cota del error
absoluto es:

en la n-sima iteracin. La biseccin converge linealmente, por lo cual es un poco lento.
Sin embargo, se garantiza la convergencia si f(a) y f(b) tienen distinto signo.
Si existieran ms de una raz en el intervalo entonces el mtodo sigue siendo convergente
pero no resulta tan fcil caracterizar hacia qu raz converge el mtodo.
[editar] Algoritmo
Para aplicar el mtodo consideremos tres sucesiones definidas por las
siguientes relaciones:

Donde los valores iniciales vienen dados por:

Se puede probar que las tres sucesiones convergen al valor de la nica raz del intervalo:



INTERPOLACION Y POLINOMIO DE LAGRANGE
POLINOMIOS DE INTERPOLACIN DE
LAGRANGE

ndice
El polinomio de interpolacin de Lagrange, simplemente es una reformulacin
del polinomio de Newton que evita los clculos de las diferencias divididas. Este
se puede representar concretamente como:


(21)
en donde:


(22)
En donde denota el "producto de".
Por ejemplo, la versin lineal (n = 1) es:


(23)
y la versin de segundo orden es:


(2
4)
al igual que en el mtodo de Newton, la versin de Lagrange tiene un error
aproximado dado por:


(25)
La ecuacin (21) se deriva directemente del polinomio de Newton. Sin embargo,
la razon fundamental de la formulacin de Lagrange se puede comprender
directamente notando que cada trmino Li(X) ser 1 en X=Xi y 0 en todos los
demas puntos.
Por lo tanto, cada producto Li(X) f(Xi) toma un valor de f(Xi) en el punto Xi. Por
consiguiente la sumatoria de todos los productos, dada por la ecuacin (21) es el
nico polinomio de n-simo orden que pasa exactamente por los n+1 puntos.
Ejemplo 3.4
sese un polinomio de interpolacin de Lagrange de primer y segundo orden
para evaluar ln 2 en base a los datos:
i X f(X)
0 1.0 0.000 0000
1 4.0 1.386 2944
2 6.0 1.791 7595
Solucin:
El polinomio de primer orden es:

y, por lo tanto, la aproximacin en X = 2 es

de manera similar, el polinomio de segundo orden se desarrolla como:

Como se expresaba, ambos resultados son similares a los que se obtuvieron
previamente usando la interpolacin polinomial de Newton.
En resumen, para los casos en donde el orden del polinomio se desconozca, el
mtodo de Newton tiene ventajas debido a que profundiza en el comportamiento
de las diferentes frmulas de orden superior. Ademas la aproximacin del error
dada por la ecuacin (20), en general puede integrarse fcilmente en los clculos
de Newton ya que la aproximacin usa una diferencia dividida. De esta forma,
desde el punto de vista de clculo, a menudo, se prefiere el mtodo de Newton.
Cuando se va a llevar a cabo slo una interpolacin, ambos mtodos, el de
Newton y el de Lagrange requieren de un esfuerzo de calculo similar. Sin
embargo, la versin de Lagrange es un poco ms fcil de programar. T ambien
existen casos en donde la forma de Newton es mas susceptible a los errores de
redondeo. Debido a esto y a que no se requiere calcular y almacenar diferencias
divididas, la forma de Lagrange se usa, a menudo, cuando el orden del polinomio
se conoce a priori.

COMENTARIOS ADICIONALES

ndice
Hay dos temas adicionales que se deben de mencionar: La interpolacin con los
datos igualmente espaciados y la Extrapolacin.
Ya que los mtodos de Newton y de Lagrange son compatibles con los datos
espaciados en forma arbitraria, se debe de preguntar por que se aborda el caso de
los datos igualmente espaciados. Antes del advenimiento de las computadoras
digitales, estos mtodos tuvieron gran utilidad en la interpolacin de tablas con
datos igualmente espaciados. De hecho se desarrolla un esquema conocido como
tabla de diferencias divididas para facilitar la implementacin de estas tcnicas.
Sin embargo, y debido a que las frmulas son un subconjunto de los esquemas de
Newton y Lagrange compatibles con la computadora y ya que se dispone de
muchas funciones tabulares como rutinas de biblioteca, la necesidad de puntos
equidistantes se fue perdiendo. En particular, se puede emplear en la derivacin
de frmulas de integracin numrica que emplean comunmente datos
equidistantes.
La extrapolacin es el proceso de calcular un valor de f(X) que cae fuera del
rango de los puntos base conocidos X0, X1, ... , Xn. La interpolacin mas exacta
usualmente se obtiene cuando las incgnitas caen cerca de los puntos base.
Obviamente, esto no sucede cuando las incgnitas caen fuera del rango, y por lo
tanto, el error en la extrapolacin puede ser muy grande. La naturaleza abierta en
los extremos de la extrapolacin representa un paso en la incgnita porque el
proceso extiende la curva ms all de la regin conocida. Como tal, la curva
verdadera diverge fcilemte de la prediccin. Por lo tanto, se debe tener cuidado
extremo en casos donde se deba extrapolar.

Formula de interpolacin de Lagrange

Pueden ajustarse tres o cuatro datos por medio de una curva? Uno de los mtodos
fundamentales para encontrar una funcin que pase a travs de datos es el de usar un
polinomio.

La interpolacin polinomial se puede expresar en varias formas alternativas que pueden
transformarse entre s. Entre stas se encuentran las series de potencias, la interpolacin de
Lagrange y la interpolacin de Newton hacia atrs y hacia delante.
Un polinomio de orden N que pasa a travs de N + 1 puntos es nico. Esto significa que,
independientemente de la frmula de interpolacin, todas las interpolaciones polinomiales que se
ajustan a los mismos datos son matemticamente idnticas.
Suponga que se dan N + 1 puntos como

Xo X1 ... Xn
fo f1 ... fn
Donde X0, X1, . . . son las abscisas de los puntos (puntos de la malla) dados en orden
creciente. Los espacios entre los puntos de la malla son arbitrarios. El polinomio de orden N que
pasa a travs de los N + 1 puntos se puede escribir en una serie de potencias como

g(x) = a0 + a1x + a2x*2 + . . . + aNx*N

Donde los ai son coeficientes. El ajuste de la serie de potencias a los N + 1 puntos dados da
un sistema de ecuaciones lineales:

f0 = a0 + a1xo + a2xo*2 + . . . + aNx0*N

f1 = a0 + a1x1 + a2x1*2 + . . . + aNx1*N
.
.
.
fN = a0 + a1xN + a2xN*2 + . . . + aNxN*N

Aunque los coeficientes ai pueden determinarse resolviendo las ecuaciones simultneas
por medio de un programa computacional, dicho intento no es deseable por dos razones. Primera,
se necesita un programa que resuelva un conjunto de ecuaciones lineales; y segunda, la solucin
de la computadora quiz no sea precisa. (Realmente las potencias de xi en la ecuacin pueden ser
nmeros muy grandes, y si es as, el efecto de los errores por redondeo ser importante.) Por
fortuna, existen mejores mtodos para determinar una interpolacin polinomial sin resolver las
ecuaciones lineales. Entre stos estn la frmula de interpolacin de Lagrange y la frmula de
interpolacin de Newton hacia delante y hacia atrs.
Para presentar la idea bsica que subyace en la frmula de Lagrange, considere el
producto de factores dados por:
V0(x) = (x x1)(x x2) . . . (x xN)

Que se refiere a los N + 1 puntos antes dados antes. La funcin V0 es un polinomio de
orden N de x, y se anula en x = x1, x2, . . ., XN, Si dividimos V0 (x) entre V0 (x0), la funcin
resultante

(x x1)(x x2) . . . (x xN)
V0(x) = (x0 x1)(x0 x2) . . .(x0 xN)

toma el valor de uno para x = x, y de cero para x = x1, x = x2, . . . , x = xN. En forma
anloga, podemos escribir Vi como

(x x1)(x x2) . . . (x xN)
Vi(x) = (xi x0)(xi x1) . . . (xi xN)

donde el numerador no incluye (x xi) denominador no incluye (xi x). La funcin Vi(x)
es un polinomio de orden N y toma el valor de uno en x = xi y de cero en x = xj, j no pertenece
a i. As, si multiplicamos V0 (x), V1 (x), . . . , VN (x) por f0, f1, . . . , fN, respectivamente y las
sumamos, el resultado ser un polinomio de orden a lo ms N e igual a f1 para cada i = 0 hasta i
= N.
La frmula de interpolacin de Lagrange de orden N as obtenida se escribe como
sigue (Conte / de Boor):

(x x1)(x x2) . . . (x xN) f0
g (x) = (x0 x1)(x0 x2) . . . (x0 XN)

+ (x x0)(x x2) . . . (x xN) f1
(x1 x0)(x1 x2) . . . (x1 xN)
.
.
.
+ (x x0)(x x1) . . . (x xN-1) fN...........................Ec 1
(xN x0)(xN x1) . . . (xN xN-1)

La Ec 1 es equivalente a la serie de potencias que se determina resolviendo la ecuacin
lineal. Parece complicado, pero incluso la memorizacin no es difcil si se entiende la estructura.

EJEMPLO DE INTERPOLACIN DE LAGRANGE APLICADO EN LA
INGENIERA QUMICA.

a) a) Las densidades del sodio para tres temperaturas estn dados como sigue:

i
Temperatura
Ti (x)
Densidad
Pi (f)
0 94 C 929 kg/m
3
1 205

902
2 371 860
Escriba la frmula de interpolacin de Lagrange que se ajusta a los tres datos.
b) b) Determine la densidad para T = 251 C utilizando la interpolacin de Lagrange (al
calcular el valor de g (x), no desarrolle la frmula en una serie de potencias).
Solucin.

a) a) Ya que el nmero de datos es tres, el orden de la frmula de Lagrange es N = 2. La
interpolacin es Lagrange queda:

(T 205)(T 371) X (929)
g (T) = (94 205)(94 371)

+ (T 94)(T 371) X (902)
(205 94)(205 371)

+ (T 94)(T 205) X (860)
(371 94)(371 205)
b) b) Sustituyendo T = 251 en la ecuacin aterior, obtenemos
g(251) = 890.5 kg/ m
3


(Comentarios: al evaluar g (x) por un valor dado x, no se debe desarrollar la frmula
de interpolacin de Lagramge en una serie de potencias, porqu no slo es molesto
sino adems se incrementa la posibilidad de cometer errores humanos.)




Eplicacion 2 del mtodo
POLINOMIO DE INTERPOLACIN DE
LAGRANGE

Tenemos los datos :



El polinomio de interpolacin de Lagrange se plantea como sigue:



Donde los polinomios se llaman los polinomios de Lagrange, correspondientes a
la tabla de datos.

Como se debe satisfacer que , esto se cumple si y
para toda .
Como se debe satisfacer que , esto se cumple si y para
toda .
Y as sucesivamente, veremos finalmente que la condicin se cumple si
y para toda .
Esto nos sugiere como plantear los polinomios de Lagrange. Para ser ms claros,
analicemos detenidamente el polinomio . De acuerdo al anlisis anterior vemos
que deben cumplirse las siguientes condiciones para :
y , para toda
Por lo tanto, planteamos como sigue:

Con esto se cumple la segunda condicin sobre . La constante c se
determinar para hacer que se cumpla la primera condicin:




) ( ) ( ) ( ) (
1 1 0 0
x l y x l y x l y x P
n n
+ + + =
) (x l
i
0 0
) ( y x P = 1 ) (
0 0
= x l 0 ) (
0
= x l
i
0 = i
1 1
) ( y x P = 1 ) (
1 1
= x l
0 ) (
1
= x l
i
1 = i
( )
n n n
y x P =
( ) 1 =
n n
x l ( ) 0 =
n i
x l
n i =
) (
0
x l
) (
0
x l
1 ) (
0 0
= x l 0 ) (
0
=
j
x l
0 = j
) (
0
x l
( ) ( )( ) ( )
n o
x x x x x x c x l =
2 1
) (
0
x l
( ) ( )( ) ( )
n
x x x x x x c x l = =
0 2 0 1 0 0 0
1 1
( )( ) ( )
n
x x x x x x
c

=
0 2 0 1 0
1

Por lo tanto el polinomio queda definido como:





Anlogamente se puede deducir que:

, para
y formula expresada mas fcilmente es la siguiente:









EJEMPLO:
Calcular el polinomio de Lagrange usando los siguientes datos:




) (
0
x l
( )
( )( ) ( )
( )( ) ( )
n
n
x x x x x x
x x x x x x
x l


=
0 2 0 1 0
2 1
0

( )
[
[
=
=

=
j i
i j
j i
i
j
x x
x x
x l
) (
) (
n j , , 1 =

[

=
=
=

=
=
n
i j
j j i
j
n
i
n
x x
x x
x Li
xi f x Li x P
0
0
) (
) (
) (
)) ( ( * ) ( ) (





Pn(x)=(L
0
(x)*1)+(L
1
(x)*-1)+(L
2
(x)*3)

L
0=

L
1=

L
2=

L
3=

L
0= =

L
1= =

|
|
.
|

\
|
(







+
+
1 *
4 2
4
*
2 2
2
*
0 2
0
*
2 2
2 x x x x
|
|
.
|

\
|

(

+
+
1 *
4 0
4
*
2 0
2
*
0 0
0
*
2 0
2 x x x x
|
|
.
|

\
|
(

+
+
3 *
4 2
4
*
2 2
2
*
0 2
0
*
2 2
2 x x x x
|
|
.
|

\
|

(

+
+
2 *
4 4
4
*
2 4
2
*
0 4
0
*
2 4
2 x x x x
|
|
.
|

\
|
(

1 *
6
4
*
4
2
*
2
0 x x x
48
8 6
2 3
x x x +

|
|
.
|

\
|

(

+
1 *
4
4
*
2
2
*
2
2 x x x
(

|
|
.
|

\
| +

16
16 4 4
2 3
x x x
i 0 1 2 3
f(x
i
) 1 -1 3 -2
x -2 0 2 4
L
2= =

L
3= =


P
4
(x)=

P
4
(x)=

P
4
(x)=

P
4
(x)=







# include <stdio.h>
|
|
.
|

\
|
(

+
3 *
2
4
*
2
0
*
4
2 x x x
(

|
|
.
|

\
|

16
24 6 3
2 3
x x x
|
|
.
|

\
|

(

+
2 *
2
2
*
4
0
*
6
2 x x x
(

|
|
.
|

\
| +
24
4
3
x x
24
4
16
24 6 3
16
16 4 4
48
8 6
3 2 3 2 3 2 3
x x x x x x x x x x x +

| | ) 4 ( ) 24 6 3 ( ) 16 4 4 ( ) 8 6 (
48
7
3 2 3 2 3 2 3
x x x x x x x x x x x + + +

| | x x x x x x x x x x x 4 24 6 3 16 4 4 8 6
48
7
3 2 3 2 3 2 3
+ + + + +
( ) 16 16 16 6
48
7
2 3
+ + x x x
P
4
(x)=

3333 . 2 3333 . 2 3333 . 2 875 . 0
2 3
+ x x x
# include <conio.h>
# include <graphics.h>
# include <malloc.h>
# include <stdio.h>
void lagranja(double x, double X[], double y[], int Lit)
{

double r=0, num=1, den=1;
for(int i=0; i<Lit;i++){ //para el total de polinomios
for(int j=0; j<Lit;j++){ //para cada polinomio
if (i!=j){ num*=(x - X[j]); den*=(X[i] - X[j] ); }
}
num*=y[i];
printf("Interacion %d valor %lf\n", i, num/den);
getch();
r+=num/den;
num=den=1;
}
printf("\nEl resultado es: %lf", r);
}

void main()
{
int m, modo=DETECT, medio;
double *X,*Y,x;
clrscr();
printf("cuantas entradas tendra la tabla?\n\t\t");
scanf("%d",&m);
X=(double*)malloc(sizeof(double)*m);
printf("Ingresa la tabla los valores de X:\n");
for(int i=0; i<m; i++) scanf("%lf", &X[i]);
printf("\nIngresa la tabla los valores de Y:\n");
for(i=0; i<m; i++) scanf("%lf", &Y[i]);
printf("Escribe el valor X para el cual se encontrara el valor de Y\n");
scanf("%lf",&x);
lagranja(x, X, Y, m);
getch();
}

También podría gustarte