Lecture notes for the Introduction to Computer Science I by James Tam Return to the course web page

Dividing Problems Up Into Modules: Functions And Procedures

Notes for the required material 

Optional teaching material

Background / Sources of additional information

Teaching Tips

I have found that because functions and procedures involve a lot of new concepts that it takes students quite a while to absorb everything.   Consequently I have found it useful to separate when I talk about modules with when I talk about recursion.  This allows students some time to absorb the basic concepts before proceeding onto something much more advanced.