Course Information:

Time:
MTWRF 9:45-11:15 AM
Place:
FB009
Instructor:
Mr. Cong Liu
Office Hours:
MW 3:00-4:00 PM (held in SN144)
Email:
myfirstname at cs dot unc dot edu
URL:
http://www.cs.unc.edu/~cong/teaching/COMP110-SS1-2012.html
Textbook
(Required):
Java: An Introduction to Problem Solving & Programming. Fifth Edition. Walter Savitch and Frank Carrano. Prentice Hall © 2009. ISBN: 0136072259.

Description

This course is an introduction to programming for students with little or no programming experience. There are two primary goals:

  1. To learn fundamental programming skills
  2. To learn systematic and logical thinking

Basic programming concepts include: variables, loops, conditionals, arrays, functions, and classes. Basic problem solving approaches include: abstraction, division into sequential pieces, and division into layers. All code is written in the Java programming language.


Objectives

By the end of this semester, students should be able to:
  1. Develop algorithms.
  2. Develop problem solving techniques.
  3. Apply fundamental programming concepts, such as variables, loops, conditionals, functions, and arrays, in programming assignments.
  4. Use pseudocode and Object Oriented design techniques for the planning and development of programming sequences.
  5. Understand the basic components of computer programming in Java, which can be applied to other languages as well (C, C++, Python, etc.)
  6. Analyze existing programs to identify problems or potential improvements.

Prerequisites

  1. Although this course has no prerequisites, a basic background in math — especially algebra — is required.
  2. I assume basic computer skills (using a web browser, writing email, using word processing applications, downloading and installing software, etc.).
  3. If you are not comfortable using a computer, consider taking COMP 101 ("Power Tools for the Mind") before taking COMP 110.
  4. If you have previous programming experience, such as in a high school course, (especially, a Computer Science AP course) consider taking COMP 401 ("Foundations of Programming") instead. If you are interested in taking COMP 401 without taking COMP 110, please see me first.

Topics


What to Expect

Here are the major parts of all the assignments and projects.
Reading assignments
These will be general directions for reading your text book. It is a better idea to do them before coming to each class.
Assignments
Several written homework will be assigned to help you to better understand the definitions and concepts. There will also be programming assignments, which require the submission of a Java program which generates the correct results.
Exams
There will be an in-class written mid-term exam and a written final exam during the university-scheduled time slot.
Attendance
Attendance is required for this class, and is a factor in your grade. This includes class participation.
Grading
Programming Assignments: 50%
Mid-term exam: 20%
Final exam: 25%
Attendance: 5%

Late Policy

Assignments are on time if they are received at or before 11:59 PM on the due date. After that, assignments are considered late.

Each student has 3 free "late days", which may be used at any time and in any combination. Using a late day gives the student an extra 24 hours to turn in the assignment. Unused late days are each worth 2 extra credit points on the final exam. Once a student's late days have been exhausted, late assignments will not be accepted for credit.


Attentance Policy

Each student must sign the attendance sheet during class. The first missed class will not result in a penalty, but each subsequent missed class (up to five) will result in a loss of one of the five attendance percentage points.


Honor Code