-- 四捨五入。実数numを、小数idp桁で丸める。
function math.round(num, idp)
if idp and idp>0 then
local mult = 10^idp
return math.floor(num * mult + 0.5) / mult
end
return math.floor(num + 0.5)
end
-- 対象が整数なら"integer"、実数なら"float"、数値でないならnilが返ってくる。
-- Lua5.3に同じ関数が存在する。
math.type = math.type or function(num)
if type(num) == "number" then
if num%1 == 0 then
return "integer"
else
return "float"
end
end
return nil
end