chapter 4 functions and program structure