CS 250 Computer Programming and Problem Solving - FALL 1998 

[ Home | Syllabus | Notes | Glossary | CS250 WEB Version Home Page | Project Page | Final Study Guide]


SYLLABUS

 

Title CS 250 Problem Solving and Programming
Instructor Chris Wild
e-mail wild@cs.odu.edu
Phone (757) 683-4679
Home Page http://www.cs.odu.edu/~wild
Lectures Tuesday/Thursday 4:20-5:35 PM
Office ED 249-2
Class Room BAL 104
Office Hours Tues/Thurs 2:30-4:00 PM
or by appointment
Textbook C++ and Object-Oriented Programming, Kip Irvine, Prentice Hall, 1997, ISBN 0-02-359852-2
Lab Book A Practical Guide to the Unix System, Mark Sobell, Benjamin Cummings, 1995, ISBN 0-8053-7565-1

Objectives: Upon successful completion of this course, the student will have gained an increased understanding of problem solving techniques in software systems. Students will be introduced to recommended methods of program design, development, and implementation. Methods of decomposition, abstraction, and problem solving techniques will be presented. Students will be provided with a working knowledge of  Object-Oriented Design and Programming.. The role of experimentation in Computer Science will also be discussed. This course is based on the C++ language and introduces UNIX and X windows and associated tools to the students.

Laboratory:   is a co-requisite for this course. Students who are not registered for one of the sections of CS 250 lab will not be allowed to remain registered in CS 250.

Attendance: Attendance at classes is not generally required, but students are responsible for all material covered and announcements made in class. Consequently, if you are going to miss class, be sure to get notes, handouts, etc., from another class member. Class notes and other information will be available at the following WebSite: http://www.cs.odu.edu/~cs250.

Late/Missing Work: If a course project assignment is not turned in on the due date or tests are missed, they will receive a grade of zero unless prior permission has been given by the instructor.

Please note that the due dates for assignments are designed to allow more than enough time to complete the assignment. Occasional hardware failures are a fact of life in the computing field. Unless unusually severe or prolonged, such problems are not cause for a due date extension. Similarly, the 48 hours before an assignment due date invariably feature heavy competition among students for the available computing resources. Such competition is never an acceptable reason for requesting an extension. Budget your time accordingly!

Cheating: Everything turned in for grading in this course must be your own work. The instructor reserves the right to to question a student orally or in writing and to use his evaluation of the student's understanding of the assignment and of the submitted solution as evidence of cheating. Violations will be reported to the Honor Council for consideration for punitive action. However, it is entirely appropriate seek and give assistance on procedural matters (such as how to send e-mail, how to run the debugger, how to send files from a home PC to a UNIX workstations). If there is any question on whether a particular behavior is appropriate, the student is encouraged to seek guidance from the instructor.

Grading:

Tests (2) 10% each
Course Project 25%
Lab Work 25%
Final Exam 30%

 

Schedule: (approximate)

Topic
Reading From Irvine Textbook
(page numbers in parentheses)
Date
Introduction Chapter 1 (1-21) Sep 1
Prob Solving & Soft Eng handouts Sep 3
Class on Classes Chapter 2 (22-42) Sep 8
Classier Classes (revised) Chapter 2 (43-59) Chaper 3 (71-72) Sep 10
Function Overloading and Stream I/O Chapter 3(73-96) Sep 15 (last date to withdraw 1/2 tuition)
Composite Classes Chapter 4(106-127) Sep 17
OO Analysis: Class Relationships/Behaviors Chapter 4 (106-127) Sep 22
1) Examples of OO analysis, design and implementation
2) Additional Notes
Chapter 5 (149-177) Sep 24
Test Review Chapters 1-5 (1-177) Sep 29
***** Test 1 Answers *****   Oct 1
Additional Notes OO Design Chapter 5 Oct 6
OO Design Chapter 6 (178-219) Oct 8
Examples Derived Classes Chapter 7 (220-254) Oct 13
Dynamic Memory Allocation Chapter 7 (220-254) Oct 15
Templates  and Linked Lists Review Chapter 11 (377-416) Oct 20
List Objects Chapter 11 (377-416) Oct 22
Project discussion   and Lists continued   Oct 27 (last day to withdraw)
Test 2 Review Chapters 6,7 and 11 Oct 29
***** Test 2  Answers*****   Nov 3
Testing and Example of Random Generation Handouts Nov 5
***** Project phase 1 due *****   Nov 10
Review Test 2   Nov 10
Project discussion/analysis   Nov 12
Templates revisted Chapter 10 (349-372) Nov 17
Algorithm Analysis handouts Nov 19
***** Project phase 2 due *****   Nov 19
Project discussion/analysis   Nov 24
Exception Handling Chapter 8 (281-299) Dec 1
Operator Overloading Chapter 9 (303-325) Dec 3
Polymorphism/  Recursion handouts Dec 8
***** Course project due *****   Dec 8
Last class -- review Comprehensive Dec 10
***** Final exam ***** Comprehensive Dec 15 (3:45-6::45 PM)
Back to Top