Course Outline
CS161
Introduction to Computer Science
Fall 2009
(the
following outline is subject to change!)
Introduction to Computers and
Programming
Date: |
Topic: |
|
9/29 |
Introduction |
**Login to BlackBoard |
|
Syllabus, |
|
|
Objectives for the Course, |
Shk: 1 |
|
Instructor Biography, |
Please read the syllabus |
|
Review Outline. |
|
|
Discuss the Science of Computing |
|
Problem Solving
10/1 |
Introduction to Solving
Problems with Computers |
|
Problem Solving, Abstraction and Program Engineering, Software Development Method, Programming Languages, Processing a High-Level Language Program, Using a Computer. |
|
Examples of what we can do with programs In class: Learn how to login and enter in programs developed in class |
|
Graded Online Class
Discussion: Thought
Process of Problem Solving |
Algorithms
10/6 |
Problem Solving
Fundamentals and Algorithms |
Shk: 2 |
|
Introduction to algorithms Why are algorithms necessary Decision steps in an algorithm, Checking the correctness of an Algorithm, Problem Solving Strategies. |
|
|
Create algorithms in class to prepare for Homework #1 |
|
Date: |
Topic: |
|
|
10/8 |
Survey of Languages
and Examples Introduction to what we can do with different type of languages. |
Shk: 3.1-3.8 |
|
|
Experience examples of the general form of programs, statements, data types. Get familiar with terminology. |
Homework #1 is Due email it to karlafgr@cs.pdx.edu |
|
|
|
|
|
|
Graded Online
Class Discussion: Putting the Pieces Together of a Program |
|
|
10/13 |
What does Selective
Execution mean? |
Shk: 3.9 |
|
Control Structures, Logical Structures, Introduction to
the if statement |
|
|
Experience selective execution in a variety of programming languages. |
|
|
|
|
|
|
|
|
|
|
10/15 |
More Selective
Execution |
|
|
Nested if statements and Multiple Alternatives. |
Homework #2 is Due email it to karlafgr@cs.pdx.edu |
|
Graded Online Class
Discussion: Tracing
a Program or Algorithm, Debugging and Testing Programs. |
|
|
|
|
10/20 |
What about
Repetition? |
Shk: 5.11 |
|
How can we cause code to be repeated? Structured programming versus using go-to’s |
|
|
Evaluate example of programs using loops |
|
|
Example of different types of loops and discuss why/when they are used |
|
10/22 |
Practice Repetition |
|
|
|
|
|
|
|
|
|
Review of for, while, and do-while Loops, Nested Loops, Debugging and Testing Programs, Common Programming Errors |
|
|
|
|
|
|
|
|
|
|
|
|
|
10/27 |
Social,
Professional, Ethical Issues |
Homework #3 is Due |
|
|
|
Review for Midterm |
|
|
|
|
Question and Answer session |
|
|
|
|
Graded Online
Class Discussion: Professional Ethics and Responsibilities |
|
|
|
10/29 Midterm
Procedural
Abstraction
Date: |
Topic: |
|
11/3 |
Solving problems
with functions |
Shk: 4.1-4.9 |
|
Independent Modules, Functions with and without Arguments; Use examples in different languages |
|
11/5 |
Writing Functions in High Level Languages |
|
|
|
|
|
Functions in the Design Process, Using Function Return |
|
|
Values for Decision and |
|
|
Syntax Rules. |
|
|
|
|
|
Graded Online Class
Discussion: Incorrectly Ordered
Argument Lists, |
|
|
Generalized
Functions, Choosing Argument Names. |
|
11/10 |
Working with Arrays and Records |
Shk: 5.1-5.4, 5.13 |
11/12 |
How can arrays be beneficial Graded Online
Class Discussion: Examine examples using arrays Learn high level syntax for array processing |
Homework #4 is Due |
11/17 |
Building Algorithms
and Solving Problems Begin using conditionals, loops, and functions to solve larger problems. Verifying Correctness |
Shk: 8 |
|
|
|
11/19 |
Continue with algorithm development Examine solutions to problems posed in class Graded Online
Class Discussion: Let’s go back to algorithms and rethink our approach! |
|
|
|
|
|
|
|
11/24 |
Software Design Methodologies |
Homework
#5 is Due |
|
The software challenge, the software life cycle, procedural abstraction, modular abstraction, data abstraction |
|
|
|
|
|
|
|
12/1, 12/3 |
Review for the Final |
Homework #6 is Due 12/3 |
|
|
|
|
|
|
|
|
|
|
*** Notice the day and Time of the in-class Final Exam *** Comprehensive Final Exam Tuesday December 8th 10:15am-12:05 |
|