Implemented exercise 4 from chapter 3.