Q:

Java program to print bits that need to be flipped to convert a number to another number

belongs to collection: Java Basic Programs

0

Java program to print bits that need to be flipped to convert a number to another number

All Answers

need an explanation for this answer? contact us directly to get an explanation for this answer

Program/Source Code:

The source code to print bits that need to be flipped to convert a number to another number is given below. The given program is compiled and executed successfully.

// Java program to print bits that needs to be flipped 
// to convert a number to another number

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner SC = new Scanner(System.in);

    int num1 = 0;
    int num2 = 0;

    int bitNum = 0;
    int lsb1 = 0;
    int lsb2 = 0;

    System.out.printf("Enter Number1: ");
    num1 = SC.nextInt();

    System.out.printf("Enter Number2: ");
    num2 = SC.nextInt();

    System.out.printf("Bits needs to be changed are:\n");

    while ((num1 > 0) || (num2 > 0)) {
      lsb1 = num1 & 1;
      lsb2 = num2 & 1;

      if (lsb1 != lsb2)
        System.out.printf("%d ", bitNum);

      num1 = num1 >> 1;
      num2 = num2 >> 1;

      bitNum++;
    }
  }
}

Output:

Enter Number1: 11
Enter Number2: 17
Bits needs to be changed are:
1 3 4

 

need an explanation for this answer? contact us directly to get an explanation for this answer

total answers (1)

Java Basic Programs

This question belongs to these collections

Similar questions


need a help?


find thousands of online teachers now
<< Java program to count the number of bits to be fli...