Skip to content
Related Articles

Related Articles

Improve Article

Python Program to Multiply Two Binary Numbers

  • Last Updated : 23 Aug, 2021

Given two binary numbers, and the task is to write a Python program to multiply both numbers.

Example:

firstnumber = 110
secondnumber = 10
Multiplication Result = 1100

We can multiply two binary numbers in two ways using python, and these are:

  1. Using bin() functions and
  2. Without using pre-defined functions

Method 1: Using bin Functions

Now, Let’s write a program by using Pre-Defined Functions:

Python3




firstnumber = 110
secondnumber = 10
  
firstnumber = str(firstnumber)
secondnumber = str(secondnumber)
  
Multiplication = int(firstnumber, 2) * int(secondnumber, 2)
binaryMul = bin(Multiplication)
  
print("\nResult = " + binaryMul)


Output:



Result = 0b1100

Method 2: Without using Any Pre-Defined Function

We can also multiply any two Binary Numbers without using any pre-defined Function or by user-defined function.

Python




def binaryProduct(binaryOne, binaryTwo):
    i = 0
    remainder = 0
    sum = []
    binaryProd = 0
  
    # if firstBinary number or second Binary number is not
    # zero then calculate the product of two Binary numbers
    while binaryOne != 0 or binaryTwo != 0:
        sum.insert(i, (((binaryOne % 10) + (binaryTwo % 10) + remainder) % 2))
        remainder = int(((binaryOne % 10) + (binaryTwo % 10) + remainder) / 2)
        binaryOne = int(binaryOne/10)
        binaryTwo = int(binaryTwo/10)
        i = i+1
  
    # if remainder value is not equal to
    # zero then insert the digit to sum array
    if remainder != 0:
        sum.insert(i, remainder)
        i = i+1
    i = i-1
    while i >= 0:
        binaryProd = (binaryProd * 10) + sum[i]
        i = i-1
    return binaryProd
  
  
binaryMultiply = 0
factor = 1
firstBinary = 110
  
secondBinary = 10
  
# Now check if secondbinary number have any
# digit or not and continue multiplying
# each digit of the second binary number with
# first binary number till the last digit of
# second binary number
while secondBinary != 0:
    digit = secondBinary % 10
    if digit == 1:
        firstBinary = firstBinary * factor
        binaryMultiply = binaryProduct(firstBinary, binaryMultiply)
    else:
        firstBinary = firstBinary * factor
    secondBinary = int(secondBinary/10)
    factor = 10
print("\nMultiplication Result = " + str(binaryMultiply))


Output:

Multiplication Result = 1100

Attention reader! All those who say programming isn’t for kids, just haven’t met the right mentors yet. Join the  Demo Class for First Step to Coding Coursespecifically designed for students of class 8 to 12. 

The students will get to learn more about the world of programming in these free classes which will definitely help them in making a wise career choice in the future.




My Personal Notes arrow_drop_up
Recommended Articles
Page :