Warning: This website has not yet been fully updated for Spring 2025.

Programming Assignments

There are seven programming assignments, numbered (naturally!) 0 through 6. Assignment 0 is not weighted much towards your grade, but is required before you can submit any of the further Assignments 1 through 6. Assignments 1 through 6 are equally weighted.

Due date and time information shown is in "Princeton time" (United States Eastern time). The partial credit allowances for late submission are shown on the course Policies page.

Each assignment is classified as an "Individual" or "Partnered" assignment. On "Partnered" assignments you may work with another student, subject to the pertinent guidelines from the course Policies page.

# DUE ASSIGNMENT COLLABORATION LINKS
The assignments below have not yet been updated for Spring 2025.
0 Tue 02/04, 9:00 PM Introductory Survey individual Repository
1 Tue 02/11, 9:00 PM A "De-Comment" Program individual Repository
2 Tue 02/25, 9:00 PM A String Module and Client individual Repository
3 Tue 03/25, 9:00 PM A Symbol Table Module individual Repository
4 Thu 04/10, 9:00 PM Directory and File Trees partnered Repository
5 Tue 04/22, 9:00 PM Assembly Language Programming and Testing partnered Repository
6 Wed 04/30, 9:00 PM A Buffer Overrun Attack partnered Repository