elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Fallo en inicializar matriz
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Fallo en inicializar matriz  (Leído 1,576 veces)
BJM

Desconectado Desconectado

Mensajes: 41


Ver Perfil
Fallo en inicializar matriz
« en: 5 Junio 2014, 16:57 pm »

Código
  1.  
  2. package matriz;
  3.  
  4. import java.util.Scanner;
  5.  
  6.  
  7. public class Matriz {
  8.  
  9.    public static void main(String[] args) {
  10.  
  11. Scanner x = new Scanner (System.in);
  12.    int m = 0,n = 0, i=0,j=0,a=0,b=0, c=0, d=0;
  13.    int multi;
  14.    int M[][] = new int[m][n];
  15.     int N[][] = new int[a][b];
  16.    System.out.println(" DIMENSIONES DE LA MATRIZ 1 ");
  17.    System.out.println(" FILAS M[*][]: ");
  18.    m = x.nextInt();
  19.    System.out.println(" COLUMNAS M[][*]: ");
  20.    n = x.nextInt();
  21.     System.out.println(" LLENADO DE LA MATRIZ 1: ");
  22.    for (i=0 ; i<m;i++){
  23.    for(j=0;j<n;j++){
  24.    System.out.print(" Valor ["+(i+1)+"]["+(j+1)+"]: ");
  25.        M[i][j]= x.nextInt();
  26.    }
  27.    }
  28.    System.out.println(" DIMENSIONES DE LA MATRIZ 2 ");
  29.    System.out.println(" FILAS M[*][]: ");
  30.    a = x.nextInt();
  31.    System.out.println(" COLUMNAS M[][*]: ");
  32.    b = x.nextInt();
  33.    System.out.println(" LLENADO DE LA MATRIZ 2: ");
  34.    for (c=0 ; c<a;c++){
  35.    for(d=0;d<b;d++){
  36.    System.out.println(" Valor ["+(c+1)+"]["+(d+1)+"]: ");
  37.        N[c][d]= x.nextInt();
  38.    }
  39.    }
  40.    multi =M[i][j] * N[c][d];
  41.    System.out.println(" Multiplicacion de las matrices:  "+multi);
  42.  
  43.    }
  44. }
  45.  

En esta linea  M[j]= x.nextInt(); Netbeans me muestra el siguiente mensaje:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
 Valor [1][1]:    at matriz.Matriz.main(Matriz.java:25)
Java Result: 1


En línea

gordo23

Desconectado Desconectado

Mensajes: 38


Ver Perfil
Re: Fallo en inicializar matriz
« Respuesta #1 en: 5 Junio 2014, 20:36 pm »

Ese error significa que estás intentando entrar a un indice que no se encuentra en la matriz, por ejemplo, si la matriz tiene tamaño [1][1] y vos querés entrar al [2][2], netbeans te larga ese error.

Ahora pasemos a porque te da ese error:

Si te fijas bien, inicializas las variables "m" y "n" en la linea 12, luego creas la matriz en la linea 14 con los valores que tienen "m" y "n" hasta el momento, es decir, 0 para "m" y 0 para "n".

Luego le pedis al usuario que ingrese el tamaño de la matriz, por lo que cambias a "m" y "n" a valores como 5 y 4.

Y por último, cuando recorres la matriz en los ciclos for de la linea 22 y 23, estas comparando la variable "i" con la variable "m", que tiene valor 5, muy diferente al tamaño real de la matriz que es 0. ¿me explico?

Por lo que, lo único que tenés que hacer es crear las matrices LUEGO de pedir los datos al usuario.


Si no entendiste avisame e intento explicarlo de otra forma. Saludos y suerte.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Inicializar matriz? « 1 2 »
Java
monsefoster 10 8,353 Último mensaje 18 Noviembre 2009, 06:06 am
por juancho77
Declarar e inicializar matriz de objetos
Java
alzehimer_cerebral 1 5,145 Último mensaje 17 Noviembre 2009, 19:07 pm
por Leyer
Dudita: Inicializar matriz desde función sin punteros, si es posible.
Programación C/C++
leosansan 2 2,039 Último mensaje 23 Diciembre 2013, 18:47 pm
por leosansan
Inicializar una matriz
Programación C/C++
JonaLamper 2 1,584 Último mensaje 7 Marzo 2016, 07:04 am
por furciorifa
como inicializar una matriz char**
Programación C/C++
sebapoli00 5 2,011 Último mensaje 3 Abril 2019, 17:44 pm
por K-YreX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines