# 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`

My Personal Notes arrow_drop_up