Hola a todos, bueno ya estamos de nuevo aquí para realizar nuestro esperado comentario sobre la Práctica-8, que espero que os sirva de ayuda.
Esta práctica se divide en tres ejercicios en el que se ha asignado un tiempo “orientativo” para cada uno…(je,je), vamos al grano.
Ejercicio_1.
Nos piden utilizar una tabla HasthTable para introducir unos datos ( trucos) y poder sacarlos por pantalla, nos dice que debe poder almacenar hasta diez, en nuestro método podemos introducir todos los trucos que queramos, sin límite, a continuación mostramos nuestro código, que permite introducir todos los trucos que deseemos y nos imprimirá en pantalla el truco ( sin límite “memoria dinámica”).
public static void main (String args[]) {
int puntero=0;
int tamaño = ( (args.length) /2);
// Insertamos los valores en la colección.
for (int i=0; i<tamaño; i++) {
String clave = (String) args [puntero];
String valor = (String) args [puntero+1];
ht.put (clave,valor);
// imprimimos los valores
String D = (String) ht.get (clave);
System.out.println (D);
puntero +=2;
}
}
Podríamos usar otras estructuras de datos como la clases Vector, Stack; pero HasthTable tiene una gran ventaja y es la posibilidad de acceder a un dato concreto a través de su clave sin necesidad de tener que recorrer toda la estructura ( o al menos para nosotros este recorrido está oculto).
Ejercicio_2
El ejercicio 2 no merece más comentario, analizamos el código de cada método que usa recursividad intentando averiguar que es lo que va a hacer, si alguien tiene algún problema con alguno en concreto que nos lo diga y lo intentamos explicar.
Ejercicio_3
Este ejercicio está muy chulo en nuestro método, si completa una fila, escribiría “Línea completa”, si encuentra una celda sin pintar escribiría “línea incompleta” y pasaría a la siguiente fila, (no seguiría comprobando las siguientes celdas de la fila); al llegar a la última fila vuelve a empezar por el principio, claro, para que funcione deberíamos tener el array pintado, pero creo que funcionaría, haber si el profe le da un vistazo y nos da su opinión (seguro que se puede hacer mucho mejor)…..y para muestra un botón.
char tablero [][]=new char[10][7];
public void recorrerColumna (int a,int b){
if (a<10){
if (tablero[a][b]!= null && b<7 ){
System.out.print (“0″);
if (b==6){
System.out.print (” Linea completa \n”);
recorrerColumna (a+1,0);
}
else
recorrerColumna (a,b+1);
}
else{
System.out.print (” Linea incompleta \n”);
recorrerColumna (a+1,0);
}
}
else
recorrerColumna (0,0);
Abril 22, 2008 a las 9:16 am
Como que “creo que funcionaría”, “creo que funcionaría”… ¡Pintad el array y probadlo ya de ya! (Y así os evitáis tener que depender de los comentarios del profe, digo…)