Hola estoy tratando de hacer una multiplicación con arreglos, es decir como si la estuviese haciendo a papel si entienden ?
miren este es el método que tengo, pero por algún motivo me sale un error, no se si mi lógica esta mal o es algún pequeño error que no he visto.
este método recive dos arreglos, que son los que vamos a multiplicar, y me retorna otro arreglo con los dígitos del resultado de multiplicar los números dentro de los dos arreglos que recivimos como parámetro
Código Javascript
:
Ver originalpublic long[] multiplicarArrays(long[] arreglo1, long[] arreglo2){
long Det=0; long multiplicado;
long arrayRes[] = new long[20];
int ayudante=1;
for(int i=arrayRes.length-1; i>0; i--){
int k=arrayRes.length-ayudante;
for(int j=arrayRes.length-1; j>0 || k>=0; j--){
multiplicado= arreglo1[j]*arreglo2[i];
if(multiplicado>9){
multiplicado%=10;
for(; multiplicado>0; multiplicado/=10){
Det=multiplicado%10;
i--;
}
arrayRes[k-1]=Det;
}
arrayRes[k]+=multiplicado;
if(arrayRes[k]>9 && k!=0){
arrayRes[k]%=10;
arrayRes[k-1]=1;
}
k--;
}
ayudante++;
}
return arrayRes;
}
y lo ejecuto pero me sale este error
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: -1
Ayudenme porfavor que estoy haciendo mal?
o como lo arían ustedes?
el error según el netbeans está en la linea 19 del método, y no comprendo porque sale eso, ayuda!!!! =(