Buenas, Yo hace tiempo hice uno para un ejercicio de TDD. Lo hice con pygame, pygrid y numpy, échale un ojo:
https://github.com/themerck/bacterialColony Aquí tienes el ejercicio. Está hecho en java pero al menos ayuda para plantear el problema. http://www.pablotrinidad.es/tecnologeria/320 Espero que te sirva. Un saludo. El sáb., 23 de mayo de 2015 19:01, Núria Pujol <nuriapujolvilan...@gmail.com> escribió: > Lo que describes es un problema clásico llamado "Game of Life". > > En este link está más que bien explicado: > > https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/ > Lo del tablero tb lo puedes "pintar" utilizando matplotlib. > > Espero que se sea de ayuda, > > > Núria > > 2015-05-22 17:27 GMT+02:00 Fernando Garcia <riell...@gmail.com>: > >> Quiero hacer un "juego" (en realidad no es un juego, mas bien un >> experimento) que consiste en: >> a)-Sobre un tablero ajedrezado, marcamos cada cuadrado de un color, >> blanco o negro pero aleatoriamente. >> b)-Cada casilla reacciona según las casillas de su entorno. Si es blanca >> y esta rodeada por dos o tres blancas, sigue blanca. Si no, cambia a negra. >> Si es negra y esta rodeada por dos blancas, cambia a blanca. Si no, sigue >> negra. >> >> tengo hecha la parte a), con el código que pongo a continuación, pero no >> se como abordar la parte b). ¿Alguna ayuda?. >> >> def Universo(ventana,ancho,alto): >> Botones(ventana,ancho,alto) >> espacio=Canvas(ventana, width=ancho, height=alto) >> espacio.pack() >> tablero(espacio,ancho,alto) >> >> def tablero(espacio,ancho,alto): >> x=0 >> y=0 >> while y<alto-15: >> while x<ancho-15: >> z=random.randint(0,1) >> if z==0: >> cuadradoVivo(espacio,x,y) >> if z==1: >> cuadradoMuerto(espacio,x,y) >> x=x+15 >> x=0 >> y=y+15 >> >> def cuadradoVivo(espacio,x,y): >> espacio.create_rectangle(x,y,x+15,y+15,fill='green') >> >> def cuadradoMuerto(espacio,x,y): >> espacio.create_rectangle(x,y,x+15,y+15,fill='red') >> >> def Botones(ventana,ancho,alto): >> def botonSalir(ventana): >> Button(ventana, text="SALIR", command=root.destroy, >> cursor='hand2').pack(side=LEFT) >> def botonContinuar(ventana): >> Button(ventana, text="CONTINUAR", >> cursor='hand2').pack(side=LEFT) >> def botonPausar(ventana): >> Button(ventana, text="PAUSAR", >> cursor='hand2').pack(side=LEFT) >> def botonEmpezar(ventana): >> Button(ventana, text="EMPEZAR", >> cursor='hand2').pack(side=LEFT) >> frameBotones=Frame(ventana) >> botonEmpezar(frameBotones) >> botonPausar(frameBotones) >> botonContinuar(frameBotones) >> botonSalir(frameBotones) >> frameBotones.pack(fill=BOTH) >> >> >> >> #-*-*-*-*-*-*-*-*-*-*-*-*- >> #*/*/*/*/*INIT*/*/*/*/* >> #-*-*-*-*-*-*-*-*-*-*-*-*- >> >> root=Tk() >> ancho,alto=root.maxsize() >> Universo(root, ancho, alto) >> >> >> root.mainloop() >> >> >> Aclaro que el único botón que tengo funcionando es el de SALIR. >> Gracias por la ayuda. >> >> _______________________________________________ >> Python-es mailing list >> Python-es@python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ >
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/