# Program for Decimal to Binary Conversion

Given a decimal number as input, we need to write a program to convert the given decimal number into equivalent binary number.

Examples:

```
Input : 7
Output : 111

Input : 10
Output : 1010

Input: 33
Output: 100001
```

## Recommended: Please solve it on “PRACTICE ” first, before moving on to the solution.

Algorithm:

1. Store the remainder when the number is divided by 2 in an array.
2. Divide the number by 2
3. Repeat the above two steps until the number is greater than zero.
4. Print the array in reverse order now.

For Example:
If the binary number is 10.
Step 1: Remainder when 10 is divided by 2 is zero. Therefore, arr[0] = 0.
Step 2: Divide 10 by 2. New number is 10/2 = 5.
Step 3: Remainder when 5 is divided by 2 is 1. Therefore, arr[1] = 1.
Step 4: Divide 5 by 2. New number is 5/2 = 2.
Step 5: Remainder when 2 is divided by 2 is zero. Therefore, arr[2] = 0.
Step 6: Divide 2 by 2. New number is 2/2 = 1.
Step 7: Remainder when 1 is divided by 2 is 1. Therefore, arr[3] = 1.
Step 8: Divide 1 by 2. New number is 1/2 = 0.
Step 9: Since number becomes = 0. Print the array in reverse order. Therefore the equivalent binary number is 1010.

Below diagram shows an example of converting the decimal number 17 to equivalent binary number.

Below is the implementation of above idea.

div class="responsive-tabs">

## C/C++

 `// C++ program to convert a decimal ` `// number to binary number ` ` `  `#include ` `using` `namespace` `std; ` ` `  `// function to convert decimal to binary ` `void` `decToBinary(``int` `n) ` `{ ` `    ``// array to store binary number ` `    ``int` `binaryNum[32]; ` ` `  `    ``// counter for binary array ` `    ``int` `i = 0; ` `    ``while` `(n > 0) { ` ` `  `        ``// storing remainder in binary array ` `        ``binaryNum[i] = n % 2; ` `        ``n = n / 2; ` `        ``i++; ` `    ``} ` ` `  `    ``// printing binary array in reverse order ` `    ``for` `(``int` `j = i - 1; j >= 0; j--) ` `        ``cout << binaryNum[j]; ` `} ` ` `  `// Driver program to test above function ` `int` `main() ` `{ ` `    ``int` `n = 17; ` `    ``decToBinary(n); ` `    ``return` `0; ` `} `

## Java

 `// Java program to convert a decimal ` `// number to binary number ` `import` `java.io.*; ` ` `  `class` `GFG  ` `{ ` `    ``// function to convert decimal to binary ` `    ``static` `void` `decToBinary(``int` `n) ` `    ``{ ` `        ``// array to store binary number ` `        ``int``[] binaryNum = ``new` `int``[``32``]; ` `  `  `        ``// counter for binary array ` `        ``int` `i = ``0``; ` `        ``while` `(n > ``0``)  ` `        ``{ ` `            ``// storing remainder in binary array ` `            ``binaryNum[i] = n % ``2``; ` `            ``n = n / ``2``; ` `            ``i++; ` `        ``} ` `  `  `        ``// printing binary array in reverse order ` `        ``for` `(``int` `j = i - ``1``; j >= ``0``; j--) ` `            ``System.out.print(binaryNum[j]); ` `    ``} ` `     `  `    ``// driver program ` `    ``public` `static` `void` `main (String[] args)  ` `    ``{ ` `        ``int` `n = ``17``; ` `        ``decToBinary(n); ` `    ``} ` `} ` ` `  `// Contributed by Pramod Kumar `

## Python3

 `# Python3 program to convert a  ` `# decimal number to binary number ` ` `  `# function to convert ` `# decimal to binary ` `def` `decToBinary(n): ` `     `  `    ``# array to store ` `    ``# binary number ` `    ``binaryNum ``=` `[``0``] ``*` `n; ` ` `  `    ``# counter for binary array ` `    ``i ``=` `0``; ` `    ``while` `(n > ``0``):  ` ` `  `        ``# storing remainder ` `        ``# in binary array ` `        ``binaryNum[i] ``=` `n ``%` `2``; ` `        ``n ``=` `int``(n ``/` `2``); ` `        ``i ``+``=` `1``; ` ` `  `    ``# printing binary array ` `    ``# in reverse order ` `    ``for` `j ``in` `range``(i ``-` `1``, ``-``1``, ``-``1``): ` `        ``print``(binaryNum[j], end ``=` `""); ` ` `  `# Driver Code ` `n ``=` `17``; ` `decToBinary(n); ` ` `  `# This code is contributed by mits `

## C#

 `// C# program to convert a decimal ` `// number to binary number ` `using` `System; ` `         `  `public` `class` `GFG  ` `{  ` `     `  `    ``// function to convert decimal  ` `    ``// to binary ` `    ``static` `void` `decToBinary(``int` `n) ` `    ``{ ` `        ``// array to store binary number ` `        ``int``[] binaryNum = ``new` `int``[32]; ` ` `  `        ``// counter for binary array ` `        ``int` `i = 0; ` `        ``while` `(n > 0)  ` `        ``{ ` `            ``// storing remainder in  ` `            ``// binary array ` `            ``binaryNum[i] = n % 2; ` `            ``n = n / 2; ` `            ``i++; ` `        ``} ` ` `  `        ``// printing binary array ` `        ``// in reverse order ` `        ``for` `(``int` `j = i - 1; j >= 0; j--) ` `            ``Console.Write(binaryNum[j]); ` `    ``} ` `     `  `    ``// Driver Code ` `    ``public` `static` `void` `Main ()  ` `    ``{ ` `        ``int` `n = 17; ` `        ``decToBinary(n); ` `    ``} ` `} ` ` `  `// This code is contributed by Sam007. `

