PREREQUISITES: Introduction to Programming (COP-2210, or equivalent). You must drop the course if you haven't gotten a C or better in a basic programming course. No knowledge of C or C++ is assumed. Basic program development skills and debugging skills are assumed. This course is lots of work. If you are thinking about taking an extra course, you are strongly encouraged to pick another semester in which to do it.

INSTRUCTOR: Prof. Mark Allen Weiss

OFFICE HOURS: You are free to stop by my office (ECS-353) any time you can find me. My office hours represent a time when I am (more or less) guaranteed to be available. This semester this is Tuesday and Thursday, 2:00 - 3:20 PM and 7:50 - 9:00 PM (except the following hockey nights: 1/28, 1/30, 2/20, 3/27). Note: I am in class for two periods prior to this one, so forget about last minute debugging help. Sorry -- that's the way the schedule worked out. You can also contact me by email to weiss email address. My office phone is FIU-2036.

LANGUAGES AND PLATFORMS: This course will be conducted in C++. No prior knowledge of C or C++ is assumed. This is not a course on C++; it is a course on general programming principles. However, since we will be doing C++, we might as well do it right. I will cover all important language features except inheritance. Time permitting, we will do GUI programming with Visual C++. I assume that you are reasonably comfortable in one of the following: Pascal, C, C++, Ada. If all you know is Basic or Fortran, you are in the wrong course.

The books... Data Structures Cover C++ How to Program

TEXT: There are two course texts. One is my book Algorithms, Data Structures, and Problem Solving with C++; the other is any C++ reference. C++: How to Program by the father and son team of Deitel and Deitel. is available in the bookstore. You may choose an alternative to Deitel and Deitel (e.g. Lippman, Pohl, Nagler), but stay away from the elementary C++ texts.

COURSE GRADING: Grades will be based on approximately 11 programs, at least one exam and a final examination. Each exam is worth 2 programs, the final counts for 3 programs. You need 70% to get a C. I reserve the right to change the method of assigning grades, including changing the number of assignments or exams, but in no case will a curve be applied.

PROGRAMS: Barring tragedy, I will not accept late programs. Your submission must include source code and sample output. I will generally specify what the data is. You must work on your own. The assignments and if appropriate, input data, will be placed here.