[Python-es] Tablero ajedrezado
Chema Cortes
pych3m4 en gmail.com
Sab Mayo 23 12:31:24 CEST 2015
El 22 de mayo de 2015, 17:45, Fernando Garcia <riello57 en gmail.com> escribió:
> En efecto, leí en un libro una descripción del Juego de la vida y quise
> intentar ponerlo en marcha en Python.
> Gracias por los enlaces, los voy a consultar
>
También te puede interesar la implementación con numpy que hicieron los de
pybonacci de este juego:
http://pybonacci.org/2012/11/30/juego-de-la-vida-de-conway-con-python-usando-numpy/
Y mi propia implementación:
https://gist.github.com/chemacortes/6257951#file-life-py
> El 22/05/2015 17:41, "Oscar Carballal" <oscar.carballal en gmail.com>
> escribió:
>
>> [clippy aparece en tu pantalla] Parece que esta usted intentando crear un
>> juego de la vida (Game of Life), tal vez estos articulos le sean de ayuda:
>>
>> https://jakevdp.github.io/blog/2013/08/07/conways-game-of-life/
>> http://usingpython.com/dl/GameOfLife.py
>> http://stanford.edu/~cpiech/cs221/handouts/pythonTutorial.html
>>
>> Bromas aparte, para hacer la parte B seguramente te sea util operar con
>> arrays bidimensionales (basicamente arrays de arrays). Echale un vistazo a
>> los enlaces que te mando, no es demasiado complicado. Para conectar ambas
>> partes puedes llamar a las funciones de tu programa en Tk desde tu
>> operaciones en la logica del juego.
>>
>> Intentalo estudiando el codigo de esos ejemplos :)
>>
>> Regards,
>> Oscar
>>
>> --
>> Oscar Carballal Prego - Senior Software Developer
>> http://oscarcp.com | @pizte
>>
>> 2015-05-22 16:27 GMT+01:00 Fernando Garcia <riello57 en 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 en python.org
>>> https://mail.python.org/mailman/listinfo/python-es
>>> FAQ: http://python-es-faq.wikidot.com/
>>>
>>>
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> https://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
--
Hyperreals *R "Quarks, bits y otras criaturas infinitesimales":
http://ch3m4.org/blog
Buscador Python Hispano: http://ch3m4.org/python-es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20150523/a15dedb1/attachment.html>
Más información sobre la lista de distribución Python-es