public class DecimalToBase12 {
// Converts a decimal number to base-12 and returns it as a string
public static String decimalToBase12(int decimalNumber) {
if (decimalNumber == 0) return "0";
StringBuilder base12 = new StringBuilder();
final char[] digits = "0123456789AB".toCharArray(); // Base-12 digits (A = 10, B = 11)
while (decimalNumber > 0) {
int remainder = decimalNumber % 12;
base12.append(digits[remainder]);
decimalNumber /= 12;
}
// Reverse to get the correct order
return base12.reverse().toString();
}
public static void main(String[] args) {
int decimalNumber = 100;
String base12Number = decimalToBase12(decimalNumber);
System.out.println("Base-12 representation: " + base12Number);
decimalNumber = 19621;
base12Number = decimalToBase12(decimalNumber);
System.out.println("Base-12 representation: " + base12Number);
}
}
/*
run:
Base-12 representation: 84
Base-12 representation: B431
*/