Objetivos Generales:
Poner en Práctica los conocimientos adquiridos en clases
Evaluar la iniciativa para la resolución de problemas
Dominar el uso básico de la herramienta de desarrollo
Evaluar documentación interna del código
Objetivos Específicos:
Practicar los conocimientos de sentencias de control y de repetición
Utilizar números aleatorios, enumerados, constantes, validaciones, funciones, procedimientos y arreglos en una dimensión.
Evaluación del Proyecto
Se evaluará el proyecto en base a los siguientes aspectos:
Documentación del código: El programa fuente deberá estar correctamente documentado; cabe indicar que el peso de la evaluación de este punto está en la calidad de los comentarios y no en la cantidad.
Cualquier consideración adicional a lo establecido como parte del proyecto deberá estar adecuadamente documentada en el código.
Estructuración del código: Se calificará la utilización adecuada de instrucciones de control, tipos de datos enumerados, constantes, nombres de variables, validaciones en el procesamiento del sistema así como en las entradas del mismo, indentación del código para facilitar la lectura, declaración de variables locales al inicio del programa o al inicio de las funciones (según corresponda), entre otros aspectos indicados durante las clases.
Aplicación del paradigma “Dividir y Conquistar”: Se calificará la adecuada utilización de funciones así como su declaración e implementación.
Completitud: El programa deberá estar totalmente terminado para ser evaluado.
Entrega a tiempo: El código fuente del programa deberá ser entregado en un archivo .zip a través del METIS hasta la fecha y hora máxima de entrega. Este archivo deberá incluir TODOS los archivos que se encuentren dentro de la carpeta del proyecto excepto la carpeta DEBUG.
o Fecha de Entrega:
o hora de entrega:
EI: juntando mensajes.Sopa de números V2.0
Descripción
Se le ha solicitado que implemente una nueva versión del juego de la Sopa de Números v1.0. En esta nueva versión del juego, al menú principal de la versión anterior se le agregaran las siguientes opciones:
Cargar juego
Mejores puntajes
Reglas del juego
El juego consta de un tablero que está compuesto de 15 filas y 15 columnas (casillas).
A continuación, se definen las reglas para generar el ambiente de juego:
Se generarán 7 números aleatorio de 3 ó 4.
La distribución en la cual será ubicado un número es aleatoria: vertical, horizontal, diagonal.
Cada cifra de un número se ubica en una casilla y las cifras del número se hallan en casillas contiguas dependiendo de la distribución que le corresponda (vertical, horizontal o diagonal).
La posición a partir de la cual se guarda cada uno de los dígitos del número generado deberá ser aleatoria:
o En caso de una distribución vertical se genera la columna y la fila a partir de la cual se ubicará el número así como el sentido en que se leerá.
o Si se trata de una distribución horizontal se genera la fila, la columna y el sentido de lectura.
o Si el tipo de distribución es diagonal, se escogerá aleatoriamente en cuál de las dos diagonales se ubicará el número al igual que la fila, la columna y el sentido en el que el número será situado en el tablero.
Las casillas que no contienen cifras de ninguno de los números generados serán llenadas con números aleatorios de una cifra.
Cuando el jugador ingrese a la opción Jugar del menú, se le solicitará su nombre. A continuación, se le mostrará el tablero y los números que deberá buscar. Por cada turno el jugador deberá seleccionar:
El número que desea buscar (opciones del 1 al 7)
La orientación del número: vertical, horizontal, diagonal 1 ó diagonal 2
La fila a partir de la cual se lee el número
La columna en la que se encuentra el número
El sentido de lectura izquierda a derecha (1) ó lectura de derecha a izquierda
Al inicio el Jugador empieza con 50, cada vez que falle en la búsqueda de un número se le restaran 10 puntos. No se otorgan puntos por encontrar los números buscados. Si se busca un número ya encontrado se penalizará al jugador con 5 puntos por desperdicio de tiempo de procesamiento.
El juego deberá mostrar la cantidad de intentos exitosos y fallidos de búsqueda.
El juego se gana una vez que se encuentren todos los números.
Fin del Juego
Existen tres maneras de finalizar el juego:
• Cuando el jugador ha encontrado todos los números, es decir que ha ganado.
• Cuando el jugador ha fallado tantas veces que su puntaje es inferior a cero.
• Cuando el jugador no desea continuar con el juego; en este punto el jugador ingresa -1 en cualquiera de las entradas para buscar un número (numero a buscar, fila, posición ó sentido de lectura).
En caso de que el usuario desee salir (-1), se le deberá preguntar si desea guardar el juego, salir sin guardar ó cancelar.
En caso de que seleccione la opción de guardar el juego, se deberá guardar toda la información en el archivo juego.txt y mostrar un mensaje indicando que ha sido guardado el juego.
Si selecciona salir sin guardar, se le mostrará al jugador su puntaje, la cantidad de números encontrados y cantidad de números no encontrado.
Si selecciona cancelar se le deberá permitir continuar jugando.
Cargar Juego
Cada vez que el jugador no desee seguir jugando y guarde el juego, se generará el archivo Juego.txt, el mismo que contiene toda la información requerida para recrear el escenario del juego una vez que se utilice la opción cargar del menú principal.
El formato del archivo se detalla a continuación:
Nota: Si en su aplicación requiere guardar información adicional el formato del archivo puede ser modificado
Mejores puntajes
En el archivo Listado.txt, la aplicación irá almacenando los 10 mejores puntajes obtenidos por los jugadores.
A continuación, se detalla el formato del archivo:
Nota: En todo momento el programa deberá proveer al jugador la retroalimentación correcta de cada una de las acciones ejecutadas. Adicionalmente, se deberán validar todas las entradas.