# C++ : Convert Binary Number to Decimal and vice-versa

Tutorial by:Manisha Dubey      Date: 2016-06-18 04:33:43

This program converts either binary number entered by user to decimal number or decimal number entered by user to binary number in accordance with the character entered by user.

## Source Code to Convert Either Binary Number to Decimal or Decimal Number to Binary

``````
/* C++ programming source code to convert either binary to decimal or decimal to binary according to data entered by user. */

#include <iostream>
#include <cmath>
using namespace std;
int binary_decimal(int n);
int decimal_binary(int n);
int main()
{
int n;
char c;
cout << "Instructions: " << endl;
cout << "1. Enter alphabet 'd' to convert binary to decimal." << endl;
cout << "2. Enter alphabet 'b' to convert decimal to binary." << endl;
cin >> c;
if (c =='d' || c == 'D')
{
cout << "Enter a binary number: ";
cin >> n;
cout << n << " in binary = " << binary_decimal(n) << " in decimal";
}
if (c =='b' || c == 'B')
{
cout << "Enter a binary number: ";
cin >> n;
cout << n << " in decimal = " << decimal_binary(n) << " in binary";
}
return 0;
}

int decimal_binary(int n)  /* Function to convert decimal to binary.*/
{
int rem, i=1, binary=0;
while (n!=0)
{
rem=n%2;
n/=2;
binary+=rem*i;
i*=10;
}
return binary;
}

int binary_decimal(int n) /* Function to convert binary to decimal.*/
{
int decimal=0, i=0, rem;
while (n!=0)
{
rem = n%10;
n/=10;
decimal += rem*pow(2,i);
++i;
}
return decimal;
}``````

Output

```
Instructions:
1. Enter alphabet 'd' to convert binary to decimal.
2. Enter alphabet 'b' to convert decimal to binary.
d
Enter a binary number: 110111
110111 in binary = 55 in decimal
```

This program asks user to enter alphabet 'b' to convert decimal number to binary and alphabet 'd' to convert binary number to decimal. In accordance with the character entered, user is asked to enter either binary value to convert to decimal or decimal value to convert to binary.

To perform conversion, two functions are made `decimal_binary()`; to convert decimal to binary and `binary_decimal()`; to convert binary to decimal. Decimal number entered by user is passed to `decimal_binary()` and this function computes the binary value of that number and returns it `main()` function. Similarly, binary number is passed to function `binary_decimal()` and this function computes decimal value of that number and returns it to `main()` function.

## C++

Submit Your Thought, Tutorial, Articls etc.