lua 10進制轉換成其它進制table表示


-- params@num integer
-- params@radix integer 進制基數(2~) 默認為10
-- NOTE:先不輸出符號
function NumberToArray(num, radix)
    if type(num) ~= "number" and tonumber(num) == nil then
        ERROR("NumberToArray", "params is not a number : ",num);
        return {0};
    end

    num = math.abs(tonumber(num));if num == 0 then
        INFO("tl.NumberToArray", "params 0 ");
        return {0};
    end

    radix = math.abs(tonumber(radix) or 10);
    if radix <= 1 then
        ERROR("tl.NumberToArray", "radix is error : ",num);
        return {0};
    end

    local retArray = {};
    while num ~= 0 do
        table.insert(retArray, 1, math.mod(num, radix));
        num = math.floor(num/radix);
    end

return retArray; end

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM