Lesson 1.3 Algorithms in Python

Lesson 1.3 Algorithms in Python

The goal of this lesson is for students to understand all information as bits and to transfer their understanding of algorithms to a new language, Python, which is powerful enough to raise all the opportunities and issues targeted in the course. Students are introduced to functional, imperative, and declarative programming paradigms with Python, again learning to use variables in the most common roles. Before learning about variable types and the fundamental algorithmic structures in Python, students simulate program execution in a model assembly language. After building strength with basic Python algorithms, students create algorithms to compete in a roundrobin tournament of the Prisoner’s Dilemma, using the collaborative programming platform GitHub in the process.