/** * Returns the greatest integer divisor of n less than sqrt(n). returns 1 if * n is prime */ public static int divisors(int n) { int sqrt = (int) Math.floor(Math.sqrt(n)); for (int x = sqrt; x > 0; x--) { if ((n % x) == 0) return x; } return 1; }