Working code for programming assignment 2