將十進制正整數轉化爲定長爲4的N進制字符串,N可以是小於37的任意進制

將十進制正整數轉化爲定長爲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>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章