Solution for the first programming assignment, 100/100