
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: Roger Craig
E-mail: rcraig@cis.udel.edu
Office: Smith Hall 102
Office hours: Thursday 1-3PM
Web: http://www.baryon.cis.udel.edu/CISC181/
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.
Emailing: When emailing general questions, please cc the TA as well. Also, to avoid spam filters, try to email from your udel.edu address only.
Lab/Project submission: All Labs must be submitted to the TA,
either in person on in their mailbox. The due date for the lab is the date and time of your lab on the week the lab is due. For example, the lab listed due on Monday, September 10th is due that Monday for people will the Monday lab, and due on Tuesday the 11th for people with the Tuesday lab.
All Projects are due in lecture the exact day listed on the calendar. They must be personally
handed to me in class.
If you place it in a mailbox, you will receive a zero!
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. The following things are specifically not allowed.
I haven't been out of school long enough to forget how rampant cheating can be in this course. Anyone who has had me can probably tell you I'm pretty laid back - but I will not tolerate cheating at all, because it really demotivates and hurts students who spend long hours working hard. 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 29 | Introduction To Course | Lecture 1 | ||
| August 31 | C++ Basics | Lecture 2 | Savitch Chapter 1 | |
| September 3 | NO CLASS - Labor Day | |||
| September 5 | Coding Standards | |||
| September 7 | ||||
| September 10 | Finish coding standards, Numbers, Files |
Lecture 3 Bad Char Good Char |
Savitch Chapter 2, Using Unix 1 |
Lab 1 |
| September 12 | Control Flow |
|||
| September 14 | File Processing |
Floating Point examples |
||
| September 17 | Lecture 4 |
Lab 2 |
||
| September 19 | Functions |
Lecture 5 |
||
| September 21 | Savtich Chapter 3, Using Unix 2 |
|||
| September 24 | Lab 3 |
|||
| September 26 | More functions, random numbers |
Lecture 6 |
structs.txt |
|
| September 28 | Start arrays |
Random Number exploit |
||
| October 1 |
Review for Exam |
Project 1 |
||
| October 3 |
Exam 1 |
|||
| October 5 |
Arrays |
Lecture 7 |
Savitch Chapter 5 |
|
| October 8 |
Sorting, Structs, Strings |
Lecture 8 |
||
| October 10 |
||||
| October 12 | Pointers |
Lecture 9 |
new.cc |
|
| October 15 | More Pointers |
dynarray.cc |
Lab 4 |
|
| October 17 | Linked Lists |
Lecture 10 |
linked.cc |
|
| October 19 | newlinked.cc |
|||
| October 22 | Lecture 11 |
Lab 5 |
||
| October 24 | Begin Classes |
Lecture 12 |
||
| October 26 | Fall Break - No Class! |
|||
| October 29 | More Linked List/Pointers |
Lab 6 |
||
| October 31 |
In Depth c-strings |
|||
| November 2 | Start classes(exam 3) | Lecture 13 |
Savitch Chapter 6 |
|
| November 5 | Review for Exam 2 |
Lecture 14 |
Project 2 |
|
| November 7 |
Exam 2 |
Lecture 15 |
Savitch Chapter 7 |
|
| November 9 |
Continue classes |
Lecture 16 |
Savitch Chapter 8 |
|
| November 12 |
Constructors, Destructors |
Lecture 14 |
Savitch Chapter 14 |
Lab 7 |
| November 14 |
Class Composition, this pointer |
Lecture 15 |
||
| November 16 |
Friend functions, operator overloading |
Lecture 16 |
||
| November 19 |
Inheritance |
Lecture 17 |
||
| November 21 |
No Class |
" |
||
| November 23 | NO CLASS - Thanksgiving |
|||
| November 26 |
Inheritance |
Lecture 19 |
||
| November 28 |
Virtual Functions |
string.cc inherit.cc | Lab 8 |
|
| November 30 | Work on Projects/Lab 8inherit1115.cc |
|||
| December 3 |
Abstract Classes |
Lecture 20 1204.cc | Project 3 |
|
| December 5 |
Review for Final |
|||
| Final Exam, TBD |