#include <stdio.h> #include <stdint.h> void print_base(uint16_t num, uint8_t base) { // Your logic here char buffer[17]; int idx = 0; if(num == 0){ printf("0"); return; } while(num > 0){ uint8_t digit = num % base; if(digit < 10){ buffer[idx] = '0' + digit; idx++; } else{ buffer[idx] = 'A' + (digit - 10); idx++; } num /= base; } for(int i = idx - 1; i >= 0; i--){ printf("%c", buffer[i]); } } int main() { uint16_t num; uint8_t base; scanf("%hu %hhu", &num, &base); print_base(num, base); return 0; }
Test Cases
Test Results
Input
10 2
Expected Output
1010