Licencia

Páginas: 7 (1642 palabras) Publicado: 26 de octubre de 2012
Trabajo Practico Nº 2 Python

Detalles de la Implementación:

Enunciado: Trabajo 3: Tablas numéricas Nombre del Juego: “Bloques Numéricos”

Problemas encontrados:

------>Problema: Imprimir en pantalla.
Solución: Para imprimir utilizamos un objeto que va ingresando caracteres uno a uno, cada vez que es ingresado un carácter se pega un fondo y se vuelve a escribir en pantalla, la mismafunción para cuando es borrado un carácter. Dejando siempre en pantalla el mismo nombre que tiene almacenado el objeto.

------>Problema: Evitar caracteres inválidos como nombre de usuario.
Solución: Se ingresan caracteres por teclados concatenándolos, de esa forma se crea el nombre, pero si se ingresa una tecla que no es carácter, implementamos una excepción “ValueError” la cual genera un avisoen pantalla y ejecuta un sonido, si este está activado.

-1-

------>Problema: Error al ejecutar, ya que no comprendía caracteres especiales como el
signo de admiración ¡! Solución: Comprobamos que la codificación del código fuente no estaba establecida, luego de agregar “# -*- coding: UTF-8 -*-“en la cabecera de los archivos se resolvió el problema.

------>Problema: Ingreso de datosdesde el Numpad. Generaba un error debido a que los
códigos de carácter no eran correctos. Solución: Una vez ingresado el carácter se pregunta si el código de carácter está entre los 10 códigos del Numpad (256-265), si es así se le resta la diferencia entre el código ingresado y el código del carácter del teclado numérico (Sobre el teclado) diferencia= 208. De esa forma imprime los númeroscorrectamente.

------>Problema: Calcular la posición correcta del numero ingresado en la barra para
completar la secuencia. Solución: Cada vez que se ingresa una tecla, se verifica si el numero ingresado está en la lista de faltantes, si es así comprueba si fue ingresado en el lugar correcto haciendo un mod 10, dando como resultado el ultimo numero, si corresponde a la posición de la barra, el numerofue ingresado correctamente. De lo contrario el usuario puede borrar y volver a intentar.

------>Problema: Evitar que se pueda seleccionar un casillero ya completado
correctamente. Solución: Implementamos un diccionario cuyas claves son las posiciones de la barra y el valor es un booleano que siempre comienza en False, si se completo correctamente la barra se coloca en True en esa posición, ycada vez que el usuario intente cliquear sobre la posición verifica si esta es True o False, dejándolo o no completar el casillero.

------>Problema: Seleccionar los números faltantes al azar.
Solución: Hicimos un modulo que se encarga de utilizar la función “random.sample()”, logramos sacar de una lista completa de números la cantidad necesaria según el nivel ingresado y colocar esos números enuna lista de aleatorios, luego recorremos dicha lista para eliminar esos valores en la lista original. Dejando 2 listas una de aleatorios seleccionados para completar y otra con los números que van a ser mostrados en pantalla.

-2-

------>Problema: Tomar solamente números.
Solución: Hicimos un conjunto de teclas posibles, y a cada tecla ingresada se le pregunta si esta en el conjunto, si esasí esa tecla es ingresada una a una a un objeto (valor) encargado de almacenar el numero ingresado por el usuario o bien utilizada para borrar carácter (BACKSPACE).

------>Problema: Caída de barra cada “X” Tiempo.
Solución: Realizamos un nuevo evento llamado USEREVENT +1, el cual es ejecutado cada “X” tiempo dependiendo del nivel de dificultad.

------>Problema: Conteo del tiempo de juegodel Usuario.
Solución: Creamos un objeto Tiempo, el cual almacena el tiempo de comienzo de juego, luego al terminar resta el tiempo actual y el inicial y eso devuelve la cantidad de milisegundos pasados desde el comienzo del juego, si se lo divide por 1000, da como resultado la cantidad de segundos que el usuario jugó.

------>Problema: Utilización de sonido en todo el juego.
Solución:...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Licenciado
  • Licenciado
  • Licenciada
  • Licenciado
  • Licenciada
  • Licenciada
  • Licenciado
  • Licenciado

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS