Problem solving and programming concepts - Sprankle, Maureen (Prentice Hall, 2012)