查看“模块:MathUtil”的源代码
←
模块:MathUtil
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
local util_args = require('Module:ArgsUtil') local util_text = require('Module:TextUtil') -- MathUtil local p = {} function p.sign(v) if v == 0 then return 0 end return (v > 0 and 1) or -1 end function p.printWithSign(v) return (v > 0 and ('+%s'):format(v)) or v end function p.roundnum(v, bracket) bracket = bracket or 1 return math.floor(v/bracket + p.sign(v) * 0.5) * bracket end function p.percent(v, bracket) return p.roundnum(v * 100, bracket or 2) .. '%' end function p.mod(a, b) return a - math.floor(a/b)*b end function p.sum(tbl) local total = 0 for _, v in pairs(tbl) do total = total + v end return total end function p.tonumber(str) if not str then return nil end local raw_number = str:gsub(',','') return tonumber(raw_number) end function p.formatNumber(str) local num = tonumber(str) if num then return mw.getLanguage('en'):formatNum(num) else return str end end function p.serializeNumber(N) local chr = tostring(N):sub(-1) local lookup = { ['1'] = 'st', ['2'] = 'nd', ['3'] = 'rd' } return N .. (lookup[chr] or 'th') end function p.deserialize(str) local deserialized = str:gsub('[A-Za-z]*','') if deserialized == '' then return nil end return deserialized end function p.deserializeRangeToTable(str) str = str:gsub('[A-Za-z]*','') return util_args.splitAndMap(str, '%-', tonumber) end function p.padleft(num, digits) local str = tostring(num) local tbl = util_text.split(str, '') local len = #tbl local outputTbl = {} for k = 1, len do outputTbl[k] = tbl[len + 1 - k] end for k = len + 1, digits do outputTbl[k] = '0' end local outputReversed = table.concat(outputTbl, '') return outputReversed:reverse() end return p
该页面使用的模板:
模块:MathUtil/doc
(
查看源代码
)
返回至
模块:MathUtil
。
导航菜单
个人工具
登录
名字空间
模块
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
随机页面
最近更改
最新文件
常用
上传多个文件
工具
链入页面
相关更改
特殊页面
页面信息