#include <stdio.h>
#include <stdint.h>
void print_base(uint16_t num, uint8_t base) {
int l=num>=128?8:4;
if(num==0) {
printf("0");
return;
}
if(base==2){
for(int i=l-1;i>=0;i--){
if(num&(1<<i)){
printf("1");
}
else printf("0");
}
}
else{
int i=0,c=0;
char str[5];
while(num){
int r=num%16;
if(r>9){
str[c++]=r+('A'-10);
}
else{
str[c++]=r+'0';
}
num=num/16;
}
for(int i=c-1;i>=0;i--){
printf("%c",str[i]);
}
}
}
int main() {
uint16_t num;
uint8_t base;
scanf("%hu %hhu", &num, &base);
print_base(num, base);
return 0;
}
Input
10 2
Expected Output
1010