Durante el fin de semana pasado hice algo que hacía muchísimo tiempo que no hacía: desarrollar por gusto. Durante estos últimos años, he dejado de hacer cosas por el simple gusto de hacerlas, sino por dinero. Quizás por ello, durante este fin de semana haya programado otra implementación más del archiconocido juego de las torres de Hanoi.
Si alguién tiene interés de echarle un vistazo, puede encontrarlo en Codeplex: http://www.codeplex.com/Hanoi.
Lo que diferencia esta implementación del resto de implementaciones conocidas es que esta permite:
- Jugar a contrareloj. Puedes establecer el tiempo máximo que debe durar la partida, si no lo consigues en el tiempo señalado, habrás perdido.
- Nº de movimientos limitados. El número de movimientos en el que se ha de conseguir pasar todos los discos se puede cambiar con los siguientes:
- Número exacto. 2^numeroDeDiscos – 1
- Más el 25%.
- Más el 50%.
- …
- Orden de las columnas. Puedes cambiar el orden de columnas. Clasicamente, hay que pasar los discos de la columna 1 a la 3. Sin embargo podrías considerar nuevas opciones de juego pasando los discos de las columna 2 a la 1.
- Columnas coloreadas. Para facilitar su utilización
- Perfiles de juego. Aleatorio, Personalizado, Clasico,… Para futuras revisiones, se podrán almacenar los perfiles del usuario.
La verdad es que si eres muy Geek, es altamente recomendable que compiles e instales en tu Windows Mobile SmartPhone.
A día de hoy, se puede utilizar con Windows Mobile 2003 o superior (y el .NET Compact Framework 1.1).
Si dispongo de algo de tiempo y ganas, sacaré una versión para PocketPC en la que se puedan arrastrar y colocar los discos. Así como una versión en Java para teléfonos móviles.
Happy hacking!

Hola Rafa.
Muy buenos tus post de tu blog, yo tambien ya me estaba olvidando de algunas buenas practicas de programacion… gracias por hacermelas recordar.
Saludos desde Tingo María – Peru.