all of the exercises from 'Foundations of Programming: Fundamentals'