[pyar] [OT] Juego para geeks

Daniel Moisset dmoisset en machinalis.com
Mie Mar 16 11:30:29 ART 2011


2011/3/14 Martin Cerdeira <martincerdeira en gmail.com>:
> Buenas. Apelando al espiritu ludico de la lista e inspirado en un post
> de stackoverlow[0] (que era en C++)
> Propongo un juego/desafio en python. Aquí va:
>
> Generar un programa en python que cumpla con los siguientes requisitos:
>
> 1) Tiene que imprimir en pantalla los nros del 1 al 1000. Es decir, la
> salida debería ser:
>       1
>       2
>       3
>       4
>      ...
>    999
>  1000
>
> 2) No se pueden usar loops de ningun tipo
> 3) No se pueden usar condicionales

def mostrar(valor=[1]):
    print("%4d" % valor[0])
    valor[0] += 1

def dos(f):
    def inner():
        f(); f()
    return inner

def cinco(f):
    def inner():
        f(); f(); f(); f(); f()
    return inner

dos(dos(dos(cinco(cinco(cinco(mostrar))))))()

Sin recursion, sin ciclos, sin cosas externas, sin 1000 lineas de
codigo, sin builtins excepto print

Saludos,
   D.



More information about the pyar mailing list