problem 2-77.rkt