El juego del ahorcado consiste en tomar una palabra al azar y darle al jugador la posibilidad de que adivine letras hasta completar la palabra. Las reglas son las siguientes:
- El jugador tiene 6 intentos para arriesgar letras.
- Por cada letra incorrecta, se resta un intento.
- Cuando el jugador se queda sin intentos, pierde. Si adivina todas las letras, gana.
Entonces, nuestra implementación del juego del ahorcado debería funcionar de la siguiente manera:
- Al comenzar el juego, se deberá solicitar al jugador su nombre, el cual obviamente no debe ser vacío. Si fuera así, se debe mostrar un mensaje de error y volver a solicitar el nombre.
- A continuación, la aplicación deberá seleccionar de forma aleatoria, dentro de un diccionario de palabras predefinido, la palabra que el jugador deberá adivinar.
- Luego se deberá mostrar por consola el estado inicial del juego, que básicamente consiste en una horca, una serie de guiones que representan la cantidad de letras de la palabra a adivinar y las letras que ya hayan sido intentadas por el jugador, que obviamente será ninguna al principio del juego.
- Entonces, se deberá pedir al jugador que adivine una letra y la escriba por consola. Obviamente el caracter introducido debe ser una letra válida, sin importar si es mayúscula o minúscula:
- Si el caracter introducido es inválido, se deberá mostrar un mensaje de error, y se deberá volver a solicitar una letra al jugador.
- Si el jugador ha introducido una letra válida pero no aparece en la palabra, pierde un intento, se muestra un mensaje adecuado por consola y se actualiza el estado del juego, añadiendo la letra recientemente intentada por el jugador a la lista de intentos, y dibujando la cabeza del ahorcado. Por cierto, todas las siguientes veces que el jugador se equivoque de letra se irá mostrando las siguientes partes del cuerpo en orden: el tronco, brazo derecho, brazo izquierdo, pierna derecha y pierna izquierda del ahorcado.
- Si el usuario ha introducido una letra válida y ésta aparece en la palabra, se muestra un mensaje adecuado por consola y se actualiza el estado del juego, añadiendo la letra recientemente intentada por el usuario a la lista de intentos, y descubriendo en la palabra oculta los lugares donde aparece la letra adivinada.
- El paso anterior se repite hasta que el usuario adivine la palabra completa o se quede sin intentos.
- Si el jugador gana, se muestra un mensaje de felicitación.
- Si el jugador pierde, se muestra un mensaje indicando cuál era la palabra a adivinar.