/***********************************
* Name: Akhash Rao Suresh
* Date: 16/7/2025
* Desc: To print the binary range of a number(1-10000)
*/
#include <stdio.h>
int print_binary(int);
int main()
{
int i;
int temp = 0;
int flag = 0;
int rem = 0;
int dec;
for(i = 1; i <= 10000; i++)
{
temp = i;
flag = 0;
while(temp > 0)
{
rem = temp % 10;
if(rem != 1 || rem != 0)
{
flag = 1;
break;
}
temp /= 10;
}
if(flag)
{
continue;
}
else
{
dec =print_binary(i);
printf("%d - %d\n",i,dec);
}
}
return 0;
}
int print_binary(int num)
{
int dec = 0;
int base = 1;
int last_digit = 0;
int temp = num;
while(num > 0)
{
last_digit = num % 10;
dec += last_digit *base;
base *= 2;
num = num / 10;
}
return dec;
}
LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAqIE5hbWU6IEFraGFzaCBSYW8gU3VyZXNoCiAqIERhdGU6IDE2LzcvMjAyNQogKiBEZXNjOiBUbyBwcmludCB0aGUgYmluYXJ5IHJhbmdlIG9mIGEgbnVtYmVyKDEtMTAwMDApCiAqLwogCiAjaW5jbHVkZSA8c3RkaW8uaD4KIAogaW50IHByaW50X2JpbmFyeShpbnQpOwogCiBpbnQgbWFpbigpCiB7CiAgICAgaW50IGk7CiAgICAgaW50IHRlbXAgPSAwOwogICAgIGludCBmbGFnID0gMDsKICAgICBpbnQgcmVtID0gMDsKICAgICBpbnQgZGVjOwogICAgIGZvcihpID0gMTsgaSA8PSAxMDAwMDsgaSsrKQogICAgIHsKICAgICAgICAgdGVtcCA9IGk7CiAgICAgICAgIGZsYWcgPSAwOwogICAgICAgICB3aGlsZSh0ZW1wID4gMCkKICAgICAgICAgewogICAgICAgICAgICAgcmVtID0gdGVtcCAlIDEwOwogICAgICAgICAgICAgaWYocmVtICE9IDEgfHwgcmVtICE9IDApCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgZmxhZyA9IDE7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICB0ZW1wIC89IDEwOwogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICBpZihmbGFnKQogICAgICAgICB7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIGRlYyA9cHJpbnRfYmluYXJ5KGkpOwogICAgICAgICAgICBwcmludGYoIiVkIC0gJWRcbiIsaSxkZWMpOwogICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJuIDA7CiB9CiAKIGludCBwcmludF9iaW5hcnkoaW50IG51bSkKIHsKICAgICBpbnQgZGVjID0gMDsKICAgICBpbnQgYmFzZSA9IDE7CiAgICAgaW50IGxhc3RfZGlnaXQgPSAwOwogICAgIGludCB0ZW1wID0gbnVtOwogICAgIHdoaWxlKG51bSA+IDApCiAgICAgewogICAgICAgICBsYXN0X2RpZ2l0ID0gbnVtICUgMTA7CiAgICAgICAgIGRlYyArPSBsYXN0X2RpZ2l0ICpiYXNlOwogICAgICAgICBiYXNlICo9IDI7CiAgICAgICAgIG51bSA9IG51bSAvIDEwOwogICAgIH0KICAgICByZXR1cm4gZGVjOwogfQog