6.S095 | January IAP 2018 | Undergraduate

Programming for the Puzzled

Course Description

This class builds a bridge between the recreational world of algorithmic puzzles (puzzles that can be solved by algorithms) and the pragmatic world of computer programming, teaching students to program while solving puzzles. Python syntax and semantics required to understand the code are explained as needed for each …
This class builds a bridge between the recreational world of algorithmic puzzles (puzzles that can be solved by algorithms) and the pragmatic world of computer programming, teaching students to program while solving puzzles. Python syntax and semantics required to understand the code are explained as needed for each puzzle.
Learning Resource Types
Lecture Videos
Programming Assignments with Examples
A puzzle piece overlaid with Python code on a chess board.
In this course, we use Python to solve a variety of puzzles. Two of the puzzles involve the game of chess. (Image by Brett Paci at MIT OpenCourseWare.)