Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: clementine en 15 de Mayo 2013, 04:19

Título: Duda sobre arrays multidimensionales java
Publicado por: clementine en 15 de Mayo 2013, 04:19
Hola cómo están, espero que bien...
Me gustaría saber cómo ingreso datos a un array multidimensional, por ejemplo en un array tridimensional ¿cómo lo declaro en el algoritmo, ingreso datos y los muestro?

Gracias de antemano.
Título: Re:Duda sobre arrays multidimensionales
Publicado por: ledesma90 en 15 de Mayo 2013, 06:05
Código: [Seleccionar]
package newpackage;

/**
 *
 * @author jose
 */
public class NewClass {
    public static void main(String [] args)
    {
        int j,i;
    int a[][]=new int[5][5];
    a[0][0]=1;
    a[0][1]=2;
    a[0][2]=3;
    a[0][3]=4;
    a[0][4]=5;
    a[1][0]=1;
    a[1][1]=2;
    a[1][2]=3;
    a[1][3]=4;
    a[1][4]=5;
    a[2][0]=1;
    a[2][1]=2;
    a[2][2]=3;
    a[2][3]=4;
    a[2][4]=5;
    a[3][0]=1;
    a[3][1]=2;
    a[3][2]=3;
    a[3][3]=4;
    a[3][4]=5;
    a[4][0]=1;
    a[4][1]=2;
    a[4][2]=3;
    a[4][3]=4;
    a[4][4]=5;
   
        for(i=0;i<a.length;i++)
        {
            for(j=0;j<a.length;j++)
            {
                System.out.print(a[i][j]+" ");
       
            }
            System.out.print("\n");
        }
    }
}
Título: Re:Duda sobre arrays multidimensionales
Publicado por: ledesma90 en 15 de Mayo 2013, 06:15
este es es con tres dimensiones..... es como que tenga fondo

package newpackage;

/**
 *
 * @author jose
 */
public class NewClass {
    public static void main(String [] args)
    {
        int j,i,k;
        int p=0;
    int a[][][]=new int[5][5][5];
   
    for(k=0;k<a.length;k++)
    {
        for(i=0;i<a.length;i++)
        {
            for(j=0;j<a.length;j++)
            {
                a[k][j]=p++;
       
            }
        }
    }
   
   
   
   
   
    for(k=0;k<a.length;k++)
    {
        for(i=0;i<a.length;i++)
        {
            for(j=0;j<a.length;j++)
            {
                System.out.print(a[k][j]+" ");
       
            }
            System.out.print("\n");
        }
        System.out.print("\n");
    }
   
    }
}
Título: Re:Duda sobre arrays multidimensionales
Publicado por: César Krall en 15 de Mayo 2013, 18:28
Creo que al pegar el código no ha quedado bien ya que algunas etiquetas con corchetes no están permitidas en el texto, para incluir código usa el botón # del editor y pon el código dentro de las etiquetas.

Creo que te has respondido tú mismo no? Para declarar un array de tres dimensiones usas algo como esto:

int a[][][]=new int[5][5][5];

Luego el uso es como el array de dos dimensiones que has puesto antes. Saludos

Título: Re:Duda sobre arrays multidimensionales
Publicado por: ledesma90 en 15 de Mayo 2013, 21:43
hola Cesár, en realidad yo (ledesma90) le respondí a clementine, pero seguro busco en otro lado su respuesta jajaja, Cesár me gustaria mucho si me podrias ayudar en un codigo
https://www.aprenderaprogramar.com/foros/index.php?topic=550.0

claro si es posible
muchas gracias
Título: Re:Duda sobre arrays multidimensionales
Publicado por: César Krall en 15 de Mayo 2013, 23:11
Pues vaya despiste, como habías puesto varios mensajes me pensé que te habías respondido a tí mismo  ;D ahora ya lo he entendido  :-X

Título: Re:Duda sobre arrays multidimensionales
Publicado por: clementine en 16 de Mayo 2013, 07:48
Gracias ledesma90 por la ayuda,
pero al copiarlo al netbeans me sale error en la línea de a[k][j]=p++; dice que son tipos incompatibles, que el requerido es int[]  y el tipo encontrado es int, no sé por qué sale eso...
Título: Re:Duda sobre arrays multidimensionales
Publicado por: ledesma90 en 16 de Mayo 2013, 19:44
Código: [Seleccionar]
public class NewClass {
    public static void main(String [] args)
    {
        int j,i,k;
        int p=0;
    int a[][][]=new int[5][5][5];
   
    for(k=0;k<a.length;k++)
    {
        for(i=0;i<a.length;i++)
        {
            for(j=0;j<a.length;j++)
            {
                a[k][i][j]=p++;
       
            }
        }
    }
   
   
   
   
   
    for(k=0;k<a.length;k++)
    {
        for(i=0;i<a.length;i++)
        {
            for(j=0;j<a.length;j++)
            {
                System.out.print(a[k][i][j]+" ");
       
            }
            System.out.print("\n");
        }
        System.out.print("\n");
    }
   
    }
}
Título: Re:Duda sobre arrays multidimensionales
Publicado por: ledesma90 en 16 de Mayo 2013, 19:50
Gracias ledesma90 por la ayuda,
pero al copiarlo al netbeans me sale error en la línea de a[k][j]=p++; dice que son tipos incompatibles, que el requerido es int[]  y el tipo encontrado es int, no sé por qué sale eso...

sí amigo, es que para pasar código es necesario meterlo en "#", es lo que menciono cesar,

explicación
a[k][j]=p++; mal
como esta declarado "a[][][]"
obligatoriamente tenia que ser
Código: [Seleccionar]
"a[k][i][j];"bien
tambien habia que modificar el System.ou.print()
Código: [Seleccionar]
System.out.print(a[k][i][j]+" ");comentario: cada "[]" representa una dimensión, mientras mas "[]" más dimensiones
saludos amigo
Título: Re:Duda sobre arrays multidimensionales
Publicado por: clementine en 23 de Mayo 2013, 06:33
Vale, entendido, muchas gracias, me fue de mucha ayuda ledesma90.
Saludos.