function change_num(num,base) {
var lets = 'abcdefghijklmnopqrstuvwxyz';
lets = lets.split('');
if (num / base < 1) {
return lets[num];
}
if (num / (Math.pow(base,2)) < 1) {
return lets[Math.floor(num/base)] + lets[(num % base)];
}
if (num / (Math.pow(base,3)) < 1) {
var numreturn;
numreturn = lets[Math.floor(num/(Math.pow(base,2)))];
numreturn += lets[Math.floor((num%Math.pow(base,2))/base)];
numreturn += lets[(num % base)];
return numreturn;
}
if (num / (Math.pow(base,4)) < 1) {
var numreturn;
numreturn = lets[Math.floor(num/Math.pow(base,3))];
numreturn += lets[Math.floor(num%Math.pow(base,3)/(Math.pow(base,2)))];
numreturn += lets[Math.floor((num%Math.pow(base,2))/base)];
numreturn += lets[(num % base)];
return numreturn;
}
if (num / (Math.pow(base,5)) < 1) {
var numreturn;
numreturn = lets[Math.floor(num/Math.pow(base,4))];
numreturn += lets[Math.floor(num%Math.pow(base,4)/(Math.pow(base,3)))];
numreturn += lets[Math.floor(num%Math.pow(base,3)/(Math.pow(base,2)))];
numreturn += lets[Math.floor((num%Math.pow(base,2))/base)];
numreturn += lets[(num % base)];
return numreturn;
}
}
Работает на любой базе. Не мог бы потрудиться написать рекурсивную функцию, поэтому сделал это трудным путем, вы, вероятно, можете сделать вывод, что я делаю.