Recursive Code
fac(n) = n == 0 ? 1 : n*fac(n-1)
3n +1 steps, if we count multiply, -, and comparison as steps;
Steps are involved in the overhead for function calls too. The number of such steps would still be proportional to n in this case.