#include <stdio.h> #include <stdint.h> void print_base(uint16_t num, uint8_t base) { char result[32]; int i = 0; if (num == 0) { printf("0"); return; } while (num > 0) { int rem = num % base; if (rem < 10) result[i++] = rem + '0'; else result[i++] = rem - 10 + 'A'; // for hex digits A-F num = num / base; } // print in reverse order for (int j = i - 1; j >= 0; j--) printf("%c", result[j]); } 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