Project Euler is a project that offers mathematical problems that should be solved by computer programming. The problems are easy to understand and a theoretical solution is always obvious. But... a solutions is regarded as acceptable, if the algorithm that is applied lasts at most 1 minute. And of course the problems have such parameters that make brute force inefficient. So the ambitious solver has to invent good ideas or look for some in mathematical books, that solve the problem quickly.
Solving or just dealing with a problem makes much fun, because one experiences the power of mathematics and recalls old or learns knew knowledge.
Recommended to everyone who loves mathematics and programming!
Here is the webpage.