CS1101 Introduction to Program Design
Lecture Schedule and Notes

Note: The "Extra Exercises" column provides additional practice exercises that you can try. These will not be graded, and are separate from the homework assignments. You are always welcome to bring questions on these practice problems to office hours.

Exam Dates

Exam 1: Monday, Sept 12
Exam 2: Monday, Sept 26
Exam 3: Thursday, October 13

Getting Started

DateLecture TopicReadingsExtra ExercisesDueExtra Notes
8/25Introduction to Programming and Scheme HTDP Chapter 1
HTDP Chapter 2
    Lecture 1 objectives
8/26Expressions, Images, and Functions HTDP Chapter 2
HTDP Section 2.2 Exercises
HTDP Section 2.3 Exercises
Homework 0
Lecture 2 objectives
Using images
Creating Operators
8/29Function Composition and Conditionals HTDP Chapter 3
HTDP Section 3.3 Exercises
  Lecture 3 objectives
8/30Conditionals and Strings HTDP Chapter 4
HTDP Chapter 5
Creating helpers
HTDP Section 4.3 Exercises
HTDP Section 4.4 Exercises
HTDP Section 5.1 Exercises
Homework 1
Lecture 4 objectives
The Pens Code
Symbols and Strings
Study Guide on Functions
9/1Structures HTDP Chapter 6
HTDP Section 6.3 Exercises
HTDP Section 6.4 Exercises
HTDP Section 6.7 Exercises
  Lecture 5 objectives
9/2Structures and Nested Structures       Lecture 6 objectives
9/5Labor Day -- no class        
9/6Mixed Data and the Design Recipe HTDP Chapter 7
HTDP Section 7.2 Exercises
Homework 2
Lecture 7 objectives
Study Guide on Structures
Data Definitions and Templates for Structs
Design Recipe Worksheet [pdf]


DateLecture TopicReadingsExtra ExercisesDueExtra Notes
9/8Introduction to lists HTDP Chapter 9.1
HTDP Chapter 9.2
HTDP Section 9.1 Exercises
HTDP Section 9.2 Exercises
  Lecture 8 objectives
Data Definition and Template for Lists
When to think when programming
9/9More on Lists HTDP Chapter 9.3
HTDP Chapter 9.4
HTDP Chapter 9.5
HTDP Section 9.5 Exercises
  Lecture 9 objectives
9/12Exam 1 (in class) Exam Prep Guide
9/13Producing Lists; Sorting HTDP Chapter 10.1
HTDP Section 10.1 Exercises
Homework 3
Lecture 11 objectives
programs from class
insertion sort
9/15Lists of structures HTDP Section 10.2
HTDP Section 10.2 Exercises
  Lecture 12 objectives
Using Templates Effectively
Data Defn and Template for List of Struct
9/16More Lists of structures   more at end of today's code file
  Lecture 13 objectives
list-of-courses code
9/19More lists of structs   Problems from class
  Lecture 14 objectives
Titles-by discussion

Trees and Cooperating Data Structures

DateLecture TopicReadingsExtra ExercisesDueExtra Notes
9/20Trees HTDP Chapter 14.1
HTDP Section 14.2 Exercises
More tree problems
Homework 4
Lecture 15 objectives
Tree Data Definitions
Notes on trees [ppt]
Notes on trees [pdf]
9/22Trees and Hierarchies       Lecture 16 objectives
On filling in templates
9/23More on Hierarchies HTDP Chapter 15.1
HTDP Chapter 15.2
HTDP Section 15.1 Exercises
HTDP Section 15.3 Exercises
  Lecture 17 objectives
Code from class
9/26Exam 2 (in class) Exam Prep Guide
9/27More on Hierarchies, introduction to Local HTDP Section 18
HTDP Section 18.1 Exercises
Homework 5
Lecture 19 objectives
Code from class

Programs with Memory

DateLecture TopicReadingsExtra ExercisesDueExtra Notes
9/29Introduction to Set! HTDP Chapter 34
HTDP Chapter 35
    Lecture 20 objectives
Class code and notes
9/30Program Design with Set! HTDP Chapter 36
HTDP Section 37.1
    Lecture 21 objectives
Vending machine code
ticket counter and notes

Changing Structures and Linking Data

DateLecture TopicReadingsExtra ExercisesDueExtra Notes
10/3Changing Structure Contents HTDP Section 40.3
HTDP Section 40.5
    Lecture 22 objectives
Class notes
Class code
Set!, set-structure! and memory
10/4More on set with structures HTDP Chapter 41
  Homework 6
Lecture 23 objectives
Class code and notes


DateLecture TopicReadingsExtra ExercisesDueExtra Notes
10/6Counting cycles       Lecture 24 objectives
Class code and notes
10/7Accumulating Data HTDP Chapter 31
    Lecture 25 objectives
Class code and notes
10/10Functions on Natural Numbers HTDP Chapter 11
    Lecture 26 objectives
10/11Wrap Up and Course Evals     Homework 7
10/13Exam 3 (in class) Exam Prep Guide
Practice Problems
Sample Exam

A MzScheme script generated this page on Mon Oct 10 08:47:13 EDT 2005.