Syllabus
CSCI 2610
Introduction to Computer Science II
Summer 2000
Instructor: | Karl Abrahamson |
Office: | Austin 233 |
Office hours: | M-F 1:00-2:00 |
Phone: | 328-1879 |
Email: | karl@cs.ecu.edu |
Course web page: |
www.cs.ecu.edu/~karl/2610/sum00 |
My web page: |
www.cs.ecu.edu/~karl |
Text: | Problem Solving with C++: The object of
programming (second edition) by
Walter Savitch |
Course objectives
This course focuses on small scale software development using C++. We
will cover the C++ programming language and principles and techniques for
writing small scale software. Topics will include
- Basics of C++: variables, assignments, conditionals, loops,
input and output.
- Functions. Writing and understanding functions. Recursion.
- Elementary algorithm design.
- Elementary object-oriented programming.
- Working with files.
- Arrays and algorithms using arrays. Strings.
- Elements of dynamic memory allocation.
Prerequisites
The prerequisite for this course is CSCI 2510. You should have
obtained some familiarity with the basics of C++. Some people
in this course might not have seen C++ before. I will cover the
language from the beginning, so there will be a chance to catch up,
but those unfamiliar with C++ will need to work hard to learn the
language basics.
Grading
The grading will be on the basis of three exams and approximately
twelve small programming assignments. The
exams will count for 24% each, and the programs will count for a total of
28%. The final exam will not be comprehensive. It will count as the
third exam.
This course has a lab component, CSCI 2611. Since writing programs
is an important part of this course, the lab assignments will
consitute the programming component of your grade for CSCI 2610.
Your grade in CSCI 2611 will be based solely on the lab assignments.
Cutoffs for grades will tentatively by 90% for an A, 80% for a B,
70% for a C and 60% for a D. Those cutoffs will not be raised.
Attendance policy and incompletes
I will not take attendance. It is up to you to attend class. If you
miss a class, it is up to you to obtain notes and any other information
that was provided in the class. Excuses that you did not know about
something because you did not come to class and did not obtain the
information will not count for anything at all.
The laboratory offers you a chance to get help while working on
your programming assignments. I strongly urge you to take advantage
of that help. You will do much better on the programs that way, and
will spend less time working on them.
If you decide not to attend the labs, you are on your own. If,
near the end of the term, you discover that it was a poor choice not
to attend the labs, you will have to live with your choice and the
consequences of it.
No incompletes will be issued in this course except for extraordinary
circumstances, and even then only if you are nearly done already.
In particular, NO INCOMPLETES WILL BE GIVEN BECAUSE YOU WERE NOT ABLE
TO COMPLETE THE LAB ASSIGNMENTS, EITHER BECAUSE YOU WERE UNABLE TO FIND
THE TIME TO WORK ON THEM OR BECAUSE YOU WERE UNABLE OR UNWILLING TO
ATTEND THE LABS.
Summer session
The summer session goes by very quickly. In five weeks, we
will cover what is covered in fifteen weeks during the fall
or spring sessions. There are no breaks, and you will have
to work hard. You should count on working more than
three times as hard as during the regular term, because it
takes more work to learn material faster.
Here are some tips on how to do well in the
summer session.
- Attend class. Arrive on time. Attend the lab.
- Do not allow yourself to fall behind. Work on the
homework early. Do not wait until just before the deadline.
- Schedule time to work outside of class. You will need to
plan to work on programs outside of the lab, and you will need
to read on a daily basis.
- Read your notes and the book twice. Take a break
in between. You will learn much more this way.
- If you are having trouble, seek help soon. Do not
wait until it is too late.
Course web page
Material for this course is posted on page
http://www.cs.ecu.edu/~karl/2610/sum00.
More material will be added as the term progresses. All
assignments will be posted on the web page.
The course web page contains material on
grading of programs that you should read.
Asking questions
There are surely going to be things that you do not understand.
Some things are only explained somewhat tersely, and it is expected
that not everyone will understand them. ASK QUESTIONS!
Ask questions early, not when it has become too late to make use
of the answer. Ask questions in class when you do not understand
something. Ask questions in the lab. Do not sit and stare at the
monitor waiting for the computer monitor to give you some inspiration.
Monitors are not great inspirers.