Course Outline Section 001 ÒIn-classÓ
CS162: Introduction to Computer Science
Fall 2012
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!)
Date: Topic: Reading/Projects:
9/25 Topic
#1 ***
Please read the syllabus ***
¥ Introduction: Syllabus,
Objectives for the Course, Malik: 1, Shk: 1
Class Introduction,
and Review Outline.
9/27 ¥
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
á Demonstration: Using Unix, Editing and Compiling programs
á Demonstration: Submitting files into D2L
á
By 10/2 Ð Get a CS Account
á
Submit
a sample program to D2LÕs dropbox and experiment with submitting programs
though this technique.
10/2
¥ 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/4 Required Lab Time ***BRING
a LAPTOP, NETBOOK, or Tablet. If
you do not have access to your own device, then make arrangements with your
instructor so that one will be provided during this lab session. 24 hour
advanced notice is required.
á Demonstration: Creating a complete program in C++
á Explore C++ assignment statements, conditionals, and truth tables
á Explore C++ arrays of characters
10/9 Homework
#1 Due - Submit to the
D2L Dropbox
10/9 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/11 Required Lab Time ***BRING
a LAPTOP, NETBOOK, or Tablet. If
you do not have access to your own device, then make arrangements with your
instructor so that one will be provided during this lab session. 24 hour
advanced notice is required.
¥ Demonstration: Designing using
modularity
á Demonstration: Writing programs using functions with arguments
á Explore C++ functions, pass by reference, pass by value, and returning values
10/16 Topic #2:
Structures Malik: 11, Shk: 3
á
What they are
á
How to create them
á
Working with arrays of structures
10/18 Required Lab Time ***BRING a LAPTOP,
NETBOOK, or Tablet. If
you do not have access to your own device, then make arrangements with your
instructor so that one will be provided during this lab session. 24 hour
advanced notice is required.
¥ Lecture:
External Data Files
á Demonstration: Writing programs using structs and external files
á Explore C++ functions working with structs
á Experience external data files
10/23
Homework #2 Due - Submit to the D2L Dropbox
10/23 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/25 Required Lab Time ***BRING a LAPTOP,
NETBOOK, or Tablet. If
you do not have access to your own device, then make arrangements with your
instructor so that one will be provided during this lab session. 24 hour
advanced notice is required.
á Demonstration: Designing a system that uses classes and structs
á Explore the C++ class construct
10/30 Pointers
and Dynamic Memory Malik:
14
¥ Introduce pointer variables, memory
allocation and deallocation
¥ Examples manipulating pointers Shk: 5.1-5.4
11/1 Midterm
Exam
11/6 Topic
#4
Dynamic
Data Structures Malik:
18
¥ Review of Pointers and the new
Operator
¥ Introduction to Linked Lists Shk: 5.5-5.6
11/8
Homework #3 Due - Submit
to the D2L Dropbox
11/8 Required Lab Time ***BRING a LAPTOP,
NETBOOK, or Tablet. If
you do not have access to your own device, then make arrangements with your
instructor so that one will be provided during this lab session. 24 hour
advanced notice is required.
¥ Demonstration: Using pointers and
linked lists
¥ Explore Classes and dynamic
structures
11/13 Topic #4
Continued
Dynamic
Data Structures
¥ Insert and Removal Algorithms
11/15 Required Lab Time ***BRING a LAPTOP,
NETBOOK, or Tablet. If
you do not have access to your own device, then make arrangements with your
instructor so that one will be provided during this lab session. 24 hour
advanced notice is required.
¥ Demonstration: Inserting and Removal
¥ Explore writing functions to traverse
and modify a linear linked list
11/20
Homework #4 Due - Submit to the D2L Dropbox
11/20 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
11/27 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
11/29 Required Lab Time ***BRING a LAPTOP, NETBOOK, or
Tablet. If you do not have
access to your own device, then make arrangements with your instructor so that
one will be provided during this lab session. 24 hour advanced notice is
required.
¥ Demonstration: Recursion and LLL
¥ Explore writing recursive functions
Recursion
and LLL: Practicing
11/29
Homework #5 Due -
Submit to the D2L Dropbox ***NO LATE HOMEWORK #5Õs
Inclass
Final Exam Time (Section 001):
Comprehensive Final Exam Thursday
December 6th 8am-9:50am