Computer Programming Assignment 3