Course
Outline
CS162:
Introduction to Computer Science
Fall
2013
Supplemental lecture videos will be
required and assigned during the term on a weekly basis. These videos will be
announced and posted on the D2L Course Content
(the following
outline is subject to change!)
WEEKS
#1 and 2:
10/1-10/13 Watch
Topic #1 Videos
Date: Topic: Reading/Projects:
10/1 Topic #1 ***
Please read the syllabus ***
• Introduction:
Syllabus, Objectives for the Course, Malik: 1, Shk: 1
Class
Introduction, and Review Outline.
10/3 • Overview and/or Review of C++ Malik: 2, 3
· Structure of C++ Programs
· C++ Statements
· Data Types
· Operators
Lab - Putting the pieces together of a C++ Program
· Demonstration: Using Unix, Editing and Compiling programs
· Demonstration: Submitting files into D2L
By 10/8 – Get a CS Account
Submit a
sample program to D2L’s dropbox and experiment with
submitting programs though this technique.
10/8
• I/O, Conditionals, Repetition, Arrays Malik: 4, 5, Shk:
2
· Branching Statements
· Loops and Relational Expressions
· I/O and formatting output
· Arrays, Strings, String I/O
10/9 Demonstration: Creating a complete program in C++
· Explore C++ assignment statements, conditionals, and truth tables
· Explore C++ arrays of characters
WEEKS #3 and 4:
10/14-10/27 Watch
Topic #2 Videos – Functions, Structures, External
Files
10/15 Homework #1 Due - Submit to the D2L Dropbox
Date: Topic: Reading/Projects:
10/15 Topic #2
Overview of C++ Functions Malik: 6, 7
· Prototypes vs. Function Definitions
· Pass by value, by reference, by const
· Passing fundamental types and arrays
10/17 Functions:
•
Demonstration: Designing using modularity
· Demonstration: Writing programs using functions with arguments
· Explore C++ functions, pass by reference, pass by value, and returning values
10/22 Topic
#2: Structures Malik: 11, Shk: 3
·
What
they are
·
How
to create them
·
Working
with arrays of structures
10/24 External Files and Structs
• Lecture: External Data Files
· Demonstration: Writing programs using structs and external files
· Explore C++ functions working with structs
· Experience external data files
WEEKS #5 and 6:
10/28-11/3 Watch Topic #3 – Classes
10/29 Homework #2 Due - Submit to the D2L Dropbox
Date: Topic: Reading/Projects:
10/29 Topic
#3 C++ Class Construct, Data Abstraction and Abstract Data Types
• Data Abstraction and Abstract Data
Types Malik: 12
• The C++ Class, Class versus Structs Shk: 4
• Class Constructors, Defining and
Using Functions and Classes.
• General discussion of the C++
Class and creating .h files
• Constructors
10/31 More on Classes
• Demonstration: Designing a system that uses classes and structs
· Explore the C++ class construct
·
REVIEW for the Midterm Exam
11/5 Midterm Exam for in-class
students
TBD Midterm Exam for online
students (date/time announced during 3rd
week)
11/7 Pointers and Dynamic Memory Malik:
14
•
Introduce pointer variables, memory allocation and deallocation
• Examples manipulating pointers Shk: 5.1-5.4
WEEKS #7 and 8:
11/12-11/24 Watch Topic #4 – Part I
Videos
11/12 Homework #3 Due - Submit to the D2L Dropbox
Date: Topic: Reading/Projects:
11/12 Topic #4
Dynamic
Data Structures Malik:
18
•
Review of Pointers and the new Operator
•
Pointer Arithmetic
11/14 Experience Pointers and Dynamic Memory
•
Introduction to Linked Lists Shk: 5.5-5.6
•
Demonstration: Using pointers and linked lists
•
Explore Classes and dynamic structures
11/19 Topic #4 Continued
Dynamic
Data Structures
•
Insert and Removal Algorithms
11/21 Dynamic Data Structures
•
Demonstration: Inserting and Removal
•
Explore writing functions to traverse and modify a linear linked list
WEEKS #9 and 10:
11/25-12/6 Watch
Topic #4 – Part II Videos on LLL
11/26 Homework #4 Due - Submit to the D2L Dropbox
Date: Topic: Reading/Projects:
11/26 Topic #5 Recursion Malik: 17
Shk: 4.10, 6
• The Nature of Recursion, Tracing a Recursive
Function, Recursive Mathematical Functions, Recursive Functions with Array
Arguments
• Work through examples of recursion in class
• Problem
solving with Recursion
Holiday on November 28th
- Thanksgiving
12/3 Recursion and LLL: Practicing
•
Demonstration: Recursion and LLL
•
Explore writing recursive functions
Prepare for the Final Exam
12/5 Topic #6 Arrays with Structured Elements Malik: 9
• Arrays of Arrays: Multidimensional
Arrays, Shk: 8
Creating Arrays of Arrays, Arrays of
Structs, and Arrays of Class Elements.
12/6 Homework #5 Due - Submit to the D2L Dropbox ***NO LATE HOMEWORK #5’s
In-class Final Exam
Time (Section 001): Tuesday
December 10th 10:15-12:05
Final Exam for online
students TBD
(date/time announced during 7th week)