3ra Evaluación II Término 2010-2011, Febrero 15, 2011 /ICM00794
Tema 3. (30 puntos). Un rompecabezas numérico se compone de fichas marcadas del 1 al 8 y colocadas aleatoriamente en un tablero de 3×3. Para la solución, se debe ordenar las fichas, dejando vacía la esquina inferior derecha, siguiendo las siguientes reglas:
- En cada turno, el programa debe permitir al usuario mover una ficha a la casilla vacía si esta se encuentra en la misma fila o columna.
- El juego se repite hasta formar la solución, mostrando la cantidad de turnos utilizados.
Realice un programa que simule el juego de rompecabezas.
>> resolver ¿Tamaño del tablero?: 3 Turno: 1 8 2 6 5 4 0 1 7 3 ¿Ficha a mover?:5 Turno: 2 8 2 6 0 4 5 1 7 3 ¿Ficha a mover?:8 |
Turno: 3 0 2 6 8 4 5 1 7 3 ¿Ficha a mover?:1 Turno: 4 1 2 6 8 4 5 0 7 3 ¿Ficha a mover?: … |
Nota:
- Se recomienda utilizar una matriz solución para validar si se ha resuelto el rompecabezas.
- Para generar el tablero del juego, puede hace uso de la función desordena(n) del tema anterior
- Para validar si se puede mover una ficha, puede utilizar la función ubica(matriz,k) del tema anterior.
Rúbrica: Generación de rompecabezas y solución (5 puntos), control de turnos (5 puntos), validación de movimiento de ficha (10 puntos). Validación de solución del juego (10 puntos)