public static int factorial(int n) {
// ----------------------------------------------------
// Computes the factorial of an integer.
// Precondition: n >= 0.
// Postcondition: Returns n * (n-1) *...*1, if n > 0;
// returns 1 if n = 0.
// ----------------------------------------------------
  int result = 1;

  for (int i = n; i > 1; --i) {
    result *= i;
  } // end for
  return result;
}  // end factorial
