CS16 Spring 2020
Provide questions/suggestions for Lawton to answer/talk about in lecture by following this link! Please ask all questions for the next week by 7pm on Friday.
All announcements will be posted on Piazza at this link.
Links to live lab sections and office hours
Link to all “whiteboard” notes written in lecture (select the appropriate file for the lecture).
Link to code written in lecture (select the appropriate folder for the lecture).
Getting a terminal on your computer
Lecture Videos, Notes, and Slides
Link to video and notes | Date | Description and link to slides |
---|---|---|
Lecture 1 | Mon 03/30 | Course overview, a gentle intro to C++ - Standard I/O (slides) |
Lecture 2 | Wed 04/01 | Control Structures, I/O in programs (slides) |
Lecture 3 | Mon 04/06 | Loops (for, while, do-while), doubles, functions (slides) |
Lecture 4 | Wed 04/08 | Functions (slides) |
Lecture 5 | Mon 04/13 | Makefiles, Data Representation (slides) |
Lecture 6 | Wed 04/15 | Data Representation, File I/O (slides) |
Lecture 7 | Mon 04/20 | File I/O, Arrays (slides) |
Lecture 8 | Mon 04/27 | Pointers (slides) |
Lecture 9 | Wed 04/29 | References, defining your own data types with structs (slides) |
Lecture 10 | Mon 05/04 | The good, bad and ugly about pointers, C++ Memory Model, Dynamic memory allocation (Heap), Heap vs Stack (slides) |
Lecture 11 | Wed 05/06 | Linked lists (slides) |
Lecture 12 | Mon 05/11 | Q&A, Dynamic Arrays, Intro to Recursion (slides) |
Lecture 13 | Mon 05/18 | Recursion (slides) |
Lecture 14 | Wed 05/20 | More recursion, strings (slides) |
Lecture 15 | Wed 05/27 | Recursion, Strings, Wrap-Up (slides) |
Lecture 16 | Mon 06/01 | Wrap-Up, Review (slides) |
Lecture 17 | Wed 06/03 | Review (slides) |
num | ready? | description | assigned | due |
---|---|---|---|---|
lab00 | true | Getting started | Mon 03/30 12:00AM | Sun 04/05 11:59PM |
lab01 | true | Crunching numbers: Loops and functions | Mon 04/06 12:00AM | Sun 04/12 11:59PM |
lab02 | true | ASCII Art: Logical operators, integrating github into your workflow | Mon 04/13 12:00AM | Sun 04/19 11:59PM |
lab03 | true | Counting ducks: File I/O and flow control | Mon 04/20 12:00AM | Sun 04/26 11:59PM |
lab04 | true | Odds and primes: Fun with arrays and makefiles | Mon 04/27 12:00AM | Sun 05/03 11:59PM |
lab05 | true | Fun with shapes: Pointers | Mon 05/04 12:00AM | Sun 05/10 11:59PM |
lab06 | true | Advanced array lists and dynamic arrays | Mon 05/11 12:00AM | Tue 05/19 11:59PM |
lab07 | true | Linked lists | Mon 05/18 12:00AM | Tue 05/26 11:59PM |
lab08 | true | Anagrams, palindromes: Strings and recursion | Mon 05/25 12:00AM | Fri 06/05 11:59PM |
num | ready? | description | assigned | due |
---|---|---|---|---|
h01 | true | Chapter 1: Computer systems, introduction to C++ | Mon 03/30 11:00AM | Sun 04/05 11:59PM |
h02 | true | Chapter 2: Variables and assignments, Input/output, Data types and expressions, Simple flow control | Fri 04/03 11:00AM | Fri 04/10 11:59PM |
h03 | true | Chapter 3: Boolean expressions, multiway branches, more loops | Fri 04/10 11:00AM | Fri 04/17 11:59PM |
h04 | true | Chapter 4: Predefined and programmer defined functions | Fri 04/17 11:00AM | Fri 04/24 11:59PM |
h05 | true | Chapter 5: Call by value and call by reference | Fri 04/24 11:00AM | Fri 05/01 11:59PM |
h06 | true | Chapter 7 and 10: Pointers | Fri 05/01 11:00AM | Fri 05/08 11:59PM |
h07 | true | Chapter 6: File IO, Chapter 9: Dynamic memory allocation | Fri 05/08 11:00AM | Sun 05/17 11:59PM |
h08 | true | Chapter 13 Linked lists | Fri 05/15 11:00AM | Sun 05/24 11:59PM |
h09 | true | Chapter 14: Recursion | Fri 05/22 11:00AM | Fri 06/05 11:59PM |
h10 | true | Chapter 8: Strings | Fri 05/22 11:00AM | Fri 06/05 11:59PM |
num | ready? | description | exam date |
---|---|---|---|
e01 | true | Midterm exam - I | Wed 04/22 11:00AM |
e02 | true | Midterm exam - II | Wed 05/13 11:00AM |
e03 (12pm–3pm) | true | Final Exam | Thu 06/11 12:00PM |