Foros de Electrónica

Comunidad de discusión sobre Automatización, Electrónica industrial, Microcontroladores y electrónica digital, Robótica, Domótica, Telemática, Tecnologías móviles, y muchos temas más.




3 en raya


       



#1  3 en raya
Ronald Franco

Registrado: 26 Jun 2006
Mensajes: 1
Ubicación: Guayaquil,Ecuador
citar
hola a todos, estoy estudiando circuitos digitales y tengo que presentar un proyecto de un juego de 3 en raya, el sistema debe avisar cuando gana uno de los dos jugadores o cuando no hay ganador asi como reiniciar el juego...por fa si alguien tiene idea de como hacer este proyecto les agradezco me ayuden...

Saludos

Ronald

#2  
Nilfred
Colaborador
Registrado: 01 Feb 2006
Mensajes: 734
Ubicación: Corrientes, Argentina
citar
Ok, voy tirando ideas:

Materiales visibles:
1 teclado numérico del 1 al 9
9 LEDS bicolor
1 interruptor
1 pila

Funcionamiento:
La primera tecla que se presiona se pone roja.
Si se vuelve a apretar la misma tecla no pasa nada.
La segunda tecla que se apreta se pone verde...
Si hay un ganador destellan los 3 en linea del color ganador durante 2 segundos y se resetea solo el juego.
Si se detecta un empate destellan todos los LEDs encendidos y se reinicia el juego.

Patrones ganadores:
Horizontales:
000000111
000111000
111000000
Verticales:
001001001
010010010
100100100
Oblicuos:
100010001
001010100

Binario de menor a mayor:
000000111 7
000111000 56
001001001 73
001010100 84
010010010 146
100010001 273
100100100 292
111000000 448

Lógica detras de escena:
Plan A
Son 9 dígitos de 3 estados, 3^9=19683 estados posibles
Los estados son 0=vacio, 1=Jugador 1, 2=Jugador 2
La diferencia entre cantidad de estados 1 y 2 debe ser 0 o 1, lo cual achica un poco el pescado.

Las acciones a tomar en cada estado son:
0 Le toca jugar a J1
1 Le toca jugar a J2
2 Gano J1, destellar patron ganador y reiniciar
3 Gano J2, destellar patron ganador y reiniciar
4 Hay empate, destellar todo y reiniciar
5 Hay empate detectado pero falta llenar el tablero.
6 Patrón ganador=000000111
7 Patrón ganador=000111000
8 Patrón ganador=001001001
9-n Etc...

Plan B:
Son 2×9 dígitos binarios, 2×2^9=2^10=1024 posibles estados
Donde 1 es ficha puesta y 0 es vacía o ocupada por el otro
Se descartan los valores donde la cantidad de 1s es >5 para J1 y >4 para J2 asi se achica el pescado

Plan C:
Con los datos de A o B se forma un arbol separando los posibles estados por número de movimieto

Plan D:
Achicar el pescado a 8 bits así es mas barato.
Considerar el centro como caso especial para que la lógica vaya por otro lado
Los patrones ganadores sin el centro son solo 4

Tarea: Hacer las tablas de la verdad para A y B...

 Responder



Google
 


 Temas de interés 
No hay mensajes nuevos dispositivos digitales con salida de tres estados
No hay mensajes nuevos Matlab para comunicaciones digitales
No hay mensajes nuevos Simulador Circuitos Digitales
No hay mensajes nuevos Como hacer un detector de codigos digitales
No hay mensajes nuevos Analogicos digitales en 16F877

Foros de Electronica
|| Cuestiones Elementales de Electrónica || Fuentes de alimentacion || Circuitos de radio || Diseño de circuitos en general ||
|| Sistemas de Audio: Preamplificadores, Ecualizadores || Amplificadores || Reparación || Discusión ||
|| Microcontroladores y sistemas embebidos || Circuitos logicos combinacionales y secuenciales || Interfaces y Programacion || Dudas en general || Sistemas de Video || PC Hardware || Telematica y comunicaciones || Tecnologias moviles || Software Electronico || Robotica, Domotica y Mecatronica || Autotrónica || Automatizacion, Electronica industrial y de Potencia || Documentacion, circuitos y esquemas || Donde Las Ideas Convergen... || Tutoriales y Manuales || Proyectos Prácticos ||