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 :)