local 字集库 = require("u8_to_a")
local 基算库 = require(字集库.u8_to_a("算机_程语_月_基类_数_基算"))
local math = math
local string = string
local s = {}
-- 指数
--~ 左加数
--~ 右加数
function s.指数(o1, o2, o3)
local k1
if o3 then
--~ 指数次
k1 = 基算库.除法(o2, o3)
return o1 ^ k1
else
return o1 ^ o2
end
end
-- 指数次
--~ 数
--~ 指数底
function s.指数次(o1, o2)
local k1
--~ 指数次
k1 = math.log(o1) / math.log(o2)
return k1
end
--~ 数
function s.二底指数次(o1)
local k1
--~ 指数次
_, k1 = math.frexp(o1)
return k1
end
-- 向大取整和向小取整
--~ 数
function s.向小取整(o1)
return math.floor(o1)
end
-- 几位整数和几位小数
--~ 数
--~ 几位整数
function s.几位整数(o1, o2)
return string.format("%0" .. o2 .. "d", o1)
end
--~ 数
--~ 几位小数
function s.几位小数(o1, o2)
return string.format("%." .. o2 .. "f", o1)
end
-- 正数与负数
--~ 数
function s.正数(o1)
if o1 >= 0 then
return o1
else
return -o1
end
end
--~ 数
function s.负数(o1)
if o1 >= 0 then
return -o1
else
return o1
end
end
-- 递加
do
local k1_0
--~ 数表
k1_0 = {}
function s.递加(o1)
if k1_0[o1] then
else
k1_0[o1] = 0
end
k1_0[o1] = k1_0[o1] + 1
return k1_0[o1]
end
end
-- 最值
function s.最大值()
return math.huge
end
function s.最小值()
local k1
--~ 最大值
k1 = s.最大值()
return s.负数(k1)
end
--~ 数
function s.是否最值(o1)
if o1 == s.最大值()
or o1 == s.最小值() then
return true
else
end
end
--~ 数
function s.是否无效值(o1)
if o1 == o1 then
else
return true
end
end
--~ 数
function s.是否错值(o1)
local k1, k2
--~ 是否最值
k1 = s.是否最值(o1)
--~ 是否无效值
k2 = s.是否无效值(o1)
return k1 or k2
end
return s