Module:number base: Difference between revisions

From Linguifex
Jump to navigation Jump to search
No edit summary
No edit summary
Line 3: Line 3:
local floor, insert = math.floor, table.insert
local floor, insert = math.floor, table.insert


-- Ross Berteig on SO: https://stackoverflow.com/a/3554821/13154853
-- Ross Berteig on SO: https://stackoverflow.com/a/3554821
function export.base12(n)
function export.base12(n)
     n = floor(tonumber(n))
     n = floor(tonumber(n))

Revision as of 23:17, 29 June 2023

Documentation for this module may be created at Module:number base/doc

local export = {}

local floor, insert = math.floor, table.insert

-- Ross Berteig on SO: https://stackoverflow.com/a/3554821
function export.base12(n)
    n = floor(tonumber(n))
    local digits = "0123456789¹²"
    local t = {}
    repeat
        local d = (n % 12) + 1
        n = floor(n / 12)
        insert(t, 1, digits:sub(d,d))
    until n == 0
    return table.concat(t)
end

return export