#include <iostream>
#include <string>
using namespace std;
// function returns binary string... even with preceding zeros binary number is still correct.
string convertDecimalToBinary(int value);
int main()
{
int x = 0;
cout << "Enter a decimal number (max 524288): ";
cin >> x;
cout << endl;
cout << "The number in binary is: "
<< convertDecimalToBinary(x)<< endl; // call function...
return 0;
}
string convertDecimalToBinary(int value)
{
const int AMOUNT = 20;
int one[AMOUNT];
int two[AMOUNT];
// find binary and put it into an array...
for(int i = AMOUNT - 1; i >= 0; i--)
{
one[i] = value % 2;
value = value / 2;
}
string s1; // create and populate string from array...
for (int i = 0; i < AMOUNT; i++)
{
if (one[i] == 1)
{
s1.append("1");
}
else if (one[i] == 0)
{
s1.append("0");
}
}
return s1;
}