Programming Assignments

Introduction to Computer Science II
ICS-22: Lecture A/Lab 1 and 2
Fall 2007


Programming assignments are typically due 1-2 weeks after they are assigned, at 11:30pm, on a Thursday night. To turn in programs use the Homework Dropoff system (Checkmate), which is also available on the standard frame index (it uses UCInetID Secure Web Login). You receive no points for late programs, unless you have discussed the matter with me and gotten my official permission (typically, granted prior to the due date via email). You must drop off (on time) whatever part of the program you have written, if you are to receive any partial credit; if you drop off nothing, I must assume that you have done no work. If you drop off your program early you will receive extra points (2 if submitted 24 hours early, 4 if submitted 48 hours early).

We will use pair programming on selected assignments (but on some assignments it is prohibited; see below). For these assignments students must closely collaborate with their partners, turning in a single, joint program. Only one student from the pair should drop off the program -which one doesn't matter- but the names of both students must appear inside the code file(s). See Pair Programming for details about pair programming, and the right and wrong ways to do it. There is a tremendous amount to be gained by both group members, if they pair program in the right way.

If you are having problems finding a student to pair with, or believe that your schedule disallows the ability to work in a pair, contact me immediately. Without making prior arrangments with me, individual students submitting a program when pairing is mandatory can have their grade reduced by 25%.

Please read each assignment completely and carefully. I suggest that you print and then read it, marking relevant material with a highlighter. We will typically discuss these assignments in Lab on Wednesday, and start working on them then (although you will optionally be able to work on the previous assignment on Wednesday if you have not already turned it in).

ProgramAssignedDueDescriptionPairing?
#1 10/310/11 Java Fundamentals + Objects Mandatory
#2 10/1010/18 Writing Classes + Arrays Mandatory
#3 10/1711/1 Inheritance Mandatory
#4a 10/3111/8 Using Collection Classes : Part A Mandatory
#4b 10/3111/15 Using Collection Classes : Part B Prohibited
#4a 11/1911/26 Linked Lists + Collection Classes : Part A Prohibited
#4b 11/2012/3 Recursion: Linked Lists and Trees : Part B Prohibited