### Question:
Interpolation { public static float getSigFig(float value) { return (float) (value - Math.floor(value)); } Interpolation(float[][] input);  Interpolation(float[][] input, int lenX, int lenY);  Interpolation(float[][] input, int lenX, int lenY, int samples); protected  Interpolation(); static Interpolation getInstance(Type type, float[][] input); abstract float interpolateSampleX(float[] samples, float fracX); float interpolateX(float[] arr, float fracX, int offsetX); float interpolateSampleY(float[] samples, float fracY); float interpolateY(float[] arr, float fracY, int offsetY); float interpolateSample(float[][] samples, float fracX, float fracY); float interpolate(float[][] arr, float fracX, float fracY, int offsetX, int offsetY); float interpolate(float[][] arr, float inputX, float inputY); static float getSigFig(float value); float[][] resize(int lenX, int lenY); float[][] crop(float top, float right, float bottom, float left); float[][] cropAndResize(int lenX, int lenY,
            float minX, float minY, float maxX, float maxY);  }### Answer:
@Test public void testGetSigFig() { assertEquals(0.0, Interpolation.getSigFig(0.0f), 0.0001); assertEquals(0.0, Interpolation.getSigFig(5.0f), 0.0001); assertEquals(0.5, Interpolation.getSigFig(0.5f), 0.0001); assertEquals(0.5, Interpolation.getSigFig(5.5f), 0.0001); assertEquals(0.37125, Interpolation.getSigFig(7.37125f), 0.0001); assertEquals(Math.PI-3, Interpolation.getSigFig((float) Math.PI), 0.0001); }