For example,
4 = 100 (in binary). Total un set bits are 1.
public class UnsetBits { public static int getUnsetBits(int num) { int count = 0; if (num == 0) return 1; while (num > 0) { if ((num & 1) == 0) count = count + 1; num = num >> 1; System.out.println(num); } return count; } }
Following is
the junit test case for above program.
import static org.junit.Assert.assertEquals; import org.junit.Test; public class UnsetBitsTest { @Test public void test1(){ assertEquals(UnsetBits.getUnsetBits(0), 1); assertEquals(UnsetBits.getUnsetBits(1), 0); assertEquals(UnsetBits.getUnsetBits(2), 1); assertEquals(UnsetBits.getUnsetBits(3), 0); assertEquals(UnsetBits.getUnsetBits(4), 2); assertEquals(UnsetBits.getUnsetBits(5), 1); assertEquals(UnsetBits.getUnsetBits(6), 1); assertEquals(UnsetBits.getUnsetBits(7), 0); assertEquals(UnsetBits.getUnsetBits(8), 3); } }
No comments:
Post a Comment