Course
Outline Section 002 ÒOnlineÓ
CS162:
Introduction to Computer Science
Winter
2013
Lecture videos, due dates, and
readings should follow this schedule!
(the following
outline is subject to change! All changes will be emailed to your pdx.edu email
address
Week of: Topic: Reading/Projects:
Week #1
1/8 Topic
#1 ***
Please read the syllabus ***
¥ Introduction: Syllabus,
Objectives for the Course, Malik: 1, Shk: 1
Class Introduction,
and Review Outline.
¥ Overview and/or Review of C++ Malik: 2, 3
á Structure of C++ Programs
á C++ Statements
á Data Types
á Operators
¥ Putting the pieces together of a C++ Program
o Demonstration: Using Unix, Editing and Compiling programs
o Demonstration: Submitting files into D2L
Week #2
á
By 1/15 Ð Get a CS
Account
á
Submit a sample program to D2LÕs dropbox
and experiment with submitting programs though this technique.
1/15
¥ 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
By the end of the second week, make sure you can create a complete program in C++ (on unix)
á Explore C++ assignment statements, conditionals, and truth tables
á Explore C++ arrays of characters
Week #3
1/22 Homework
#1 Due - Submit to the
D2L Dropbox
1/22 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
By the end of
the third week, make sure you can create a complete program in C++ written with
functions and arguments
¥
Be prepared to design using modularity
á
Write programs using functions with arguments
Week #4
1/29 Topic #2: Structures Malik: 11, Shk: 3
á
What
they are
á
How
to create them
á
Working
with arrays of structures
External
Files and Structs
¥ Lecture Video: External Data Files
á
Be prepared to write programs using structs and external files
á
Explore C++ functions working with structs
á
Experience external data files
Week #5
2/5 Homework #2 Due - Submit to the D2L Dropbox
2/5 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
More
on Classes
á Practice with classes and attempt to design a system that uses classes and structs
á Explore the C++ class construct
á
Watch for email about REVIEW for the Midterm Exam
Week #6
2/12 In-class (Section 001) Midterm
Exam *** Online exam times will be announced once
PSU provides classrooms (after week #3)***
2/14 Pointers and Dynamic Memory Malik:
14
¥
Introduce pointer variables, memory allocation and deallocation
¥ Examples manipulating pointers Shk: 5.1-5.4
Week #7
2/19 Topic #4
Dynamic
Data Structures Malik:
18
¥
Review of Pointers and the new Operator
á
Pointer
Arithmetic
2/21 Homework #3 Due - Submit to the D2L Dropbox
2/21 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
Week #8
2/26 Topic #4 Continued
Dynamic Data Structures
¥
Insert and Removal Algorithms
¥
Demonstration: Inserting and Removal
¥
Explore writing functions to traverse and modify a linear linked list
Be
prepared to draw pointer diagrams, create and destroy linear linked lists.
Practice
these questions:
1.
Insert at
the beginning of a linear linked list
2.
Add at the
end of a linear linked list
3.
Display
all items in a linear linked list
4.
Display
every other item in a linear linked list
5.
Display just
the last item in a linear linked list
6.
Remove
the first item from a linear linked list
7.
Remove
the last item from a linear linked list
Week #9
3/5 Homework #4 Due - Submit to the D2L Dropbox
3/5 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
Explore
Recursion
¥ Work through examples of recursion using linked lists
Week #10
3/12 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.
Prepare for the Final Exam
Ð watch for email to your pdx.edu account
Practice
Recursion and linear linked lists as you prepare for the final exam
¥
Explore writing recursive functions
3/15 Homework #5 Due - Submit to the D2L Dropbox ***NO LATE HOMEWORK #5Õs
Inclass Final Exam Time (Section 001):Comprehensive
Final Exam Tuesday
March 19th 10:15-12:05
*** Online exam times will be announced once
PSU provides classrooms (after week #7)***