- Instructor:
-
Thomas P. Kelliher
Hoyt 160
Office phone: 946-7290
Home phone: 946-3544 (emergencies only, please)
email: Send mail to kelliher AT DOMAIN abacus.westminster.edu
URL: http://www.westminster.edu/~kelliher
Office hours: MW 3:00--4:00pm. TR 1:00--2:30pm. Other times by
appointment.
- Class:
-
Hoyt 150
MWF 1:50--2:50pm
- Objectives:
-
The objectives of this class are to provide an introduction to the
discipline of Computer Science, the hardware and software of computer
systems, and, especially, the solving of problems by writing programs.
- Textbook:
-
Y. Uckan, Problem Solving Using C++, Structured and Object Oriented
Programming Techniques, Irwin, 1995.
- Required Materials:
-
A few 3.5" floppy diskettes. Preferably, these should be high
density diskettes.
For some of the programming assignments, you
may be required to turn in a diskette, which will be returned to you as
soon as possible. The diskette you turn in must be a high density diskette
formatted to 1.44MB capacity.
- Additional Resources:
-
Turbo C++ 3.0 User's Guide, Borland International, 1992. The
reference manual for the Turbo C++ development environment. Department copy
on reserve in Mack Library.
- Grading:
-
Grade Distribution
A = [90--100]
B = [80--90)
etc.
I use +/- grading sparingly.
Course Point Distribution
There will be approximately 1000 total points for the class. They will be
distributed as follows:
- Assignments --- Assignments will vary from simple programs which
will be due one week after they are given out to longer, multi-week
projects. Assignments will be collected during class on the due date.
Any assignment received after this time will be considered late, and
will be accepted only by prior agreement.
Some in-class assignments (closed labs) for credit may be given. If you
are not present when an in-class assignment is given, but have a valid
excuse, you will be permitted to make-up the work. Otherwise, you will
not be permitted to make-up the work.
- Unannounced Quizzes --- Five short unannounced quizzes will be
given throughout the semester. Each quiz will cover the reading
assignment for the day it is given and will be worth 20 points.
- Midterms --- There will be two in-class midterms, on March 8 and
April 19. If you cannot take one of these midterms, let me know as soon
as possible. If you have a good reason, a make-up will be scheduled.
This make-up must be scheduled to be taken within 48 hours of the
in-class midterm. Each midterm will be worth 175 points.
- Final --- The cumulative final will be worth 250 points.
No extra credit is available.
- Course Handouts:
-
Most course handouts will be made available once in class. After that,
they may be obtained from my personal home page on the World Wide Web (see
the URL above). I also expect to distribute homework and exam solutions
through my home page.
- Attendance:
-
Attendance of classes is expected, but not required. It
is your responsibility to catch up on missed class work. I keep a record
of attendance for my own information, but this record has no bearing upon
your grade.
- Integrity:
-
Academic dishonesty will not be tolerated. Refer to the Handbook for
Students and the Cheating Policy of the Department of Mathematics and
Computer Science. Relevant points include:
-
Program/module plagiarism will be suspected if a programming assignment
results in two or more non-trivial program/module solutions so similar
that one can be converted to another by a mechanical transformation.
-
Cheating will be suspected if a student who was to complete an
assignment cannot adequately explain the intricacy of their
solution nor the techniques used to generate that solution.
A first offense will result in a grade of zero points for the assignment,
Any subsequent offenses may result in a charge of academic dishonesty being
filed with the Dean of the College, along with a grade of zero.
That said, I realize that Computer Science is best learned in a
collaborative environment. You should work together and enhance
each others' understanding of the material. However, you are ultimately
responsible for your own learning. By depending too strongly on someone
else for help with an assignment, you most definitely jeopardize your
ability to perform well on a midterm or final. The name of anyone
with whom you collaborate on an assignment must be listed on the
assignment.
- Tentative Initial Schedule:
-
It is your responsibility to read the assigned material before class. What
we do in class will not necessarily be what is in the reading.
All chapter readings are from Uckan.
-
- Feb. 5: Introduction. 1.1, 1.2.
-
- Feb. 7: Computer Hardware and Software. 1.3--1.5.
-
- Feb. 9: Problem Solving Using Computers. 1.6--2.5. Homework 1 out.
-
- Feb. 12: The Elements of Pseudocode. 2.6.
-
- Feb. 14: Implementation, Testing, and Maintenance. 2.7--2.11.
-
- Feb. 16: C++'s Vocabulary. 3.1--3.3. Homework 1 in. Homework 2
out.
-
- Feb. 19: C++'s Grammar. 3.4, 3.5.
-
- Feb. 21: Getting Started in C++. 3.6, 3.7.
-
- Feb. 23: Program Debugging. 3.8--3.10. Homework 2 in. Homework 3
out.
-
- Feb. 26: Arithmetic Operators, Expressions, and Precedence.
4.1--4.3.
-
- Feb. 28: Additional Arithmetic Operators and Assignment Operators.
4.4--4.6.
-
- Mar. 1: Expression Types, Casts, and the Math Library. 4.7--4.9.
Homework 3 in.
-
- Mar. 4: Arithmetic Expression Examples and Style. 4.10--4.12.
-
- Mar. 6: Midterm 1 Review.
-
- Mar. 8: Midterm 1.