將十進制正整數轉化爲定長爲4的N進制字符串,N可以是小於36的任意進制
進制轉換,將一個M進制的數轉換爲N進制數的過程:
1、M%N(M進制的數對N求餘) 餘數爲轉換後的低位
2、M/N的商作爲新的數繼續對N求餘
<script>
function changenum4(num){
var N = 36//進制數
var LEN = 4;//轉換後的定長
var arr = [];
var string = '';
while(num!=1){//商爲1結束循環
//除N取餘,將餘數存入數組中,作爲低位
y = toN(num % N);//取餘
arr.push(y);
num = parseInt(num / N);//
}
for(var i = arr.length -1;i>= 0;i--){
string += arr[i];
}
if(string.length >= LEN) return string;
while(string.length!=LEN){
string = 0 + string;
}
return string;
}
//大於等於0小於36的數對應的表示
function toN(num){
if(num > 35) return num;
var arr1 = ['0','1','2','3','4','5','6','7','8',
'9','A','B','C','D','E','F','G','H',
'I','J','K','L','M','N','O','P','Q',
'R','S','T','U','V','W','X','Y','Z'];
return arr1[num];
}
</script>