A recursive function is a function that calls itself. You may ask yourself, why would you ever
want to do that? Actually certain problems can be solved more easily through recursion.
Every recursive function must contain a condition that stops the process of calling the function
to execute. Then we break down solving a problem by by performing multiple simple
calculations repetitively versus writing one large block of code. Take calculating a factorial as
an example.
Calculating a Factorial
Calculating factorials is commonly done with a recursive
function 3! = 3 * 2 * 1