In this tutorial we will write a java program to add two binary numbers. Binary number system has only two symbols 0 & 1 so a binary numbers consists of only 0’s and 1’s. Before we write a program for addition, lets see how we do the addition on paper, this is shown in the diagram below:

Example: Adding binary numbers in Java
In this program we are using Scanner to get the input from user (user enters the two binary numbers that we need to add) and then we are adding them bit by bit using while loop and storing the result in an array.
import java.util.Scanner;
public class JavaExample {
public static void main(String[] args)
{
//Two variables to hold two input binary numbers
long b1, b2;
int i = 0, carry = 0;
//This is to hold the output binary number
int[] sum = new int[10];
//To read the input binary numbers entered by user
Scanner scanner = new Scanner(System.in);
//getting first binary number from user
System.out.print("Enter first binary number: ");
b1 = scanner.nextLong();
//getting second binary number from user
System.out.print("Enter second binary number: ");
b2 = scanner.nextLong();
//closing scanner after use to avoid memory leak
scanner.close();
while (b1 != 0 || b2 != 0)
{
sum[i++] = (int)((b1 % 10 + b2 % 10 + carry) % 2);
carry = (int)((b1 % 10 + b2 % 10 + carry) / 2);
b1 = b1 / 10;
b2 = b2 / 10;
}
if (carry != 0) {
sum[i++] = carry;
}
--i;
System.out.print("Output: ");
while (i >= 0) {
System.out.print(sum[i--]);
}
System.out.print("\n");
}
}
Output:
Enter first binary number: 11100 Enter second binary number: 10101 Output: 110001
Same program in Eclipse IDE:

Output of the program in Eclipse:

Here are a few related java examples:
Leave a Reply