Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: @mayakoski en 29 de Noviembre 2019, 04:38

Título: Arreglos multidimensionales en Java ejercicios resueltos 2 dimensiones CU00905C
Publicado por: @mayakoski en 29 de Noviembre 2019, 04:38
Dejo mi solución propuesta para el ejercicio CU00905C del tutorial de programación Java avanzado de aprenderaprogramar

Código: [Seleccionar]
import java.util.Scanner;

public class ejercicioCU00905C {
public static void main(String[] args) {
String[][] paisCiudad = new String[4][4];
Scanner entradaTeclado = new Scanner(System.in);

for (int i = 0; i < paisCiudad.length; i++) {
System.out.print("Ingrese el nombre de un país: ");
for (int j = 1; j < paisCiudad[i].length; j++) {
if (j==1) {
paisCiudad[i][j-1] = entradaTeclado.nextLine();
}
System.out.print("Ingrese una ciudad de " + paisCiudad[i][0] +": ");
paisCiudad[i][j] = entradaTeclado.nextLine();
}
}

for (int i = 0; i < paisCiudad.length; i++) {
System.out.print("País: ");
for (int j = 0; j < paisCiudad[0].length; j++) {
if(j==0) {
System.out.print(paisCiudad[i][j] + " Ciudades: ");
}else {
System.out.print(paisCiudad[i][j] + " ");
}
}
System.out.println();
}
}
}
Título: Re:Arreglos multidimensionales en Java ejercicios resueltos 2 dimensiones CU00905C
Publicado por: Ogramar en 10 de Agosto 2020, 18:53
Buenas, para quien revise este ejercicio funciona correctamente. Hay una cuestión que no me parece del todo correcta, pero que también está relacionada con que habría que mejorar el enunciado para evitar que se haga así. Lo que no me parece correcto es almacenar en el mismo array como elemento [ i ][0] el nombre del país, por ejemplo Argentina, y que luego [ i ][1], [ i ][2], [ i ][3] sean ciudades de argentina. ¿Por qué? Porque lo más lógico es que todos los elementos de un array sean de la misma naturaleza, es decir, que sean o bien países, o bien ciudades, pero no algunos elementos de un tipo y otros de otro.
Esto podría solucionarse creando un array de países, como pais[0], pais[1], pais[2], pais[3] y luego el array de ciudades ciudad[0][0], ciudad[0][1], ciudad[0][2] tendría las tres ciudades del país cero.

En este caso declararíamos el array de pais por un lado y String[][] paisCiudad = new String[4][3]; teniendo la primera dimensión 4 elementos (cuatro países) y la segunda dimensión 3 elementos (3 ciudades para cada país).

Salu2
Título: Re:Arreglos multidimensionales en Java ejercicios resueltos 2 dimensiones CU00905C
Publicado por: @mayakoski en 11 de Agosto 2020, 20:52
Gracias x darte el tiempo de revisar mi respuesta, si me parece correcta la observación y creo que facilitaría el manejo del arreglo, y como lo mencionas lo que pretendí es cumplir lo requerido en el planteamiento del problema

saludos