Class meeting | 2:00-3:15 MW Austin 307 |
Lab meeting | 2:00-3:50 T Austin 209 |
Instructor | Karl Abrahamson |
Office | Sci&Tech C-113 |
Office hours | MW 3:30-4:30pm; T 4:00-5:00pm; Th 3:00-5:00pm; or by appointment |
Phone | 328-9689 |
abrahamsonk@ecu.edu | |
Course web page | www.cs.ecu.edu/~karl/2310/fall09/ |
My web page | www.cs.ecu.edu/~karl/ |
Text | Java: An Introduction to Problem Solving & Programming by Walter Savitch |
You should be signed up for both CSCI 2310 section 003 and CSCI 2311 section 004. If you are signed up for a different section of CSCI 2311, then change the section.
The prerequisite for this course is Math 1065 (college algebra). You will not need to be a master of techniques such as factoring polynomials that are covered in such a course, but I will rely on a solid understanding on the basics of mathematics, such as numbers, expressions and functions, that such a course provides.
This is a course on computer programming and algorithmic problem solving. The objective is to develop a solid foundation in computer programming knowledge and skills. After you have completed the course successfully you should be competent at writing small-scale programs using a variety of programming and algorithmic techniques.
This course will be taught using Java as a programming language. But it is not a course on Java.
This is not a course on using tools. We will discuss tools when they are needed, but they are not the focus. The focus is problem solving and programming.
The following is a partial list of topics to be covered.
Values and expressions. Types of values. Variables and assignment.
Control structures. Choice. Loops. Algorithm design using choice and loops.
Defining functions. Understanding and explaining functions.
Recursion. Algorithm design using recursion.
Input and output. Working with files.
Designing and implementing programs. Top-down design. Successive refinement.
Arrays. Algorithms using arrays.
Objects. Creating and using objects from the library.
Classes. Creating your own kinds of objects.
Assorted case studies and examples.
Throughout, the focus is on simplicity and clarity, rather than on trying to cover as much of a language or library as possible.
There will be quizzes on 9/2, 9/9, 9/16, 9/23, 9/30, 10/7, 10/21, 10/28, 11/4, 11/11, 11/18, 12/2, for a total of 12 quizzes. I will drop your lowest quiz score. Quizzes will begin at the start of class and last for about 20 minutes, with class continuing after the quiz is done. Grading will be as follows.
Eleven quizzes (best of the twelve) | 3% each |
A comprehensive final exam | 21% |
Approximately 10 programming assignments | 36% total |
Attendance in both 2310 and 2311 | 10% |
Cutoffs for grades will tentatively be 90% for an A, 80% for a B, 70% for a C and 60% for a D. Those cutoffs will not be raised.
No incompletes will be issued in this course except for extraordinary circumstances, and even then only if you are nearly done already, and have done work of sufficient quality that it is realistic that you can pass the course. An incomplete will not be given simply because a student could not find the time to do the course work. By registering for this course, you are committing to finding time to do the work.
Attend class. Attend the lab. Arrive on time.
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. The time available during the lab will not be enough, and you will need to put in additional time.
Read your notes and the class notes or book twice. Take a break (like a whole day) in between. You will learn much more that way.
If you are having trouble, seek help soon. Do not wait until it is too late.
Smoking is not permitted in classrooms. Please turn off telephones while in class.
Students are expected to abide by the university's Student Honor Code. The homework that you do is a critical part of your education. Each student is expected to do his or her own work. That does not mean you are not allowed to discuss your ideas with other students. Working in groups can be beneficial, and I encourage you to talk through ideas with other students. But outright copying is plagiarism, and is unacceptable. Students who copy other students' work, or who allow their work to be copied, or who copy their work from other sources, such as the internet, will receive no credit.
In the event of a weather emergency, you can get information about ECU from the following sources:
ECU emergency notices | http://www.ecu.edu/alert |
---|---|
ECU emergency information hotline | 252-328-0062 |
East Carolina University seeks to comply fully with the Americans with Disabilities Act. Students requesting accommodations based on a covered disability must go to the Department for Disability Support Services, located in Slay 138, before any accommodations can occur. The telephone number is 252-737-1016.