[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