
Instructor: Chris Fischer
E-mail: cfischer@cis.udel.edu
Office hours: Before Class and by Appointment
Web: http://www.cis.udel.edu/~cfischer/
Teaching Assistant: Dan Waegel
E-mail: danielw@udel.edu
Office:
Office hours:
You can also expect that I will provide you a LOT of resources to succeed in this course. I will provide as many outside references and sample code as I can. I will also make myself available for questions as much as possible. If possible, reach me by email, during the week. I will usually get back to you very quickly. However, I do have two rules.
Other important points:
You are strongly encouraged to come to class. While I will put
some material up on the web, it will be hard to do well in this course
without coming to class. Reading the relevant chapters ahead of time is
also a good idea. Last semesters class convinced me to post the
Powerpoints
ahead of time. I'll do that again, but only if people show up regularly
for class.
Special Rule: Your final grade cannot be more than one letter grade higher than your exam average. This ensures that your final grade reflects your mastery of the basic concepts of the course.
Lab/Project submission: All Labs must be submitted to the TA,
either in person on in their mailbox. All Projects must be personally
handed
to the TA - if you place it in their mailbox, you will receive a zero
on
it.
Homework Submission: Homeworks should be submitted to me. If
the homework involves a programming assignment, it has to be done on a
computer, with appropriate test runs.
All papers MUST be stapled. Unstapled papers will lose 10 points.
Coding conventions: I will go over coding conventions in the second or third lecture. Your code should generally follow it, or you will lose points. Code that can't be followed clearly by other people is far less useful (more on this later.)
Lateness: Assignments are due by the end of class on the date they are due. After that, they lose 5%/day, up to a maximum of 7 days late. Labs can be turned into my or the TA's mailbox, with the DATE and TIME of submission clearly marked on it. Any paper that doesn't have the date and time clearly marked on it on the first page (Either circled, if the printout shows a timestamp, or otherwise written) will lose 10 points.
Academic Dishonesty: DO YOUR OWN WORK. You as specifically NOT permitted to discuss solutions to problems with other students or share code.
I haven't been out of school long enough to forget how rampant cheating is. So before you think about sharing solutions, know this much going in.
Grading Policies: I'm going to grade on the standard curve
(>93=A,
>90=A-, >87 B+, etc.). This is guaranteed. Depending on class
performance
or other factors, I might adjust this scale down (to help everyone) I
will
never adjust it up.
Also, all your grades will be posted online (via a code name) so that
you always know exactly where you are throughout the semester. Please
check
online and make sure all your grades are correct.
Your grade for the semester will be based on:
| Tests: | 50% of final grade | |
| Projects: | 25% of final grade | |
| Labs + Homeworks | 25% of final grade |
Class participation can positively affect a borderline grade.

| Date | Topics | Resources | Readings | What's Due |
| August 30 | Introduction To Course | Lecture 1 | ||
| September 1 | C++ Basics | Lecture 2 Notes from Dr. Conrad | Savitch Chapter 1 | |
| September 4 | NO CLASS - Labor Day | |||
| September 6 | Coding Standards | |||
| September 8 | ||||
| September 11 | Finish coding standards, Numbers, Files |
Lecture 3 |
Savitch Chapter 2, Using Unix 1 |
Lab 1 |
| September 13 | Control Flow |
|||
| September 15 | File Processing |
Floating Point examples |
||
| September 18 | Lecture 4 |
Lab 2 |
||
| September 20 | Functions |
Lecture 5 |
||
| September 22 | Savtich Chapter 3, Using Unix 2 |
|||
| September 25 | Lab 3 |
|||
| September 27 | More functions, random numbers |
Lecture 6 |
Homework 1 |
|
| September 29 | Review HW1, Start arrays |
Random Number exploit |
||
| October 2 |
Review for Exam |
Project 1 |
||
| October 4 |
Exam 1 |
|||
| October 6 |
Arrays |
Lecture 7 |
Savitch Chapter 5 |
|
| October 9 |
Sorting, Structs, Strings |
Lecture 8 |
Lab 4 |
|
| October 11 |
||||
| October 13 | Pointers |
Lecture 9 |
new.cc |
|
| October 16 | More Pointers |
dynarray.cc |
Lab 5 |
|
| October 18 | Linked Lists |
Lecture 10 |
linked.cc |
|
| October 20 | newlinked.cc |
|||
| October 23 | Lecture 11 |
Lab 6 |
||
| October 25 | Begin Classes |
Lecture 12 |
||
| October 27 | ||||
| October 30 | Review for Exam |
Project 2 |
||
| November 1 |
Exam 2 |
|||
| November 3 | More classes | Lecture 13 |
Savitch Chapter 6 |
|
| November 6 | More classes |
Lecture 14 |
||
| November 8 |
Constructors |
Lecture 15 |
Savitch Chapter 7 |
|
| November 10 |
this, friend functions |
Lecture 16 |
Savitch Chapter 8 |
|
| November 13 |
Inheritance |
Lecture 17 |
Savitch Chapter 14 |
Lab 7 |
| November 15 |
||||
| November 17 |
Inheritance |
Lecture 18 |
||
| November 20 |
Virtual Functions |
Lecture 19 |
Lab 8 |
|
| November 22 |
Copy constructors |
|||
| November 24 | NO CLASS - Thanksgiving |
|||
| November 27 |
||||
| November 29 |
string.cc inherit.cc |
|||
| December 1 | inherit1115.cc |
|||
| December 4 |
Abstract Classes |
Lecture 20 1204.cc | Project 3 |
|
| December 6 |
Review for Final |
|||
| Final Exam, Tues Dec 12 | 8-10AM, KRB 204 |