CS 161 - Introduction to Computer Science I

Fall 2017: MWF 11 - 11:50am, GILB 124

Calendar

All items are tenative and subject to change

Date Lecture Slide Slide Notes Assigned Reading Assignments
Week #0 - Videos
9/20 Introduction, Syllabus MIT Lecture 1, What is CS?, Why study CS?
09/22 What is computer programming? slide1 slide1-notes Wiki Chap. 1 & Miller Lecture 1
Week #1 - Videos
09/25 Programming in C++/Data Types, Variables, and Constants slide2 slide2-notes Miller Lecture 2 & Downey Chap 2
09/27 Variables & Arithmetic Expressions slide3 slide3-notes
09/29 User Input, New Ops: ++, --, +=, etc., & Begin Design: If-else slide4 slide4-notes MIT Lecture 2, Downey Chap 4.1-4.6, & Miller Lecture 5 Assignment #1 Due Sunday, 10/01 by 11:59pm on TEACH
Week #2 - Videos
10/02 Conditional Execution: Switch Statements & random numbers slide5 slide5-notes Wiki Chap. 2
10/04 Loops (for, while, do/while) slide6 slide6-notes Downey Chap 6.1-6.3
10/06 Example Loops & C++ String Objects slide7 slide7-notes Assignment #2 Due Sunday, 10/08 by 11:59pm on TEACH
Week #3 - Videos
10/09 More Loop Examples, Strings, and cin slide8 slide8-notes Miller Lecture 3 & Downey Chap 3
10/11 More Loops/Strings, Program Errors, & Begin Decomposition slide9 slide9-notes
10/13 Begin Decomposition, Void vs. Value-returning Functions, & Pass by Value slide10 slide10-notes Assignment #3 Design Due Sunday, 10/15 by 11:59pm on Canvas
Week #4
10/16 Overloading Functions & Default Args slide11 slide11-notes
10/18 Exam I Review Review Exam - No Answers Review Exam - Answers
10/20 Exam I Assignment #3 Due Sunday, 10/22, by 11:59pm on TEACH
Week #5 - Videos
10/23 Exam I Results Exam - No Answers Exam - Answers
10/25 Recap Default Args/Overloading & C++ References vs. Pointers slide12 slide12-notes
10/27 Creating Functions Reference vs. Pointer Demo/Begin Recursion slide13 slide13-notes Assignment #4 Design Due Sunday, 10/29 by 11:59pm on Canvas
Week #6 - Videos
10/30 Finish Recursion/Begin Memory Model slide14 slide14-notes
11/01 Introduction to Arrays slide15 slide15-notes
11/03 Introduction to 1-D Arrays (Static vs. Dynamic) slide16 slide16-notes Assignment #4 Due Sunday, 11/05, by 11:59pm on TEACH
Week #7 - Videos
11/06 1-D Arrays/C++ vs. C Style Strings slide17 slide17-notes
11/08 Static/Dynamic with Functions slide18 slide18-notes
11/10 No class!!! Veterans Day!!! Assignment #5 Design Due Sunday, 11/12, by 11:59pm on Canvas
Week #8 - Videos
11/13 Multi-Dimensional Arrays (Static & Command-Line Arguments) slide19 slide19-notes
11/15 Multi-Dimensional Arrays (Static vs. Dynamic) slide20 slide20-notes
11/17 Multi-Dimensional Arrays in Functions slide21 slide21-notes Review Assignment #5 Due Sunday, 11/19, by 11:59pm on TEACH
Week #9
11/20 Exam II Review Exam II Review - No Answers Exam II Review - Answers Review
11/22 Exam II Review
11/24 No class!!! Thanksgiving Break!!! Assignment #6 Design Due Sunday, 11/26, by 11:59pm on Canvas
Week #10 - Videos
11/27 Exam II Results Exam II - No Answers Exam II - Answers
11/29 Why use structs? & Struct with a Struct slide22 slide22-notes
12/01 Review and Candy!!!! Assignment #6 Due Sunday, 12/03, by 11:59pm on TEACH