integer factorial(integer n) { integer i, result; result = 1; i = 1; while (i < n) { i += 1; result *= i; } return result; }