#include <stdio.h> #include <stdint.h> void print_hex(uint16_t num) { // Your logic here if(num==0){ printf("%d",0); } else{ char w[100]; int q[100]; int index1=0; int index2=0; while(num>0){ int y=num%16; if(y==15){ w[index1]='F'; index1+=1; } else{ q[index2]=y; index2+=1; } num/=16; } w[index1]='\0'; if(index2==0){ printf("%s",w); } else{ for(int i=index2-1;i>=0;i--){ printf("%d",q[i]); } } } } int main() { uint16_t num; scanf("%hu", &num); print_hex(num); return 0; }
Test Cases
Test Results
Input
255
Expected Output
FF