APS105H: Lab Assignments

Submission

All assignments will be submitted via MarkUs, an online code submission and grading system. Please note that we are not using the submitaps105 application that was used in the Fall 2011 semester. Unless indicated otherwise, all assignments are due on Saturday night by 11:59 pm.

To use MarkUs, click here, and then login with your ECF username and password. Click on the name of the assignment you are submitting, and then click on the "Submissions" tab near the top. Click "Add new", and then click the "Choose File" button to select a file. Finally, click "Submit". You can resubmit the same file as many times as you want (prior to the deadline, of course) by selecting "Choose File" in the "Replace" column; we will mark your most recent submission.

Once you have submitted a file, you can click on the filename to check that you submitted the correct version. We cannot accept any files after the due date, even if you have not modified them since the due date. Remember that spelling of filenames, including case, counts. If your file is not named correctly, your code may receive zero for correctness.

ECF

Your code will be evaluated on ECF. You are welcome to work on your own computer at home, but if you do so you should allocate time to test (and potentially debug) your program on ECF. One option is to work from home via ssh, which allows you to connect to ECF remotely. Another option is to tunnel X11 over ssh (in English, that means using ssh to carry X11 information, which is the UNIX way of drawing windows on screen), which lets you run graphical programs over an ssh connection. However, this may be more complicated to configure, since you have to have X11 installed on your computer.

For an introduction to ECF, you can take a look at the Tutorial about UNIX Basics from the Fall 2011 offering of APS105. Most of this guide is still applicable to us this term; however, as mentioned above, we are using a different submission process this term, so you should ignore section Section XI (Submitting Your Lab Assignments) of the guide.

Marks

All assignments will be auto-marked for correctness. Assignments will also be marked for style (i.e., a TA will read your code and assign a grade based on how well written it is). Note that it is possible to get high marks for correctness but low marks for style, or vice versa.

All marks will be available via Blackboard. Detailed assignment marks (including auto-marker results and comments from the markers) will be available via MarkUs.

Style

Your assignments must follow the style guidelines discussed in the course style guide. Failure to do so may result in deductions. Note that the style guide will be updated throughout the course (updates will be clearly indicated) as the assignments increase in complexity.

Assignments

Assignment Topic Weight Due date
Assignment 0 Basics, compiling, and submitting. 0% Saturday Jan 21 at 11:59 pm
Assignment 1 Math, Booleans, basic I/O, conditionals. 3% Saturday Feb 4 at 11:59 pm
Assignment 2 Loops, Arrays, Functions, Reading Code 3% Saturday Feb 18 at 11:59 pm
Assignment 3 Arrays, Pointers, Functions, Multi-File Programs 4% Saturday Mar 10 at 11:59 pm
Sunday Mar 11 at 11:59 pm
Assignment 4 Arrays, Strings, Dynamic Memory Allocation 5% Saturday Mar 24 at 11:59 pm
Sunday Mar 25 at 11:59 pm
Assignment 5 Recursion, structs, Linked Lists 5% Saturday Apr 7 at 11:59 pm
Wednesday Apr 11 at 11:59 pm