CS100M Projects
Project Assignments
Grading
Philosophy
Style and Commentary
Submission Rules
Retrieving Graded Projects
Partners
Academic Integrity
Home
Announcements
Staff&Help
Material
Exercises
Exams
AEW
Syllabus
Times
Examples
Projects
Grading

Project Assignments
Programming projects will consist of larger problems that help you build your problem solving skills. We will assign about 6 projects, though we might squeeze another 1 or 2 in, time permitting. Refer to the advice page if you need tips on how to tackle these problems. You can download the assignments, provided below:
 
#
Due Date
Assignment
Code/Tips/Hints
Solution
1
 Thursday 9/7
p1.pdf
-
p1sol.m 
2
Tuesday 9/19
p2.pdf
-
p2sol.m
3
Thursday 10/5
 p3.pdf
Required: Useful: Optional: p3.m | bisectionmethod.m | manualmethod.m | pdplot.m | exactmethod.m
newtonsmethod.m | piledepth.m | lhsrhsmethod.m | pileslope.m | restart.m
4
Tuesday 10/24
 p4.pdf
Required: Useful: checkchars.m | fileiomethod.m | getinput.m | hammingdistance.m | manualmethod.m | out.dat | p4.m | randommethod.m | restart.m | strings.dat | subsmatrix.dat | weighteddistance.m| welcome.m
p4sol.zip
5
Tuesday 11/7
Part A: p5a.pdf
Part B: JV, pg 244, Prob 4
Part B test cases:
1 + 1
(3+2i) - 4
(3 + 2i) / -9i
| (4 - 4i) * (5 + 6*i) |
i / 0
problem5a.java is the official solution -- the other version shows a different approach. 
Part A:  problem5a.java | problem5aold.java
I'm posting a couple versions of Part B. The second shows more commenting.
Part B:  p5partb.java | complex_comment.java
6
Thursday 11/30
As announced on Web and lecture: redo Projcet 4 using Java. You will be graded on OOP style and correctness of code. We will give you code for doing user/file I/O. You must write a user's guide to explain how your code works. See FileIO and UserIO on Examples page subsmatrix.dat | strings.dat | DNAprojf.java
MAKEUP
Mon 12/4 5pm DIS's office
Chapman JV: Problems 5.25, 7.10 (do in both MATLAB and Java)  

Back to Top


Makeup Project
There will be a comprehensive makeup project assigned about 2 weeks before the end of the semester. This project will account for up to 10 missed points for any project. Students who have reached maximum project points may still do the makeup project for bonus points. (In fact, all "leftover" core points from projects will be converted to bonus points.)

Back to Top


Grading
Each programming project will receive three distinct grades for
  • correctness (C)
  • style (S)
  • bonus (B)
  • You can score 0-5 on both correctness and style. For example, you might receive a score of C5 and S5 for one project where you satisfy a majority of the requirements of the assignment. Graders might assign bonus points to reward additional/exceptional work. Look here for more information. We record your score in the form C/S/B. For instance, a 3/4/1 indicates a score of C3, S5, and 1 bonus point.

    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.

    At the end of the semester, we add the style and correctness points from ALL projects to yield a total amount of core points for your project score. We will drop the equivalent of one project. So, if the maximum number of project points is 60 (from doing 6 projects), we will count the first 50 points you acheive. For example, suppose you score the following for 6 projects: 4/5/0, 4/5/0, 4/5/0, 4/5/5, 4/5/1, 4/5/0. You would have a total of 54 core points for your projects. A score of 54 ot of 50 gives you a pefect score of 50! (We'll also throw the "left-over" 4 points into your bonus score...nothing gets wasted in CS100M!)

    Back to Top


    Philosophy
    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.

    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.

    Back to Top


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

    Back to Top


    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:

  • Print all your work as hardcopy, such as programs, output, and discussion answers. Please, no disks!
  • Staple or bind together all sheets of paper. "Bind" means ring or folder, not twist-ties, string, or such nuisances
  • Submit entire code unless directed otherwise.
  • Type all work and responses to discussion questions.
  • Include the following comment block (using % for MATLAB and // for Java) with your information filled in at the top of each program:
  • Name:  your name Partner:  partner's name
    ID: your ID ID: partner's ID
    Section: your section's instructor, day, time  Section: partner's section's instructor, day, time
    Date: due date
    Project: number and title
  • Ensure correct alignment of tab stops in programs with no "chopped"  line of code.
  • Note: Submit work as hardcopy, not as e-mail or on disk!

    Back to Top


    Retrieving 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.

    Back to Top


    Partners
    We encourage you to work with a partner on the programming projects. (Why, or why not? Look here.)
    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.

    Back to Top


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

    Back to Top


    Back to CS100M Home