On this page:
Overview
Setup
Submitting
1 Before Submitting
2 Common Problems
3 Files
4 Grade  Scope
Exercises

Homework 3

Last updated: Wed, 4 Oct 2023 18:56:08 -0400

Out: Wed Oct 04, 2023, 00:00 EST

Due: Sun Oct 15, 2023, 23:59 EST (note: 2 weeks)

Overview

In this assignment, we’ll continue to explore more complicated data definitions, including recursive ones like lists.

This hw will be graded accordingly:

  • correctness (9 pts)

  • design recipe (20 pts)

  • style (5 pts)

  • README (1 pt)

Total: 35 points

Setup

Create a new repository for this assignment by going to the CS450 Fall 2023 GitHub Organization page and clicking "New".

On the "Create a new repository" screen:
  • Name the repository <YOUR ACCOUNT NAME>-hw3 where <YOUR ACCOUNT NAME> is your GitHub account name.

    For example, if my GitHub account is cs450student then I would name my hw3 repository cs450student-hw3.

  • Mark the repository as Private.

  • Check "Add a README file".

When done click "Create repository".

Here is the hw3 starter repo. You won’t be able to fork it, but, you can copy the files into your own repo and then edit them.

Submitting

1 Before Submitting

Before submitting, note:
  • Do not submit until all code has been thoroughly tested, independent of the autograder, and you are reasonably sure the assignment is complete and correct.

    The autograder is not a software development tool so it should not be used as one.

  • If you submit and get an autograder error, this means the code you wrote is not complete and correct and it’s up to you to figure out why.

    The course staff is here and eager to help, but cannot do so if students don’t explain what they’ve tried first (e.g., "why is the autograder giving an error?" is not something we can help with).

  • The grading criteria (i.e., test suite) is subject to change. This means that the visible grade seen during submission is not the final grade.

2 Common Problems

Common submission problems:
  • a required identifier is not provided or defined in the homework file

  • an external file has not been uploaded to GitHub

  • the code is in an infinite loop, e.g., do not start a big-bang loop automatically when running a file. (Instead, it should be in a main function)

3 Files

A submission must have the following files in the repository root:

Also, the repository must have appropriate commit messages. See How to Write a Git Commit Message if you are unsure how to write a commit message.

4 GradeScope

When ready, submit this assignment to Gradescope hw3 using the "GitHub" submission feature with the hw3 repository selected.

Exercises