Princeton University
Computer Science Department

Computer Science 217
Introduction to Programming Systems

Szymon Rusinkiewicz

Spring 2018

General Information | Schedule | Assignments | Announcements | Policies

There are eight programming assignments, numbered 0 through 7.

Assignment 0 will not be graded. However that assignment is required in the sense that your grader will not grade your submissions for Assignments 1 through 7 until you have completed Assignment 0.

The due dates and times are shown in the course Schedule page.

The penalties for late submission are shown in the course Policies page.

Some of the assignments will be teams-of-two assignments. On those assignments you may work with another student. That student must be from your precept.

  1. Introductory Survey (individual assignment)

  2. A "De-Comment" Program (individual assignment)

  3. A String Module and Client (individual assignment)

  4. A Symbol Table Module (individual assignment)

  5. Assembly Language Programming and Testing (individual assignment)

  6. A Buffer Overrun Attack (teams-of-two assignment)

  7. A Heap Manager Module (teams-of-two assignment)

  8. A Unix Shell (individual assignment)