Syllabus
CSCI 2610
Introduction to Computer Science II
Fall 2000

Instructor:Karl Abrahamson
Office: Austin 233
Office hours: MWF 1:00-2:00, TTh 9:00-10:00, MW 8:00pm-8:30
Phone: 328-1879
Email: karl@cs.ecu.edu
Course web page: www.cs.ecu.edu/~karl/2610/fall00
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, as well as some methods for writing larger scale software, but applied at a small scale. Topics will include

  1. Basics of C++: variables, assignments, conditionals, loops, input and output.

  2. Functions. Writing and understanding functions. Recursion.

  3. Elementary algorithm design.

  4. Elementary object-oriented programming.

  5. Working with files.

  6. Arrays and algorithms using arrays. Strings.

  7. 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 five quizzes (10% each), a comprehensive final exam (25%) and approximately twelve small programming assignments (25% total).

This course has a lab component, CSCI 2611. To avoid overburdening you with programming assignments, the 12 lab assignments will form the programming component of the CSCI 2610 grade. 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.

Those who have chosen not to attend class have, as a rule, done poorly in this course. If you choose not to attend class, then you must live with the consequences of that decision, however bad they are.

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. I will hand back graded programs at the lab.

Historically, students who have attended the laboratory have done much better, on the average, than students who did not attend the laboratory. Failure is common for those who do not attend the lab.

If you decide not to attend the labs, you are on your own. You will need to come to my office to get your graded assignments. You can talk to me during office hours. 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. I will not take responsibility for your decision.

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.

Course web page

Material for this course is posted on page http://www.cs.ecu.edu/~karl/2610/fall00. 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!

A very common mistake in writing programs is to sit in front of a computer staring at the monitor waiting for inspiration to come to you. Read the assignments. If you do not understand what needs to be done, ask questions.

C++ is a fairly unfriendly language. If you get an error that you do not understand, 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.

Students with disabilities

East Carolina University seeks to fully comply with the Americans with Disabilities Act (ADA). Students requesting accommodations based on a covered disability must go to the Department for Disability Support Services, located in Brewster A-114, to verify the disability before any accommodations can occur. The telephone number 252-328-6799.