Advertisement
Guest User

EqualBits_updated1

a guest
Sep 12th, 2014
304
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import java.util.Scanner;
  2.  
  3. public class Problem08_CountEqualBits {
  4.  
  5. public static void main(String[] args) {
  6. Scanner input = new Scanner(System.in);
  7. int n;
  8. int bit;
  9. int nextBit;
  10. int count = 0;
  11. int pos;
  12. int j = 31;
  13.  
  14.  
  15. System.out.print("n= ");
  16. n = input.nextInt();
  17. for ( j = 31; j >= 0; j--) { //finds the position (j) of the first bit 1
  18. pos = (int)Math.pow(2, j)& n;
  19. //System.out.println(Integer.toBinaryString(pos));
  20.  
  21. if (pos != 0) {
  22. break;
  23. }
  24. }
  25. for (int i = 0; i < j; i++) {
  26. bit = n & 1;
  27. n = n >> 1;
  28. nextBit = n & 1;
  29.  
  30. if (bit == nextBit) {
  31. count++;
  32. }
  33.  
  34. }
  35. System.out.printf("Equal bit pairs are: %d", count);
  36. }
  37.  
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement