This function computes the simple arbitrary-precision factorial of any positive integer , where its factorial is simply the product of all of the integers from 1 to multiplied together, the exception being 0!, which is equated to 1, by definition.
Because factorial values rapidly become extremely large, this function has a built-in limit of N = 9999, however this limit can be removed. Factorials of integers over 10000 can take several seconds to compute and a script time-out may be possible if too extreme.