function toBase(n, base) {
const digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
if (base < 2 || base > 36) {
throw new Error("Base must be between 2 and 36");
}
if (n === 0) {
return "0";
}
let result = "";
while (n > 0) {
const remainder = n % base;
result += digits[remainder];
n = Math.floor(n / base);
}
return result.split("").reverse().join("");
}
// Main program
try {
const number = 255;
console.log(`${number} in base 2 = ${toBase(number, 2)}`);
console.log(`${number} in base 8 = ${toBase(number, 8)}`);
console.log(`${number} in base 16 = ${toBase(number, 16)}`);
console.log(`${number} in base 36 = ${toBase(number, 36)}`);
} catch (err) {
console.error("Error:", err.message);
}
/*
run:
255 in base 2 = 11111111
255 in base 8 = 377
255 in base 16 = FF
255 in base 36 = 73
*/