This post covers the following from the specification (2.2.1): (a) Programming constructs: sequence, iteration, branching. (b) Recursion, how it can be used and compares to an iterative approach. (c) Global and local variables. (d) Modularity, functions and procedures, parameter passing by value and by reference. (e) Use of an IDE to develop/debug a program. (f) Use of object oriented techniques. (Skipped for now) What is recursion? Recursion is where you call the function th