#include <stdio.h>
#include <math.h>
int getDecimal();
char hexNum[100];
int main(int argc, char **argv) {
printf("Enter the hex number: "); int i = 0;
char ch;
hexNum[i++] = ch;
}
hexNum[i] = '\0';
printf("\nHexadecimal Number is: %s", hexNum
); int n = getDecimal();
printf("\nDecimal Number is: %d" + n
); return 0;
}
int getDecimal() {
int var = 0;
int index = 0;
while (hexNum[index] != '\0') {
var = 16 * var;
switch (hexNum[index]) {
case 'a':
var = var + 10;
break;
case 'b':
var = var + 11;
break;
case 'c':
var = var + 12;
break;
case 'd':
var = var + 13;
break;
case 'e':
var = var + 14;
break;
case 'f':
var = var + 15;
break;
default:
var=var+('0'-hexNum[index]);
break;
}
++index;
}
return var;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CgppbnQgZ2V0RGVjaW1hbCgpOwpjaGFyIGhleE51bVsxMDBdOwoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KSB7CglwcmludGYoIkVudGVyIHRoZSBoZXggbnVtYmVyOiAiKTsKCWludCBpID0gMDsKCWNoYXIgY2g7Cgl3aGlsZSAoKGNoID0gZ2V0Y2hhcigpKSAhPSAnXG4nKSB7CgkJaGV4TnVtW2krK10gPSBjaDsKCX0KCWhleE51bVtpXSA9ICdcMCc7CglwcmludGYoIlxuSGV4YWRlY2ltYWwgTnVtYmVyIGlzOiAlcyIsIGhleE51bSk7CglpbnQgbiA9IGdldERlY2ltYWwoKTsKCXByaW50ZigiXG5EZWNpbWFsIE51bWJlciBpczogJWQiICsgbik7CglyZXR1cm4gMDsKfQoKaW50IGdldERlY2ltYWwoKSB7CglpbnQgdmFyID0gMDsKCWludCBpbmRleCA9IDA7Cgl3aGlsZSAoaGV4TnVtW2luZGV4XSAhPSAnXDAnKSB7CgkJdmFyID0gMTYgKiB2YXI7CgoJCXN3aXRjaCAoaGV4TnVtW2luZGV4XSkgewoJCWNhc2UgJ2EnOgoJCQl2YXIgPSB2YXIgKyAxMDsKCQkJYnJlYWs7CgkJY2FzZSAnYic6CgkJCXZhciA9IHZhciArIDExOwoJCQlicmVhazsKCQljYXNlICdjJzoKCQkJdmFyID0gdmFyICsgMTI7CgkJCWJyZWFrOwoJCWNhc2UgJ2QnOgoJCQl2YXIgPSB2YXIgKyAxMzsKCQkJYnJlYWs7CgkJY2FzZSAnZSc6CgkJCXZhciA9IHZhciArIDE0OwoJCQlicmVhazsKCQljYXNlICdmJzoKCQkJdmFyID0gdmFyICsgMTU7CgkJCWJyZWFrOwoJCWRlZmF1bHQ6CgkJCXZhcj12YXIrKCcwJy1oZXhOdW1baW5kZXhdKTsKCQkJYnJlYWs7CgkJfQoJCSsraW5kZXg7Cgl9CglyZXR1cm4gdmFyOwp9Cg==