### Question:
Math2 { public static int ceilDiv(int x, int y) { int r = x / y; return (x ^ y) > 0 && (r * y != x) ? r + 1 : r; }  static int ceilPowerOfTwo(int value); static int getUsingBits(int value); static int ceil(int value, int interval); static int ceilDiv(int x, int y); static long ceilDiv(long x, int y); static long ceilDiv(long x, long y); static float loop(float value, float interval); static float clamp(float val, float min, float max); static int clamp(int val, int min, int max); static long clamp(long val, long min, long max); static double clamp(double val, double min, double max); static float second(float arg0, float arg1, float arg2); static double second(double arg0, double arg1, double arg2); static int alternativeSignNaturalNumber(int i);  }### Answer:
@Test void testCeilDiv() { assertEquals(1, ceilDiv(3, 3)); assertEquals(1, ceilDiv(2, 3)); assertEquals(2, ceilDiv(4, 3)); assertEquals(-1, ceilDiv(-3, 3)); assertEquals(-1, ceilDiv(-4, 3)); assertEquals(0, ceilDiv(-2, 3)); }