CS 16: Problem Solving with Computers -I , Winter 18

Lecture Notes and Slides:

lecture date notes ready? description slides before slides after
2018-01-16 lect01 true Course overview, a gentle intro to C++ - Standard I/O pdf
2018-01-18 lect02 true Git, Control Structures, I/O in programs pdf Annotated pdf
2018-01-23 lect03 true For loops, functions, git, intro to lab01 pdf Annotated pdf
2018-01-25 lect04 true More loops, working with floats and doubles pdf Annotated pdf
2018-01-30 lect05 true Gentle intro to TDD, intro to lab02 pdf Annotated pdf
2018-02-01 lect06 true File IO, intro to lab03 pdf Annotated pdf
2018-02-06 lect07 true Separate compilation with makefiles pdf Annotated pdf
2018-02-08 lect08 true Data representation, arrays, intro to lab04 pdf Annotated pdf
2018-02-13 lect09 true C++ Memory model, arrays pdf Annotated pdf
2018-02-15 lect10 true Pointers and structs, references, call by value, address and reference, intro to lab05 pdf Annotated pdf
2018-02-20 lect11 true Arrays of structs, pointer arithmetic pdf Annotated pdf
2018-02-22 lect12 true Dynamic memory allocation, Heap vs Stack pdf Annotated pdf
2018-02-27 lect13 true Linked lists pdf Annotated pdf
2018-03-06 lect14 true More on linked-lists pdf Annotated pdf
2018-03-08 lect15 true Strings pdf Annotated pdf
2018-03-13 lect16 true Recursion: advanced problems on linked-lists pdf Annotated pdf
2018-03-15 lect17 true Wrap up and final review pdf

Homework:

num ready? description assigned due
h01 true Chapter 1: Computer systems, introduction to C++ Fri 01/19 09:00AM Tue 01/23 08:00PM
h02 true Chapter 2: Variables and assignments, input and output Tue 01/23 09:00AM Tue 01/30 08:00PM
h03 true Chapter 2: Data types and expressions, Simple flow control Tue 01/23 09:00AM Tue 01/30 08:00PM
h04 true Chapter 3: Boolean expressions, multiway branches, more loops Tue 01/30 09:00AM Tue 02/06 08:00PM
h05 true Chapter 3: Loops Tue 01/30 09:00AM Tue 02/06 08:00PM
h06 true Chapter 4: Predefined and programmer defined functions Tue 02/06 09:00AM Tue 02/13 08:00PM
h07 true Chapter 6: File IO Tue 02/06 09:00AM Tue 02/13 08:00PM
h08 true Chapter 7: Arrays and Chapter 9 Pointers Tue 02/13 09:00AM Tue 02/20 08:00PM
h09 true Chapter 5: Call by value and call by reference Tue 02/13 09:00AM Tue 02/20 08:00PM
h10 true Chapter 10: Pointers Tue 02/20 09:00AM Tue 02/27 08:00PM
h11 true Chapter 9: Dynamic memory allocation and dynamic arrays), Chapter 13: Linked-lists Tue 02/20 09:00AM Tue 02/27 08:00PM
h12 true Chapter 13 Linked-lists contd. Tue 03/06 09:00AM Tue 03/13 08:00PM
h13 true Chapter 8: Strings Tue 03/06 09:00AM Tue 03/13 08:00PM
h14 true Chapter 14: Recursion Tue 03/13 09:00AM Fri 03/16 08:00PM

Labs:

num ready? description assigned due
lab00 true Getting started with C++ functions and github's web interface Tue 01/16 09:00AM Mon 01/22 11:59PM
lab01 true Crunching numbers: Loops and functions Tue 01/23 09:00AM Mon 01/29 11:59PM
lab02 true ASCII Art: Logical operators, integrating github into your workflow Tue 01/30 09:00AM Mon 02/05 11:59PM
lab03 true Counting ducks: File I/O and flow control Tue 02/06 09:00AM Mon 02/12 11:59PM
lab04 true Odds and primes: Fun with arrays and makefiles Tue 02/13 09:00AM Wed 02/21 11:59PM
lab05 true Fun with shapes: Pointers Tue 02/20 09:00AM Mon 02/26 11:59PM
lab06 true Linked lists and array lists Fri 03/02 09:00AM Fri 03/16 11:59PM
lab07 true Advanced arrays and linked lists Tue 03/06 09:00AM Mon 03/19 11:59PM
lab08 true Anagrams, palindromes: Strings and recursion Tue 03/13 09:00AM Mon 03/19 11:59PM