|
|
|
Course Description:
Objectives:
This course is an introduction to computer programming intended for novices.
The course will cover the fundamentals of computer programming and algorithms.
It will be taught using the Java programming language, but this course is not a
course on Java. At the end of the semester, you will be able to:
- Identify the key components of a computational problem,
- Divide problems it into small, manageable parts,
- Write Java code to solve the small problems, and
- Integrate the small-problem solutions to solve the larger problem.
This course will conclude with a final project. You will write the game ‘Tetris’. You will write it as a Java Applet, and place it on your website.
Pre-requisites:
There are no prerequisites for this course. Students should know algebra.
Requirements Satisfied:
COMP 14 satisfies the mathematical sciences perspective. It is a prerequisite for COMP 114 and the first step towards a degree in computer science.
Topics:
- Computer structure: CPU, memory, programs, and algorithms
- Variables, types
- Expressions and assignments
- I/O (from the keyboard, to the screen, & to and from files)
- Conditional Execution (if/then/else)
- Iteration (for loops, while loops, do-while loops)
- Subroutines (methods)
- Arrays, 1D and 2D
- Java classes
- Object Oriented Programming (OOP)
Textbook:
D.S. Malik.
Java Programming: From Problem Analysis To Program Design 2nd Edition.
Companion Website
Software:
Instructor:
Meeting times and Places:
Lectures: Monday and Wednesday 3pm - 4:15pm, Peabody 217
Recitation: Friday 3pm - 3:50pm Peabody 217
Office Hours: Monday and Wednesday 4:15pm-5:15pm, Sitterson 042
|
Recitation:
Bring your laptops to recitation. We will program during this time.
Grading:
Breakdown:
| Programming Assignments | | 45 % |
| (Final Project | 15 %) |
| Homeworks/Quizzes | | 15 % |
| Midterm Exam | | 15 % |
| Class Participation | | 5 % |
| Final Exam | | 20 % |
Time Commitment:
Expect to spend 3 hours per week on this course outside of
class. Some programming assignments will take longer – 5 to 10 hours. Brace
for this now. Look at the programming assignment schedule to know which weeks
will be busy for you. Do not be discouraged by the amount of time it takes you
to complete an assignment.
Assignment Submission:
Submit assignments via blackboard.
Due Dates and Late Assignments:
Assignments must be in by 11:59 PM on the day
they are due. You have five (5) free “late days” to spend as you please through
the semester. After your late days are consumed, additional late assignments
will not be accepted.
Other Policies:
Honor code:
Student’s are encouraged to work together. You are encouraged to talk about
assignments and about their solutions. It is all right to help someone by
looking at their code and verbally suggesting changes. While it is fine to look
at someone’s code to help them, it is not all right to look at someone else’s
code to learn from them. The following is an acceptable exchange:
John: “Hey, Mark, why isn’t my loop working?”
Mark: “Dude, you forgot to increment your loop counter.”
The honor code is spelled out here:
http://www.cs.unc.edu/Admin/Courses/HonorCode.html
Food, Drink, and Laptos:
No food allowed in class. Beverages are fine, but if you spill, you must clean
up. No laptops allowed during lecture.
|
|