Date |
Topic |
Required Reading |
Notes |
Assignments Out |
Slides |
1/8 |
Intro, Python review |
all of chapter 1 |
|
Project 1, due on Moodle at 11:55pm 1/15. |
slides |
1/10 |
C++ syntax |
2.1 - 2.6 |
|
|
|
1/13 |
If statements |
2.7 - 3.6 |
|
|
|
1/15 |
Loops |
3.7 - 4.11 |
|
|
|
1/17 |
Loop practice |
|
in-class activities |
|
|
1/22 |
Data types and functions |
5.1, 5.2, 5.4-5.6 |
in-class activities |
|
|
1/24 |
C++ arrays |
6.1-6.5 |
|
|
|
1/27 |
More C++ arrays, vectors, linear search |
6.6, 6.10 |
in-class activities |
Project 2, due on Moodle at 11:55pm 2/3. |
|
1/29 |
More vectors, filtering, transforming, min/max |
|
(see previous activities) |
|
|
1/31 |
Pass by value, pass by reference |
5.15 |
|
|
|
2/3 |
Strings and structs |
22.2-22.4 (see note under resources above) |
|
|
|
2/5 |
Practice with strings and structs |
|
in-class activities |
|
|
2/7 |
File reading |
all of chapter 8 |
|
Project 3, due on Moodle at 11:55pm 2/17. |
|
2/10 |
File reading practice |
|
in-class activities |
|
|
2/12 |
(Midterm I) |
|
|
|
|
2/14 |
Memory management, pointers |
7.1, 7.2, 7.3 |
|
|
|
2/17 |
Pointers II (passing pointers to functions, vectors of pointers) |
7.4 |
|
|
|
2/19 |
Pointers lab |
|
|
|
|
2/21 |
Pointers wrapup, dynamic memory |
5.12 |
|
|
|
2/24 |
Dynamic memory II |
|
|
Project 4, due on Moodle at 11:55pm 3/6. |
slides |
2/26 |
Dynamic memory III (Myvector lab) |
5.12 |
in-class activities |
|
|
2/28 |
Recursion I |
5.20 |
|
|
slides |
3/3 |
(Snow day) |
|
|
|
|
3/5 |
Recursion II |
|
|
|
|
3/7 |
(Prof at conference) |
|
|
|
|
3/17 |
Recursion practice |
|
in-class activities |
|
|
3/19 |
Recursive maximum, binary search |
19.2 |
in-class activities |
|
slides |
3/21 |
Finish binary search lab, double recursion |
|
|
|
|
3/24 |
Objects I |
9.1-9.4 |
|
|
slides |
3/26 |
Objects II: Interface & implementation, setters & getters |
9.6, 9.7, 9.11 |
|
Project 5, due on Moodle at 11:55pm 4/9. |
slides |
3/28 |
Objects III: Constructors |
|
|
|
slides |
3/31 |
Objects IV: Destructors, pointers to objects, and rational lab |
9.9, 9.10, 9.13 |
in-class activities |
|
slides |
4/2 |
(Midterm 2) |
|
|
|
|
4/4 |
Operator overloading |
11.1-11.7 |
|
|
slides |
4/7 |
Inheritance I |
12.1, 12.2 |
|
|
slides |
4/9 |
Inheritance II |
12.3, 12.4, 12.5 |
|
|
slides |
4/11 |
Inheritance III |
|
in-class activities |
|
slides |
4/14 |
Polymorphism |
13.1-13.3 |
in-class activities |
Project 6, due on Moodle at 11:55pm 4/28. |
slides |
4/16 |
Polymorphism |
|
|
|
|
4/21 |
Linked lists |
|
|
|
slides (running time of algorithms only) |
4/23 |
Linked lists |
|
|
|
slides (wrapup only) |