- Trending Categories
- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies

- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who

# How to Convert Decimal to Binary Using Recursion in Python?

In this article, we will show you how to convert decimal to binary using recursion in python.

A decimal number is the most familiar number system to the general public. It is base 10 which has only 10 symbols − 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. Whereas Binary number is the most familiar number system to digital systems, networking, and computer professionals. It is base 2 which has only 2 symbols: 0 and 1, these digits can be represented by off and on respectively.

When we convert a number from the decimal number system to the binary number system, we are using decimal to binary-conversion. The total number of digits used in the number system determines the base of all number systems. The binary number system, for example, has a base of two because it only uses two digits to represent a number. Similarly, the decimal number system has a base of ten because a number is represented by ten digits.

## Using Recursion(First Logic)

### Algorithm (Steps)

Following are the Algorithm/steps to be followed to perform the desired task −

Create a recursive function to

**getBinaryForm()**using the**def**keyword to convert the decimal number passed to it as an argument into a binary form.Use the

**if conditional**statement to check whether the number passed is equal to 0 with the == operator.Return 0 if the condition is true i.e, the decimal number passed is 0.

Else return the binary form of the decimal number passed to the function using recursive logic( get the last bit of the number using the modulus operator(%) and divide the number by 2(half) and multiply it with 10 and Cal the recursive function again with this value-added).

Create a variable to store the input number.

Call the

**getBinaryForm()**function by passing the input decimal number as an argument and print the resultant binary equivalent of the decimal number returned by the function.

### Example

The following program returns the binary form of a decimal number using recursion −

# creating a function to convert decimal number passed to it # as an argument into a binary form def getBinaryForm(decimalnum): # checking whether the number passed is equal to 0 if decimalnum == 0: # returning 0 if the number passed is 0 return 0 else: # Else getting the last bit of the number and dividing the number by 2(half) and multiplying it with 10 # Calling the recursive function again with this value-added return (decimalnum % 2 + 10 * getBinaryForm(int(decimalnum // 2))) # input decimal number decimalnum = 5 print("The binary equivalent of",decimalnum,"is:") # calling the getBinaryForm() function by passing the decimal number as an argument print(getBinaryForm(decimalnum))

### Output

On executing, the above program will generate the following output &minnus;

The binary equivalent of 5 is: 101

## Using Recursion(Second Logic)

### Algorithm (Steps)

Following are the Algorithm/steps to be followed to perform the desired task −

Create a recursive function to

**getBinaryForm()**using the**def**keyword to convert the decimal number passed to it as an argument into a binary formUse the

**if conditional**statement to check whether the number passed is equal to 0 with the == operator.Return 0 if the condition is true i.e, the decimal number passed is 0.

Call the function recursively again by passing the given number by half and store this result in a variable.

Get the last bit of the given decimal number using the modulus operator(%) and add 10* to the above result.

Create a variable to store the input number.

Call the

**getBinaryForm()**function by passing the input decimal number as an argument and print the resultant binary equivalent of the decimal number returned by the function.

### Example

The following program returns the binary form of a decimal number using recursion −

# creating a function to convert decimal number passed to it # as an argument into a binary form def getBinaryForm(decimalnum): # checking whether the number passed is equal to 0 if decimalnum == 0: # returning 0 if the number passed is 0 return 0 # Call the function recursively again by passing the given number by half result = getBinaryForm(decimalnum // 2) # Getting the last bit and multiply the result with 10 return decimalnum % 2 + 10 * result # input decimal number decimalnum = 500 print("The binary equivalent of",decimalnum,"is:") # calling the getBinaryForm() function by passing # the decimal number as an argument print(getBinaryForm(decimalnum))

### Output

On executing, the above program will generate the following output −

The binary equivalent of 500 is: 111110100

## Conclusion

We learned two different methods for calculating the binary format of a given decimal number using recursion in this article. We learned how to invoke the recursive function by passing it some value (result). We also learned how to divide a number by half to get only the integer number.

- Related Articles
- How to convert a number from Decimal to Binary using recursion in C#?
- Decimal to binary conversion using recursion in JavaScript
- How to Convert Decimal to Binary, Octal, and Hexadecimal using Python?
- How to convert Decimal to Binary using C#?
- How to Convert Binary to Decimal?
- How to Convert Decimal to Binary?
- How do we convert binary to decimal and decimal to binary?
- Convert decimal to binary number in Python program
- Python program to convert decimal to binary number
- How to convert Decimal to Binary in JavaScript?
- How to convert Binary to Decimal in JavaScript?
- Convert Decimal to Binary in Java
- C++ Program to convert the Binary number to Gray code using recursion
- C# Program to Convert Binary to Decimal
- C# Program to Convert Decimal to Binary