Programming Assigment 2 - Ready for correction