#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void to_binary(int d) {
int x = d, ind = 7;
char *buf
= (char*) malloc(sizeof(char) * 8);
while (x > 0) {
int mod_val = x % 2;
x >>= 1;
buf[ind--] = (int) '0' + mod_val;
//printf("%c ", buf[ind + 1]);
}
for (int i
= 0; i
<= 7; i
++) printf("%c", buf
[i
]); buf = NULL;
}
int main(void) {
// your code goes here
char input[50], ch;
int i = 0, j = 0;
while(1) {
if (ch == '\n' || ch == EOF) break;
input[j++] = ch;
}
input[j] = '\0';
printf("\nHex encoding is: \n"); for(i = 0; input[i] != '\0'; i++) {
}
printf("\nBinary encoding is: \n"); for(i = 0; input[i] != '\0'; i++) {
to_binary(input[i]);
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgoKdm9pZCB0b19iaW5hcnkoaW50IGQpIHsKCWludCB4ID0gZCwgaW5kID0gNzsKCWNoYXIgKmJ1ZiA9IChjaGFyKikgbWFsbG9jKHNpemVvZihjaGFyKSAqIDgpOwoJbWVtc2V0KGJ1ZiwgJzAnLCA4KTsKCQoJd2hpbGUgKHggPiAwKSB7CgkJaW50IG1vZF92YWwgPSB4ICUgMjsKCQl4ID4+PSAxOwoJCWJ1ZltpbmQtLV0gPSAoaW50KSAnMCcgKyBtb2RfdmFsOwoJCS8vcHJpbnRmKCIlYyAiLCBidWZbaW5kICsgMV0pOwoJfQoJZm9yIChpbnQgaSA9IDA7IGkgPD0gNzsgaSsrKSBwcmludGYoIiVjIiwgYnVmW2ldKTsKCXByaW50ZigiICIpOwoJZnJlZShidWYpOwoJYnVmID0gTlVMTDsKfQoKaW50IG1haW4odm9pZCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJY2hhciBpbnB1dFs1MF0sIGNoOwoJaW50IGkgPSAwLCBqID0gMDsKCiAgICBwcmludGYoIkVudGVyIENsZWFydGV4dDogIik7CiAgICB3aGlsZSgxKSB7CiAgICAJY2ggPSBnZXRjaGFyKCk7CiAgICAJaWYgKGNoID09ICdcbicgfHwgY2ggPT0gRU9GKSBicmVhazsKCiAgICAgICAgaW5wdXRbaisrXSA9IGNoOwogICAgfQogICAgaW5wdXRbal0gPSAnXDAnOwoKICAgIHByaW50ZigiXG5IZXggZW5jb2RpbmcgaXM6IFxuIik7CiAgICBmb3IoaSA9IDA7IGlucHV0W2ldICE9ICdcMCc7IGkrKykgewogICAgICAgIHByaW50ZigiJXggIiwgaW5wdXRbaV0pOwogICAgfQogICAgcHJpbnRmKCJcbkJpbmFyeSBlbmNvZGluZyBpczogXG4iKTsKICAgIGZvcihpID0gMDsgaW5wdXRbaV0gIT0gJ1wwJzsgaSsrKSB7CiAgICAgICAgdG9fYmluYXJ5KGlucHV0W2ldKTsKICAgIH0KICAgIAogICAgCiAgICAKCXJldHVybiAwOwp9Cg==