Proyecto 1 - Clave Secreta¶
El objetivo de este proyecto es crear un programa que permita jugar a un juego donde deben descubrir una clave secreta. Similar al popular juego wordle, simplificado utilizando números en lugar de letras.
El juego consiste en que la aplicación genera un número de 5 dígitos, sin números repetidos, y el jugador tiene que adivinarlo.
Para ello, cada vez que el jugador propone un número, la aplicación le indica cuántas cifras de ese número son correctas y están en la posición correcta (son aciertos) y cuántas cifras son correctas pero están en la posición incorrecta (son coincidencias) y cuantas cifras son incorrectas (son errores).
Por ejemplo:
- Si el número secreto es
10345 - El jugador propone el número
12357 - La aplicación indicará que los números en la 1ª y 3ª posición son aciertos, por ejemplo cambiando el color a verde.
- La aplicación indicará que el número en la 4ª posición es una coincidencia, por ejemplo cambiando el color a amarillo.
-
La aplicación indicará que el número en la 2ª y 5ª posición son errores, por ejemplo cambiando el color a rojo.
- 12357
Condición de victoria: El juego termina cuando el jugador acierta el número secreto. Condición de derrota: El juego termina cuando el jugador ha realizado 6 intentos sin haber acertado el número secreto.
Requisitos¶
- La aplicación debe estar bien estructurada en archivos HTML, CSS y JS.
- El código debe estar estructurado en funciones con comentarios que expliquen brevemente su propósito.
- El programa debe generar un número secreto de 5 cifras, sin cifras repetidas.
- Presentar el tablero de juego en una tabla de 6 filas y 5 columnas.
- El jugador debe poder introducir un número de 5 cifras mediante botones con eventos asociados.
- Mostrar los intentos restantes (6 intentos como máximo).
- Indicar el número de aciertos, coincidencias y errores de cada intento, cambiando el color del número según corresponda.
- Mostrar un mensaje de victoria o derrota cuando se cumplan las condiciones de victoria o derrota.
- Mostrar el número secreto cuando se cumplan las condiciones de victoria o derrota.
- Incluir un botón que permita reiniciar el juego, previa confirmación del usuario. Que genera un nuevo número secreto, limpia la tabla y reinicia los intentos.
Opcional¶
- Añadir eventos para que también funcione mediante teclado.
- Crea eventos personalizados para las condiciones de victoria y derrota.
- Permitir al jugador elegir el número de intentos.
- Permitir al jugador elegir el número de cifras del número secreto.