Sunteți pe pagina 1din 4

Investigacin Corta (Mximo 6 pginas): 1.3.1. Preguntas insustituibles: a.

Meta del programa: La meta del programa es lograr que alguno de los dos usuarios gane, si juegan en versus de usuarios, o el usuario gane, si se juega contra la computadora, al tener un mayor nmero de fichas de su color a su favor. b. Salidas: Mensajes a mostrar al usuario: Las salidas del juego sern el despliegue de que botones tienen una moneda verde o una moneda roja y tambin que botones se encuentran vacos. c. Entradas: Qu tipos de valores ingresar el usuario? Como entrada el usuario ingresar que botn presion, a partir de dicho botn el juego obtendr su coordenada central. d. Condiciones: Qu debe tomar en cuenta para la elaboracin del proyecto? i. Reglas del juego:

Se emplea un tablero de 8 filas por 8 columnas y 64 fichas idnticas, redondas, blancas por una cara y negras por la otra. Juegan dos jugadores, uno lleva las blancas y el otro las negras. De inicio se colocan cuatro fichas tal como se ve en la figura, dos fichas blancas en D4 y E5, y dos negras en E4 y D5.

La partida acaba cuando ningn jugador puede mover (normalmente cuando el tablero est lleno). Un jugador gana cuando en ese momento tiene ms fichas mostrando su color sobre el tablero. Si el nmero de fichas es el mismo, se trata de un empate. Empiezan a jugar las negras. Un jugador, en su turno, coloca una ficha en una casilla libre del tablero. Las negras siempre sitan las fichas con la cara negra vindose, y viceversa con las blancas. Si un jugador no puede mover el turno pasa al contrario. Una ficha slo se puede colocar si deja, entre medio de esa ficha y otra del mismo color ya colocada, una o varias fichas del color contrario. Todas estas deben estar en una lnea continua de fichas, horizontal, vertical o diagonal. Todas las fichas contrarias que han quedado entre medio se voltean para que muestren el color de la otra cara. EJEMPLO 1

Juegan las negras en F5, dejando entre medio de F5 y D5 la ficha blanca E5.

La ficha que queda en medio de otras dos contrarias (una ya colocada y otra recin colocada), en este caso E5, a veces se denomina "ficha flanqueada" y debe siempre voltearse. Por otra parte, la ficha ya colocada, en este caso D5 se suele denominar "ficha pivote". Una vez volteada la ficha o fichas flanqueadas el turno pasa al contrario.

EJEMPLO 2 Las blancas juegan y mueven en G4.

Deben voltearse: - E2 y F3 (estn entre G4 y D1) - F4 (entre G4 y E4) - F5 (entre G4 y E6) Ntese que no debe voltearse ninguna ms; por ejemplo: - G5 (no hay ficha pivote en G6) - D4 (la ficha pivote es E4, no B4: hasta B4 no hay una lnea continua de fichas negras) - etctera ii. Programacin defensiva: condiciones que deben cumplir los datos que ingrese el usuario.

e. Por cada repeticin [sin incluir programacin defensiva], deben agregar Qu se repite? Qu condicin controla la repeticin? 1.3.2. Breve narracin de cmo lleg a la solucin: Lo primero que se estableci fue el despliegue del tablero de 8 * 8, lo que nos dio un resultado de 64 botones. Al principio los botones estarn vacos, a excepcin de las cuatro fichas iniciales dos rojas y dos verdes. Se crearon dos listas, la lista que almacenara aquellos objetos, fichas, del tipo verde y la segunda lista que almacenara los objetos del tipo rojo. Al presionar un botn el programa corroborar que el movimiento sea vlido, en caso de no poderse realizar el programa no har ningn movimiento. Media vez el movimiento sea vlido el programa verifica en que posicin se encuentra el botn y hace una comparacin con los objetos ya existentes, las fichas verdes y rojas. Al hace la comparacin el programa hace un cambio de color para las fichas que han quedado en medio, del movimiento que se acaba de realizar, si son de otro color son cambiadas al color de las fichas que tienen en los extremos. Al hacer el cambio elimina los objetos de la lista en la cual se encontraban y los agrega a la lista del nuevo color. Luego de este proceso se le despliega al usuario el nuevo resultado por su ltimo movimiento.

f. a) Cul fue su lnea de pensamiento para resolver el problema? g. b) Cmo comenzaron a organizar sus ideas? h. c) En qu partes principales dividieron el problema? Cmo las identificaron? i. d) Cmo llevar a acabo la solucin? 1.3.3. Variables y funciones: a. Variables i. ii. iii. Identificadores de las variables que utilizar. Tipo de valor esperado a almacenar en la variable. Finalidad de la variable Para qu servir en el programa?

b. Funciones desarrolladas i. ii. iii. iv. Identificadores de las funciones que realizar Parmetros que recibir Valores que devolver Finalidad de la funcin Qu clculo o proceso realizar la funcin?

1.3.4. Conclusiones: Describir qu aprendieron y qu beneficio obtuvieron al realizar este proyecto. Del proyecto hemos aprendido a desarrollar nuestras habilidades para utilizar la interfaz grfica. Tambin nos ha ayudado para mejorar nuestras capacidades dentro de los temas de listas, repeticiones y restricciones dentro de un programa. Nuevamente el proyecto nos ha ayudado a trabajar el valor de trabajo en equipo, que nos ayudo para crear un programa de calidad y estable. 1.3.5. Bibliografa: Downey, Allen. Think Python: How to Think Like a Computer Scientist. Learning with Python. ISBN13:9780521898119. http://www.thinkpython.com. Versin electrnica 1.1.21 Gonzlez, Ral. Python para Todos. http://mundogeek.net/tutorial-python/. Version electrnica. Espaa.