/*
 * fact(n) = n!
 * assume n >= 0
 * Implemented by recursion for illustrative purposes only
 */
int fact(int n) {
  if (n == 0)
    return 1;
  else
    return (n * fact(n-1));
}
