Week | Dates | Topic | Chapters | Assignment/Lab | Comments | 1 | 1/8-1/10 | Introduction to Computers and Programming | Chapters 1 and 2 |
There are no labs this week. Assignment 0 |
Course intro. Programs and executables. Compilers and text editors. Output. hello.cpp Basic "Hello, World" program using cout. fortune.cpp Fortune teller program. |
2 | 1/13-1/17 | Variables and I/O | Chapter 2 Variables 1 Variables 2 Variable Names If Statements If Statements in Code Expressions |
Lab 1 Assignment 1 |
Text editors (nano, vi, etc). Basic unix commands. Variables, basic I/O, conditionals, Boolean logic. Mathematical expressions and typecasts. |
3 | 1/20-1/24 | Loops | Chapter 3 Conditionals Conditionals in Code While Loops While Loops in Code |
Lab 2 Assignment 2 |
No class Monday Jan. 20 (MLK / Human Rights Day) Conditionals: if; loops; Boolean logic. List of C++ operators List of C++ keywords (reserved words) |
4 | 1/27-1/31 | More Loops | Interlude 1, Chapter 3 Do-While Loops Do-While Loops in Code For_Loops For Loops in Code |
Lab 3 Assignment 3 |
More Loops: while, do-while, and for. Code for a calculator is here. Code for the game of nim is here. |
5 | 2/3-2/7 | Functions, scope |
Chapter 4
Function Example 1 Function Example 2 |
Lab 4 Assignment 4 |
Functions: arguments, return values, and scope. Switch statements. Structures.
Code for the calculator for lab 4 is here. *** Midterm Exam 1 on Friday, Feb 7 *** A sample exam is here. |
6 | 2/10-2/14 | Testing and Classes |
Interlude 2 and Chapter 5
Intro to Classes Classes in code part A Classes in code part B Classes in code part C (constructors) |
Lab 5 Assignment 5 |
Testing, classes, objects, data members, member functions, dot notation.
|
7 | 2/17-2/21 | More Classes |
Chapter 5 Binary Hexadecimal |
Assignment 6 Lab 6 |
No class Monday Feb. 17 (Presidents' Day) Visibility specifiers: public and private. Opening, reading, and writing files. Code for the pet example is here. |
8 | 2/24-2/28 | Software design; arrays, binary |
Interlude 3, Chapter 5 Arrays Arrays_in_code |
Design: top-down, bottom-up. Arrays, array bounds, binary and hexadecimal numbers. |
9 | 3/3-3/7 | Arrays and pass-by-reference | Chapter 6 |
Arrays, array bounds, pass-by-reference. |
10 | 3/10-3/14 | Spring Recess |
This is a program demonstrating pointers. Please study this program over Spring Recess. |
11 | 3/17-3/21 | Pointers |
Chapter 6 and 7
Interlude 4 Memory and Pointers Part 1 Memory and Pointers Part 2 Memory and Pointers in Code |
Pointers, memory, 2-dimensional arrays.
C style strings, C I/O. *** Midterm Exam 2 on Friday, Mar 21 *** |
12 | 3/24-3/28 | More Pointers | Chapter 8 |
C++ new and delete operators. |
13 | 3/31-4/4 | Linked lists and recursion | Chapter 8 |
Linked lists and recursion. |
14 | 4/7-4/11 | Command-line arguments | Interlude 6 | int main(int argc, char *argv[]); | 15 | 4/14-4/18 | Enumerations, Typedefs and More Linked Lists | 16 | 4/21-4/25 | Searching and Sorting |
| 17 | 4/28-5/2 | No Exam Week |
*** Final Exam on Tuesday, May 6, 8:00-10:00 *** |
---|