Assignment 2 for COM323 - Programming 2