Aplicaciones, Programación 2

Project Euler : retos matemáticos para programar

Leonhard Euler

El mundo de la programación esta totalmente relacionado con el de las matemáticas, de hecho, se podría decir que la programación es uno de los tantos hijos que tienen estas y normalmente un buen programador necesita conocimientos matemáticos y un matemático tiene gran facilidad para la programación. El proyecto Euler se crea con la motivación de unir estos dos mundos en una serie de retos en los que vamos a poder entrenar nuestra cabeza, reforzar nuestros conocimientos matemáticos y entrenar nuestras habilidades de programación, todo en uno.

Project Euler fue iniciado por Colin Hughes ( en honor a Leonhard Euler, brillante matemático y físico suizo ) en octubre del 2001 como una sub-sección en mathschallenge.net, no siendo hasta 2006 cuando se traslada a su dominio actual. Este proyecto esta dirigido a todo tipo de publico con una lista de 469 problemas y en aumento.

“Project Euler exists to encourage, challenge, and develop the skills and enjoyment of anyone with an interest in the fascinating world of mathematics.”
Project Euler

¿Como funciona?

El funcionamiento de la web es muy sencillo, podemos ver los problemas sin la necesidad de registrarnos, pero si queremos resolverlos es necesario crearse una cuenta, algo totalmente gratuito. La web cuenta con un sistema de puntuación y recompensas ( medallas ) que iremos obteniendo mediante vayamos avanzando en la resolución de los problemas, ademas estos se dividen en diferentes niveles que completaremos una vez resolvamos cada uno de los 25 retos que tiene cada nivel. Project Euler tiene un sistema fácil y muy intuitivo que se centra en sus problemas, aquí tenéis una captura de la pagina principal :

WebProjectEuler

Programando los problemas

Como a la hora de resolver los problemas unicamente interesa el resultado obtenido, es posible programarlos en el lenguaje que cada uno prefiera, ademas el algoritmo se puede plantear y programar de cualquier manera, pudiendo en algunos casos utilizar la “fuerza bruta” y obtener el resultado en un tiempo elevado, o darle mas vueltas al problema para obtener el método mas eficiente y reducir el tiempo de ejecución. Todos los problemas se han creado bajo la “regla de un minuto”, por lo que cada uno de los retos esta pensado para que sea posible ejecutarlo en un  periodo corto de tiempo independientemente de la maquina, claro esta, si utilizamos el algoritmo correcto.

Una vez programado el algoritmo y obtenido el resultado correcto es posible acceder a los foros para comparar tu solución con la de otros usuarios y ver cual es la mas eficiente, una excelente manera de mejorar tanto nuestras habilidades matemáticas como las de programación.

Las soluciones

Como ya e mencionado solo es necesario entregar la respuesta correcta, el programa utilizado para acceder a ella es indiferente, por lo que es fácil y existen muchas formas de buscar respuestas a la mayoría de los problemas en Internet. Esto rompe totalmente con la filosofia del proyecto y carece del mas mínimo sentido ( teniendo en cuenta que no hay ningun tipo de recompensa ), pero aun asi, es posible que algún problema se nos atraviese y no consigamos la respuesta correcta despues de muchos intentos, buscar la resolución nos puede ayudar a comprender y entender el problema.

Project Euler es uno de esos proyectos que sin duda merecen reconocimiento, sobretodo por el tiempo que llevan funcionan y actualizándose. Siendo una plataforma totalmente gratuita ofrece medios para mejorar nuestras habilidades y entretenimiento de buena calidad. ¿ Lo conocíais ?

 

Sobre el autor / 

AsierPH

Entusiasta de las tecnologías libres y fundador de OvToaster.com | “Las obras de conocimiento deben ser libres, no hay excusas para que no sea así“

Articulos relacionados

2 comentarios

  1. Rodrigo Rivera 29 marzo, 2016 at 5:27 am -  Responder

    Que interesante articulo, amo las matemáticas y estoy comenzando a aprender progrmación así que sin duda le echaré un vistazo. Gracias por compartir.

    • AsierPH 26 abril, 2016 at 11:52 am -  Responder

      La verdad que es una pagina muy interesante. Gracias a ti por pasarte 🙂

Deja tu comentario

Tu correo no sera publicado. Los campos requeridos están marcados *