Retos computacionales.

February 7, 2009

Si hay algo para lo que soy aún más anárquico que para escribir en este blog, es a la hora de leer los feeds que con compulsiva obsesión he ido almacenando en mi lector de noticias. Esta tarde estaba leyendo debug_mode=on, después de tener un tanto abandonada esta página, y he encontrado una intesante referencia a las funciones "map" y "reduce" en python, y el aún más intersante enlace al Proyecto Euler (Project Euler).

Si el artículo sobre map y reduce os resulta interesante, os recomiendo este otro más extenso: http://mundogeek.net/archivos/2008/03/10/python-programacion-funcional/.

 

Por cierto, de mi coseña, la versión "funcional" en python de la resolución del primer problema del Proyecto Euler:

[SPOILER: SELECCIONAR LAS SIGUIENTES LÍNEAS PARA VERLO]

#Version estructurada "habitual"
def estructurada(max):
    tmp = 0
    for i in range(1, 1000):
        if i%3 == 0 or i%5 == 0:
            tmp += i
    return tmp

#Version funcional en una linea
funcional = lambda a: reduce(lambda x, y:x+y, filter(lambda x:x%3==0 or x%5==0, range(1, a)))

print estructurada(1000)
print funcional(1000)

[FIN DEL SPOILER]

Comments »

The URI to TrackBack this entry is: http://desproposito.blogsome.com/2009/02/07/retos-computacionales/trackback/

No comments yet.

RSS feed for comments on this post.

Leave a comment

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>



Anti-spam measure: please retype the above text into the box provided.

Get free blog up and running in minutes with Blogsome
Theme designed by Viewfinder Design

Creative Commons License
This obra by Rubén Corral Jordá is licensed under a Creative Commons Reconocimiento-Compartir bajo la misma licencia 2.5 España License.