CS 16: Problem Solving with Computers I, Spring ā€™19, Nichols

Lecture Notes and Slides:

lecture date notes ready? description slides
2019-04-02 lect01 true Course overview, a gentle intro to C++ - Standard I/O pdf
2019-04-04 lect02 true Control Structures, I/O in programs pdf
2019-04-09 lect03 true Loops (for, while, do-while), doubles pdf
2019-04-11 lect04 true Functions pdf
2019-04-16 lect05 true Makefiles pdf
2019-04-18 lect06 true Data representation pdf
2019-04-23 lect07 true File I/O pdf
2019-04-30 lect08 true Arrays pdf
2019-05-02 lect09 true Pointers pdf
2019-05-07 lect10 true Defining your own data types pdf
2019-05-09 lect11 true The good, bad and ugly about pointers, C++ Memory Model, Dynamic memory allocation (Heap), Heap vs Stack pdf
2019-05-14 lect12 true Linked lists, Dynamic memory allocation (Heap), Heap vs Stack pdf
2019-05-21 lect13 true Recursion, More Linked lists pdf
2019-05-23 lect14 true Recursion and Strings pdf
2019-05-28 lect15 true Recursion, Strings, Wrap-Up pdf
2019-05-30 lect16 true Wrap up pdf
2019-06-04 lect17 true Wrap up and final review pdf
2019-06-06 lect18 true Wrap up and final review pdf

Homework and quizzes:

num ready? description assigned due
h01 true Chapter 1: Computer systems, introduction to C++ Tue 04/02 09:00AM Sat 04/06 11:59PM
h02 true Chapter 2: Variables and assignments, Input/output, Data types and expressions, Simple flow control Fri 04/05 09:00AM Fri 04/12 11:59PM
h03 true Chapter 3: Boolean expressions, multiway branches, more loops Fri 04/12 09:00AM Fri 04/19 11:59PM
h04 true Chapter 4: Predefined and programmer defined functions Fri 04/19 09:00AM Sun 04/28 11:59PM
h05 true Chapter 5: Call by value and call by reference Fri 04/26 09:00AM Fri 05/03 11:59PM
h06 true Chapter 7 and 10: Pointers Fri 05/03 09:00AM Fri 05/10 11:59PM
h07 true Chapter 6: File IO, Chapter 9: Dynamic memory allocation Fri 05/10 09:00AM Sun 05/19 11:59PM
h08 true Chapter 13 Linked lists Fri 05/17 09:00AM Fri 05/24 11:59PM
h09 true Chapter 14: Recursion Fri 05/24 09:00AM Fri 06/07 11:59PM
h10 true Chapter 8: Strings Fri 05/24 09:00AM Fri 06/07 11:59PM

Labs:

num ready? description assigned due
lab00 true Getting started Wed 04/03 09:00AM Tue 04/09 11:59PM
lab01 true Crunching numbers: Loops and functions Wed 04/10 09:00AM Tue 04/16 11:59PM
lab02 true ASCII Art: Logical operators, integrating github into your workflow Wed 04/17 09:00AM Tue 04/23 11:59PM
lab03 true Counting ducks: File I/O and flow control Wed 04/24 09:00AM Wed 05/01 11:59PM
lab04 true Odds and primes: Fun with arrays and makefiles Wed 05/01 09:00AM Tue 05/07 11:59PM
lab05 true Fun with shapes: Pointers Wed 05/08 09:00AM Tue 05/14 11:59PM
lab06 true Advanced array lists and dynamic arrays Wed 05/15 09:00AM Tue 05/21 11:59PM
lab07 true Linked lists Wed 05/22 09:00AM Tue 05/28 11:59PM
lab08 true Anagrams, palindromes: Strings and recursion Wed 05/29 09:00AM Fri 06/07 11:59PM

Exams

num ready? description exam date
e01 true Midterm exam - I Thu 04/25 12:30PM
e02 true Midterm exam - II Thu 05/16 12:30PM
e03 (12pm - 3pm) true Final Exam Mon 06/10 12:00PM

Most of the materials Iā€™m using this quarter were made by Diba Mirza. Anything good about this class can be attributed to her, and all bad things are totally my fault :)