Studying Book recommendations to start learning programming for project Euler

AI Thread Summary
For those looking to learn programming to tackle Project Euler problems, several resources and recommendations have emerged. A notable free eBook is "Introduction to Scientific Programming with Python," which provides a solid foundation in Python. Additionally, SageMath is highlighted as a valuable tool for mathematical programming, with numerous resources available online for number theory and abstract algebra. Websites like Code with Mu and Programiz are suggested for simpler projects and Python consolidation, respectively. The discussion emphasizes the importance of hands-on problem-solving rather than relying solely on mathematical software like Mathematica, especially for later, more complex Project Euler problems. Engaging directly with programming and algorithm development is encouraged to enhance problem-solving skills. Participants express interest in sharing further Sage resources and discuss specific Project Euler problems, indicating a desire to start from the beginning and build both programming and mathematical knowledge concurrently.
MidgetDwarf
Messages
1,572
Reaction score
694
I do not know much about programming. I have used Mathematica, and some Python in the past for very specific problems.
Any book recommendations for one wanting to learn programming in order to solve problems from Project Euler. I am familiar with number theory, but not with programming.
 
Physics news on Phys.org
I share this with my students, its a free e book from springer
"Introduction to Scientific Programming with Python"
https://link.springer.com/book/10.1007/978-3-030-50356-7

For simpler projects I recommend them to use https://codewith.mu/

This might be of interest for you
https://www.sagemath.org/
Just google "number theory with sage" "abstract algebra with sage" etc and you'll find tons of material like these
 
  • Like
  • Informative
Likes vanhees71, berkeman and MidgetDwarf
malawi_glenn said:
I share this with my students, its a free e book from springer
"Introduction to Scientific Programming with Python"
https://link.springer.com/book/10.1007/978-3-030-50356-7

For simpler projects I recommend them to use https://codewith.mu/

This might be of interest for you
https://www.sagemath.org/
Just google "number theory with sage" "abstract algebra with sage" etc and you'll find tons of material like these
Thanks for the great links. I was unaware of the existence of Sage.
I ordered a physical copy of the Springer book.
 
  • Like
Likes vanhees71 and malawi_glenn
I have some more Sage stuff if you are interested and want to go down that route
 
  • Like
Likes vanhees71
  • Like
Likes malawi_glenn and vanhees71
malawi_glenn said:
I have some more Sage stuff if you are interested and want to go down that route
Do you think Sage would be useful for solving Project Euler problems?
 
MidgetDwarf said:
I do not know much about programming. I have used Mathematica, and some Python in the past for very specific problems.
Any book recommendations for one wanting to learn programming in order to solve problems from Project Euler. I am familiar with number theory, but not with programming.
Can you list a few of the problems from Project Euler that you are interested in working on? That would help us in our recommendations, I think. Thanks.
 
pbuk said:
Do you think Sage would be useful for solving Project Euler problems?
Rethorical question?
 
malawi_glenn said:
Rethorical question?
Not at all. As I understand it, the aim of SageMath is to create an open source alternative to declarative math packages such as Matlab and Mathematica. If you look at the "leader board" for Project Euler there is only one entry for an Eulerian who declares that they use Mathematica.

Whilst some of the early problems can easily be solved using e.g. Mathematica in reasonable time e.g. https://projecteuler.net/problem=1, this leaves the "heavy lifting" to the package and does not give you the experience of efficiently reducing the size of the solution space that is necessary in solving many of the later problems.
 
  • #10
pbuk said:
"heavy lifting" to the package and does not give you the experience of efficiently reducing the size of the solution space that is necessary in solving many of the later problems.
Just because there are packages does not mean one has to use them. One could also use the packages to check the solution. I mean if you do not want to use the inbuilt "mod" function, just write your own :-)

EDIT: I guess GNU octave is still "good" these days. It is basically a free version of MATLAB
 
Last edited:
  • #11
Yes please, share more Sage stuff.

As for what problems I want to solve in Project Euler. I want to start from 1 going upwards. I see it more as practicing the number theory I know, and learning more, while learning a bit of python, or what ever language, in the process.
 
Back
Top