Assigned Reading
The assigned reading for the course is listed below.
Be sure to check the calendar page to see if there is a reading
quiz on Sakai to go along with the assigned reading.
The book for the course is listed below. You'll need a code to register for
our version of the book. The code is on Sakai under announcements.
Note the book is free, but not really free. A lot of work went into building
and maintaining this online book. Please give a donation of at least
$15. More if you can.
Note: You do not need to do the exercise sections at
the end of the chapters. But you should do the questions and little
exercises that are integrated into the reading.
NOTE: THESE READINGS AND DATES ARE SUBJECT TO CHANGE
Reading
- RQ01: Aug. 31, 2017
- Read the Course web pages (which include the syllabus) (This part is
not the online book)
- 1. General Introduction (all) (This part is a chapter in the online book)
- RQ02: Sept 5, 2017
- 2. Simple Python Data (all)
- RQ03: Sept 7, 2017
- 3. Debugging Interlude 1 (all)
- 4.1-4.3 Python Turtle Graphics
- Hello Little Turtles!
- Our First Turtle program
- Instances - A Herd of Turtles
- 5. Python Modules (all)
- 6.1-6.4 Functions
- Functions
- Functions that Return Values
- Unit testing
- Variables and Parameters
- RQ04: Sept 12, 2017
- 4.4-4.7 Python Turtle Graphics
- The for Loop
- Flow of Execution of the for loop
- Iteration Simplifies our Turtle Program
- The range Function
- 6.5-6.7 Functions
- The Accumulator Pattern
- Functions that can Call Other Functions
- Flow of Execution Summary
- 9.1-9.7 Strings
- Strings Revisted
- A Collection Data Type
- Operations on Strings
- Index Operator: Working with the Characters of a String
- String Methods
- Length
- The Slice Operator
- RQ05: Sept 14, 2017
- 4.8-4.11 Python Turtle Graphics (rest of chapter)
- A few more turtle functions and observations
- Summary and Glossary
- 7.1-7.4 Selection
- Boolean Values and Boolean Expressions
- Logical Operators
- Precedence of Operators
- Conditional Execution: Binary Selection
- 9.9-9.11 Strings
- Strings are Immutable
- Traversal and the for loop: by item
- Traversal and the for loop: by index
- 10.1-10.4 Lists
- Lists
- List Values
- List Length
- Accessing Elements
- RQ06: Sept. 19, 2017
- 6.8-6.12 Functions
- 7.5-7.9 Selection
- 9.13-9.14 Strings
- The In and Not In operators
- The Accumulator Pattern with Strings
- 10.5-10.8 Lists
- List Membership
- Concatenation and Repetition
- List Slices
- List are Mutable
- RQ07: Sept 21, 2017
- 9.8 and 9.16 - Strings
- String Comparison
- Looping and Counting
- 10.9 - 10.12 - Lists
- List Deletion
- Objects and References
- Aliasing
- Cloning Lists
- 11.1-11.4 - Files
- Working with Data Files
- Finding a File on your disk
- Reading a File
- Iterating over lines in a file
- RQ08: Sept 26, 2017
- Lists
- 10.17 - Lists and for loops
- 11.5-11.7 Files
- Alternative File Reading Methods
- Writing Text Files
- Glossary
- RQ09: Sept 28, 2017
- 8.1-8.5 More about Iteration
- Iteration Revisited
- The for loop revisited
- The while statement
- Randomly Walking Turtles
- The 3n+1 Sequence
- 9.12, 9.17-21 Strings
- Traversal and the while Loop
- A find function
- Optional Parameters
- Character classification
- Summary
- Glossary
- EXAM 1
- RQ10: Oct 12, 2017
- 10.13-10.14, 10.16-10.22 - Lists
- Repetition and References
- List Methods
- Append vs Concatenate
- Using Lists as Parameters
- Pure Functions
- Which is Better?
- Functions that Produce Lists
- List Comprehensions
- RQ11: Oct 17, 2017
- This reading is not in the textbook but here: Sets
- RQ12: Oct 19, 2017
- 10.23-10.25 - Lists
- Nested Lists
- Strings and Lists
- list Type Conversion Function
- RQ13: Oct 24, 2017
- 10.26-10.29 - Lists
- Tuples and Mutability
- Tuple Assignment
- Tuples as Return Values
- Glossary
- 12.1-12.3 - Dictionaries
- Dictionaries
- Dictionary Operations
- Dictionary Methods
- RQ14: Oct 26, 2017
- 12.4-12.6 - Dictionaries
- Aliasing and Copying
- Sparse Matrices
- Glossary
- RQ15: Oct 31, 2017
- 8.10 - More About Iteration
- 2-Dimensional Iteration:Image Processing
Note 1: This has three parts (The RGB Color Model,
Image Objects, Image Processing and Nested Iteration)
- RQ16: Nov 2, 2017
- 8.6-8.9, 8.12 - More About Iteration
- Newton's Method
- Other uses of while
- Algorithms Revisited
- Simple Tables
- Glossary
- EXAM 2
- RQ17: November 28, 2017
- 15.1-15.7 Recursion
- What is Recursion?
- Calculating the Sum of a List of Numbers
- The Three Laws of Recursion
- Converting an Integer to a String in Any Base
- Visualizing Recursion
- Sierpinski Triangle
- Glossary
- RQ18: November 30, 2017