## PHP

 ` 0)  ` `    ``{ ` ` `  `        ``// storing remainder ` `        ``// in binary array ` `        ``\$binaryNum``[``\$i``] = ``\$n` `% 2; ` `        ``\$n` `= (int)(``\$n` `/ 2); ` `        ``\$i``++; ` `    ``} ` ` `  `    ``// printing binary array ` `    ``// in reverse order ` `    ``for` `(``\$j` `= ``\$i` `- 1; ``\$j` `>= 0; ``\$j``--) ` `        ``echo` `\$binaryNum``[``\$j``]; ` `} ` ` `  `// Driver Code ` `\$n` `= 17; ` `decToBinary(``\$n``); ` ` `  `// This code is contributed by m_kit ` `?> `

Output :

```10001
```

We can use bitwise operators to do above job. Note that bitwise operators work faster than arithmetic operators used above.

## C++

 `// CPP program to Decimal to binary conversion ` `// using bitwise operator ` `// Size of an integer is assumed to be 32 bits ` `#include ` `using` `namespace` `std; ` ` `  `// Function that convert Decimal to binary ` `int` `decToBinary(``int` `n) ` `{ ` `    ``// Size of an integer is assumed to be 32 bits ` `    ``for` `(``int` `i = 31; i >= 0; i--) { ` `        ``int` `k = n >> i; ` `        ``if` `(k & 1) ` `            ``cout << ``"1"``; ` `        ``else` `            ``cout << ``"0"``; ` `    ``} ` `} ` ` `  `// driver code ` `int` `main() ` `{ ` `    ``int` `n = 32; ` `    ``decToBinary(n); ` `} `

## Java

 `// Java program to Decimal to binary conversion  ` `// using bitwise operator  ` `// Size of an integer is assumed to be 32 bits  ` `  `  `class` `gfg  ` `{  ` `// Function that convert Decimal to binary  ` `public` `void` `decToBinary(``int` `n)  ` `{  ` `    ``// Size of an integer is assumed to be 32 bits  ` `    ``for` `(``int` `i = ``31``; i >= ``0``; i--) {  ` `        ``int` `k = n >> i;  ` `        ``if` `((k & ``1``) > ``0``)  ` `            ``System.out.print( ``"1"``);  ` `        ``else` `            ``System.out.print(``"0"``);  ` `    ``}  ` `}  ` `}  ` ` `  `class` `geek  ` `{  ` `// driver code  ` `public` `static` `void` `main(String[] args)  ` `{  ` `    ``gfg g = ``new` `gfg();  ` `    ``int` `n = ``32``;  ` `    ``g.decToBinary(n);  ` `}  ` `}  ` `// This code is contributed by mits `

## Python3

 `# Python3 program to Decimal  ` `# to binary conversion using ` `# bitwise operator ` ` `  `# Size of an integer is   ` `# assumed to be 32 bits ` ` `  `# Function that convert  ` `# Decimal to binary ` `def` `decToBinary(n): ` `     `  `    ``# Size of an integer is ` `    ``# assumed to be 32 bits ` `    ``for` `i ``in` `range``(``31``, ``-``1``, ``-``1``):  ` `        ``k ``=` `n >> i; ` `        ``if` `(k & ``1``): ` `            ``print``(``"1"``, end ``=` `""); ` `        ``else``: ` `            ``print``(``"0"``, end ``=` `""); ` ` `  `# Driver Code ` `n ``=` `32``; ` `decToBinary(n); ` ` `  `# This code is contributed by mits `

## C#

 `// C# program to Decimal to binary conversion ` `// using bitwise operator ` `// Size of an integer is assumed to be 32 bits ` `using` `System; ` `class` `gfg ` `{ ` ` ``// Function that convert Decimal to binary ` `  ``public` `void` `decToBinary(``int` `n) ` ` ``{ ` `    ``// Size of an integer is assumed to be 32 bits ` `    ``for` `(``int` `i = 31; i >= 0; i--) { ` `        ``int` `k = n >> i; ` `        ``if` `((k & 1) > 0) ` `            ``Console.Write ( ``"1"``); ` `        ``else` `            ``Console.Write ( ``"0"``); ` `    ``} ` ` ``} ` `} ` ` `  `class` `geek ` `{ ` ` ``// driver code ` ` ``public` `static` `int` `Main() ` ` ``{ ` `    ``gfg g = ``new` `gfg(); ` `    ``int` `n = 32; ` `    ``g.decToBinary(n); ` `    ``return` `0; ` ` ``} ` `} `

## PHP

 `= 0; ``\$i``--)  ` `    ``{ ` `        ``\$k` `= ``\$n` `>> ``\$i``; ` `        ``if` `(``\$k` `& 1) ` `            ``echo` `"1"``; ` `        ``else` `            ``echo` `"0"``; ` `    ``} ` `} ` ` `  `    ``// Driver Code ` `    ``\$n` `= 32; ` `    ``decToBinary(``\$n``); ` ` `  `// This code is contributed by aj_36 ` `?> `

Output :

```00000000000000000000000000100000
```

Thanks to ajay0007 for suggesting above solution.