Course Home


Related Links

Mathematical Puzzling In Python

  • For students in grades 6-12
  • Course Description: Inspired by online puzzle collections like Project Euler, this course will examine solving mathematical puzzles through computer programming. There are tons of questions, which though easy to frame mathematically, aren't especially amenable to traditional, pencil-and-paper methods of solution. Computers and high-level programming languages have a lot to offer here. We're going to be exploring a wide range of exciting mathematics—ranging from geometry to combinatorics to graph theory—using Python, a prominent, high-level programming language. This course requires no background in computer science and a basic comfort with algebra.
  • High school credit: 1 semester
  • Course Dates: Rolling enrollment (18 weeks)
  • Location: online (

Installing Python



Other Files Needed for This Course

You will also need the Python version of the examples from Investigations in Algebra, and the templates that you will fill out to complete the exercises, projects and experiments in the book. You can download them here.

The examples from the book are in files labeled through The templates for the exercises, projects and experiments are labeled through There is also an with functions from the appendix in the book, and a to practice submitting your first homework from the book.

These course files won't be needed until after you have finished working through the beginning videos that start with How to use these web pages. You will find them discussed in the videos Using the Python Examples and How to Work Through the Book, but you should work through the beginning videos first and complete the exercises that go with each video.