Programming Projects


Programming assignments will consist of problems that help you build your problem solving skills. You can download the assignments here or retrieve them during lecture or in Carpenter Lab, if copies remain.

 
Assignment  Due Date  TA                          Other Downloads               Solutions
P1 9/5 Singer   P1 Solution
P2 9/14 Renaud GraphicsUtil, PolygonFrame P2 Solution
P3 9/28 Zhong Person P3 Application
P3 Person
P4 10/12 Messie & Wang   CA, CAProgram
P5 11/9 Zhang & Zhong  robot.java, mars.java P5 Solution
P6 11/30 TBA Person.java, Program6.java P6 Solution,
Royalty.java,
P6 printout,
series A, series B
P7 CANCELLED      
 

Programming Tips

Project Grading
Each programming project will receive two distinct grades, one for correctness and the other for style.  Each grade will either be a 0, 4, or 5: 

0    no submission, or an insubstantial submission

4    a substantial submission with serious deficiencies

5    a submission that is substantially correct

An assignment does not have to be perfect to receive a grade of 5.  A substantive attempt to complete the program will receive a 4 even if the program is severely flawed, so be sure to turn in what you have even if it doesn't work.

If you work with a partner, both you and your partner will receive the same correctness and style grades for that assignment.  See below for information about having partners.

Warning
Since projects "count" for a relatively small percentage of the total score, some students are tempted to skip them (or let their partners do most of the work) and plan to learn the material by reading the sample solutions.  This process does not work for most people. This material is learned by actively doing the projects, not by passively watching a partner or reading the sample solutions.  Thus, failure to actively do the assignments is likely to hurt your grade.

Philosophy
We expect projects to teach you how to solve more complex/larger problems. We grade mostly for feedback to let you know how you are doing. To reduce stress, projects are worth a relatively "small" percentage of the course score. Plus, we will not require you to do all the projects perfectly to get a perfect project score (see Grading, above).  Thus, as long as you make a sincere effort on most of the projects, you should get a good project score.

Style and Commentary
Your comments and overall style will greatly affect your style score.
For information, check this out.

Submission Rules
You have two options for submitting your work:

  • Submit homework in lecture on the due date. You may submit in either lecture, but no later!
  • Submit homework in Carpenter Lab for early submissions only. You must give the project to a consultant, personally!
  • We do not accept late submissions.

    For each project you must do the following:

    Repeat: Submit work as hardcopy, not as email or on disk!

    Picking Up Graded Projects
    Where's your work?

  • Projects are usually graded in about 1 week.
  • We return graded assignments in section.
  • You may retrieve unclaimed assignments from the consultants at Carpenter Lab at the end of the week in which they were returned in sections.
  • Look here if you wish to submit a regrade.

    Partners
    We encourage you to work with a partner on the programming projects. 
    If you work with a partner, you must adhere to the following rules:

  • You can have only one partner for each project.
  • You cannot have different partners for different parts of the project.
  • You can pick a different partner for each project.
  • You and your partner receive the same correctness and style grade for the entire project.
  • You and your partner may attend different sections.
  • You must submit only one project with both your names, IDs, signatures, and section information, as specified in the Submission Rules.
  • You cannot take your exams with a partner.
  • You should avoid "divorcing" partners before submitting your project. Why? What if your partner submits a duplicate version of your programs? All the graders will see is an academic violation, so be careful.
  • If you have any questions, please do not hesitate to ask the staff.

    Academic Integrity
    Respect academic integrity! Please review the Code and notes for CS100 here.