#include <stdio.h>
#include <stdint.h>
void print_binary(uint16_t val) {
// Your logic here
int n;
if(val <= 255){
uint8_t ex;
uint8_t shift;
n=8;
shift = 0x80;
while(n!=0){
ex = shift & val;
//printf(" shift : %d\n",ex);
if(ex >0) printf("1");
else printf("0");
shift = shift >> 1;
n--;
}
}
else {
uint16_t ex;
uint16_t shift;
n=16;
shift = 0x8000;
//printf(" shift : %d\n",shift);
while(n!=0){
ex = shift & val;
//printf(" shift : %d\n",shift);
if(ex > 0) printf("1");
else printf("0");
shift = shift >> 1;
n--;
}
}
}
int main() {
uint16_t val;
scanf("%hu", &val);
print_binary(val);
return 0;
}
Input
10
Expected Output
00001010