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 ARE SUBJECT TO CHANGE
Reading
- RQ01: Jan 17, 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: Jan 19, 2017
- 2. Simple Python Data (all)
- RQ03: Jan 24, 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.3 Functions
- Functions
- Functions that Return Values
- Variables and Parameters
- RQ04: Jan 26, 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.4-6.6 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: Jan 31, 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: Feb. 2, 2017
- 6.7-6.11 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: Feb. 7, 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: Feb 9, 2017
- Lists
- 10.17 - Lists and for loops
- 11.5-11.7 Files
- Alternative File Reading Methods
- Writing Text Files
- Glossary
- EXAM 1
- RQ09: Feb 21, 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
- RQ10: Feb 23, 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: Feb 28, 2017
- This reading is not in the textbook but here: Sets
- RQ12: Mar 2, 2017
- 10.23-10.25 - Lists
- Nested Lists
- Strings and Lists
- list Type Conversion Function
- RQ13: Mar 7, 2017
- 10.26-10.29 - Lists
- Tuples and Mutability
- Tuple Assignment
- Tuples as Return Values
- Glossary
- 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)
- RQ14: March 9, 2017
- 8.6-8.9, 8.12 - More About Iteration
- Newton's Method
- Other uses of while
- Algorithms Revisited
- Simple Tables
- Glossary
- RQ15: March 21, 2017
- 12.1-12.3 - Dictionaries
- Dictionaries
- Dictionary Operations
- Dictionary Methods
- RQ16: March 23, 2017
- 12.4-12.6 - Dictionaries
- Aliasing and Copying
- Sparse Matrices
- Glossary
- EXAM 2
- RQ17: April 13, 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: April 18, 2017