Project Euler with Julia
Disclaimer: Project Euler discourages the posting of solutions to their problems, to avoid spoilers. The three solutions I have presented in my blog are to the three first problems (the easiest and most popular), as a means to advertise and encourage my readers to “push the envelope” and go beyond brute-force solutions.
Just for fun, and as a means to learn Julia, I will be attempting problems from the Project Euler coding exclusively in that promising computer language.
The first problem is very simple:
Multiples of 3 and 5
If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multip les is 23.Find the sum of all the multiples of 3 or 5 below 1000.
One easy-to-code way is by dealing with arrays:
julia> sum( filter( x->((x%3==0) | (x%5==0)), [1:999] ) ) 233168
A much better way is to obtain it via summation formulas: Note that the sum of all multiples of three between one and 999 is given by
Similarly, the sum of all multiples of five between one and 995 is given by
Finally, we need to subtract the sum of the multiples of both three and five, since they have been counted twice. This sum is
The final sum is then,