#include <iostream>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <string>
double dec2Bin(int value, char binaryString[])
{
int x = 1;
std::string hold = "";
while(x <= value){
x *= 2;
}
x /= 2;
while(x >= 1){
//cout << x << " ";
if(value > x){
hold += "1";
value -= x;
}
else if(value < x){
hold += "0";
}
else if(value == x){
hold += "1";
value = 0;
//return hold;
}
x /= 2;
//cout << hold << endl;
}
return atoi(hold.c_str());
}
int main()
{
char binstr[100];
int num = 0;
std::cout << "Enter a decimal string: ";
std::cin >> num;
std::cout << "its "<<dec2Bin(num, binstr) << std::endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPGNtYXRoPgojaW5jbHVkZSA8Y3N0ZGxpYj4KI2luY2x1ZGUgPHN0cmluZz4KCmRvdWJsZSBkZWMyQmluKGludCB2YWx1ZSwgY2hhciBiaW5hcnlTdHJpbmdbXSkKewogICAgaW50IHggPSAxOwogICAgc3RkOjpzdHJpbmcgaG9sZCA9ICIiOwogICAgd2hpbGUoeCA8PSB2YWx1ZSl7CiAgICAgICAgeCAqPSAyOwogICAgfQogICAgeCAvPSAyOwoKICAgIHdoaWxlKHggPj0gMSl7CiAgICAgICAgLy9jb3V0IDw8IHggPDwgIiAiOwogICAgICAgIGlmKHZhbHVlID4geCl7CiAgICAgICAgICAgIGhvbGQgKz0gIjEiOwogICAgICAgICAgICB2YWx1ZSAtPSB4OwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKHZhbHVlIDwgeCl7CiAgICAgICAgICAgIGhvbGQgKz0gIjAiOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKHZhbHVlID09IHgpewogICAgICAgICAgICBob2xkICs9ICIxIjsKICAgICAgICAgICAgdmFsdWUgPSAwOwogICAgICAgICAgICAvL3JldHVybiBob2xkOwogICAgICAgIH0KICAgICAgICB4IC89IDI7CgogICAgICAgIC8vY291dCA8PCBob2xkIDw8IGVuZGw7CiAgICB9CiAgICByZXR1cm4gYXRvaShob2xkLmNfc3RyKCkpOwoKfQppbnQgbWFpbigpCnsKICAgIGNoYXIgYmluc3RyWzEwMF07CiAgICBpbnQgbnVtID0gMDsKICAgIHN0ZDo6Y291dCA8PCAiRW50ZXIgYSBkZWNpbWFsIHN0cmluZzogIjsKICAgIHN0ZDo6Y2luID4+IG51bTsKICAgIHN0ZDo6Y291dCA8PCAiaXRzICI8PGRlYzJCaW4obnVtLCBiaW5zdHIpIDw8IHN0ZDo6ZW5kbDsKCn0=