Saludos
Estoy tratando de implementar el algoritmo de Tabla_diferencias_divididas para luego implementar interpolacion de newton, este es mi algoritmo:
Tabla_diferencias_divididas ()
1.- Hacer m=n-1
2.- Hacer i=0
3.- Mientras i<=m-1 hacer
4.- Hacer T(i,0) = (y(i+i) - y(i))/(x(i+1]) - x(i));
5.- Hacer i=i+1
6.- Hacer j=1
7.- Mientras j<=m-1 hacer
8.- Hacer i=j
9.- Mientras i<=m-1 hacer
10.- Hacer T(i,j)= (T(i, j-1) - T(i-1, j-1))/(x(i+1)-x(i-j));
11.- Hacer i=i+1
12.- Hacer j=j+1
Este es mi codigo:
donde n = un numero finito de puntos
x[] y y[] son las coordenadas y xvar es el valor a interpolar
me marca un ArrayIndexOutOfBoundsException en el paso 4 de mi algoritmo que vendria siendo donde comenté con //4: en el código
!!Alguien sabe porque me está pasando eso?
public static void newton(int n, double x[], double y[], double xvar){
int m = n-1;
int i = 0;
T = new double[n][n];
while(i<=m-1){
//4: T[i][0] = (y[i+i] - y[i])/(x[i+1] - x[i]);
i+=1;
}
int j = 1;
while(j<=m-1){
i = j;
while(j<=m-1){
i = j;
i+=1;
T[i][j] = (T[i][j-1] - T[i-1][j-1])/(x[i+1]-x[i-j]);
System.out.println(T[i][j]);
}
j+=1;
}
}