CS 16: Problem Solving with Computers -I, Spring 2019, Prof. K
Welcome to CS 16!
All course announcements are on Piazza.
You can use a shortcut url: tinyurl.com/cs16s19ykk.
Information
Lecture Notes and Slides
Lecture Notes:
lecture date |
notes |
ready? |
description |
reading |
2019-04-02 |
lect01 |
true |
Introductions and Course overview |
|
2019-04-04 |
lect02 |
true |
Hello World! + unix, vim |
Chapter 1, Section 1.1 and 1.3 |
2019-04-09 |
lect03 |
true |
Variables and types, expressions, control structures (if-else), output |
Chapter 2 |
2019-04-11 |
lect04 |
true |
User input/output and loops |
Chapter 3 |
2019-04-16 |
lect05 |
true |
User Input; Functions |
Section 4.3-4.6 |
2019-04-18 |
lect06 |
true |
Loops, switch, functions + makefile |
Chapter 3 + notes |
2019-04-23 |
lect07 |
true |
Midterm preparation and overview / Reading from files |
Sections 6.1 and 6.2 |
2019-04-30 |
lect08 |
true |
Intro to lab04: Arrays; C++ Build Process, Makefiles, TDD |
Lecture notes; Section 7.1 up to p.388 |
2019-05-02 |
lect09 |
true |
Passing Parameters to functions; Numerical base conversions |
Sections 5.2-5.3 + slides |
2019-05-02 |
lect10 |
true |
Structs |
Section 10.1 |
2019-05-09 |
lect11 |
true |
Pointers |
Section 9.1, 10.1 |
2019-05-14 |
lect12 |
true |
Dynamic Arrays |
Section 9.2 |
2019-05-16 |
lect13 |
true |
Dynamic Memory; Nodes and Linked Lists |
Chapters 9, 13.1 |
2019-05-21 |
lect14 |
false |
|
|
2019-05-28 |
lect15 |
true |
String and recursion |
Section 8.1-8.2, Chapter 14 |
2019-05-30 |
lect16 |
true |
More recursion |
Chapter 14 + slides |
2019-06-04 |
lect17 |
true |
Sample exam questions walkthrough |
Notes |
2019-06-06 |
lect18 |
true |
Vectors |
Section 8.3 |
2019-06-04 |
lect19 |
false |
|
|
2019-06-06 |
lect20 |
false |
|
|
Homework
num |
ready? |
description |
assigned |
due |
h02 |
true |
Lab05 with pass-by-reference |
Thu 05/09 06:00PM |
Mon 05/13 11:59PM |
Lab
num |
ready? |
description |
assigned |
due |
lab00 |
true |
Getting started |
Wed 04/03 08:00AM |
Tue 04/09 11:00PM |
lab01 |
true |
Crunching numbers: Loops and functions |
Tue 04/09 08:00AM |
Tue 04/16 11:59PM |
lab02 |
true |
ASCII Art: Logical operators, integrating github into your workflow |
Wed 04/17 08:00AM |
Tue 04/23 11:59PM |
lab03 |
true |
Counting ducks: File I/O and flow control |
Wed 04/24 09:00AM |
Tue 04/30 11:59PM |
lab04 |
true |
Odds and primes: Fun with arrays and makefiles |
Mon 04/29 10:15PM |
Tue 05/07 11:59PM |
lab05 |
true |
Fun with shapes: Pointers |
Wed 05/08 08:00AM |
Tue 05/14 11:59PM |
lab06 |
true |
Advanced array lists and dynamic arrays |
Wed 05/15 08:00AM |
Tue 05/21 11:59PM |
lab07 |
true |
Linked lists |
Wed 05/22 08:00AM |
Fri 05/31 11:59PM |
lab08 |
true |
Anagrams, palindromes: Strings and recursion |
Wed 05/29 08:00AM |
Tue 06/04 11:59PM |
lab09 |
true |
Putting What You Learned into Practice |
Wed 06/05 08:00AM |
Thu 06/13 11:00PM |
Exams
num |
ready? |
description |
exam date |
e01 |
true |
Midterm exam - I |
Thu 04/25 05:00PM |
e02 |
true |
Midterm exam - II |
Thu 05/23 05:00PM |
e03 (at 7:30PM) |
true |
Final Exam |
Wed 06/12 07:30PM |