programming exercises chapter 10