|Date||Topic||Required Reading||Notes||Assignments Out||Slides|
|1/11||Introduction, Python warmup||slides|
|1/13||C++ basics, data types, cout, cin||All of chapter 1, 2.1-2.5||Zybook P&C 1.2-1.6, 1.11, and 2.1-2.4, due by 1/17 11:59pm.
(See the Zybook instructions link above for how to interpret these directions.)
|1/18||If statements||3.1-3.4||lab||Read Zybook 3.1-3.4. Do P 3.2-3.4, and Zylab 15.1 (Leap years), due by 1/19 11:59pm.||(no slides)|
|1/20||While loops||4.1-4.3, 4.8||Read Zybook 4.1-4.3. Do P 4.2-4.3, and Zylab 15.2 (Collatz), due by Tue 1/24 11:59pm.
Project 1, due Mon 1/30 11:55pm.
|1/27||Practice with loops and functions||5.6||lab||Read Zybook 4.5-4.6, and 5.1-5.5. Do P 4.5-4.6, due by Sun 1/29 11:59pm.
Read Zybook 5.1-5.5. Do P 5.2, 5.3, 5.5, plus Zylab 15.3 (Strange sum), due by Tue 1/31 11:59pm.
|2/1||Memory diagrams, pass by value, pass by reference||5.9||worksheet||Read Zybook 6.1-6.8, do Zylab 15.4 (Average temperatures), due Thu 2/2 11:59pm.
Do P 5.9, 6.4, 6.7; plus C 6.4, 6.7, due by Sun 2/5 11:59pm.
|2/3||Finish pass by value, pass by reference|
|2/6||Vector practice, accumulation pattern||6.8|
|2/8||Strings and structs||14.11-14.14||Read Zybook 14.11 and do participation exercises, due by Thu 2/9 11:59pm.
Project 2, due Fri 2/17 5:00pm.
|2/10||Strings and structs practice|
|2/17||File reading and vector lab||Do Zylab 15.5, due by Tue 2/21 11:59pm.|
|2/20||Classes||7.1, 7.2||Project 3, due Thursday 3/2 11:59pm.||slides|
|2/24||Classes: constructors/destructors||7.5, 7.6||Read 7.1, 7.2, 7.4. Do P 7.1, 7.2, 7.4, due by Sunday 2/26, 11:59pm.||slides|
|2/27||Classes: const methods, rational lab time||lab||slides|
|3/1||Classes: more rational lab time||lab||slides|
|3/3||Big-oh notation||Do Zylab 15.6, due by Tuesday, 3/14, 11:59pm.||slides|
|3/13||Recursion I||Project 4, due Tuesday 3/28 11:55pm.||slides|
|3/17||Recursion III: lab day||lab||(no slides)|
|3/20||Recursion IV: binary search||lab||slides|
|3/22||Pointers I||8.2||Read Zybook 8.2, do P 8.2 (due Thu 3/23 11:59pm), and Zylab 15.7 (recursion lab, due Sun 3/26 11:59pm).||slides|
|3/27||Pointer worksheet||(no slides)|
|3/31||Dynamic memory: MyVector lab||lab||Project 5, due Wednesday, Apr 12, 11:55pm.||slides|
|4/3||Dynamic memory: lab||lab||Do either Zylab 15.8 or 15.9 by Tuesday, Apr 4, 11:59pm. (Doing both is highly recommended.)||slides|
|4/7||Linked lists I: Review of myvector||8.5|
|4/10||Linked lists II: traverse and insert algorithms|
|4/12||Linked lists III: delete algorithm and lab||lab|
|4/17||Linked lists IV: continue lab||lab||Project 6, due Monday, May 1, 11:55pm.|
|4/19||Inheritance I: syntax||10.1, 10.2||slides|