47e0a87646 2024-02-10 1: local 字集库 = require("u8_to_a")
47e0a87646 2024-02-10 2: local 基算库 = require(字集库.u8_to_a("算机_程语_月_基类_数_基算"))
47e0a87646 2024-02-10 3: local math = math
62e417ee6c 2024-02-10 4: local string = string
8dd55b61b6 2024-02-06 5: local d = {}
47e0a87646 2024-02-10 6: -- 指数
82138b1e52 2024-02-06 7: --~ 左加数
82138b1e52 2024-02-06 8: --~ 右加数
47e0a87646 2024-02-10 9: function d.指数(o1, o2, o3)
47e0a87646 2024-02-10 10: local k1
47e0a87646 2024-02-10 11: if o3 then
47e0a87646 2024-02-10 12: --~ 指数次
47e0a87646 2024-02-10 13: k1 = 基算库.除法(o2, o3)
47e0a87646 2024-02-10 14: return o1 ^ k1
47e0a87646 2024-02-10 15: else
47e0a87646 2024-02-10 16: return o1 ^ o2
47e0a87646 2024-02-10 17: end
47e0a87646 2024-02-10 18: end
62e417ee6c 2024-02-10 19: -- 指数次
62e417ee6c 2024-02-10 20: --~ 数
62e417ee6c 2024-02-10 21: --~ 指数底
62e417ee6c 2024-02-10 22: function d.指数次(o1, o2)
62e417ee6c 2024-02-10 23: local k1
62e417ee6c 2024-02-10 24: --~ 指数次
62e417ee6c 2024-02-10 25: k1 = math.log(o1) / math.log(o2)
62e417ee6c 2024-02-10 26: return k1
62e417ee6c 2024-02-10 27: end
47e0a87646 2024-02-10 28: -- 向上取整和向下取整
47e0a87646 2024-02-10 29: --~ 数
47e0a87646 2024-02-10 30: function d.向下取整(o1)
47e0a87646 2024-02-10 31: return math.floor(o1)
62e417ee6c 2024-02-10 32: end
62e417ee6c 2024-02-10 33: -- 几位整数
62e417ee6c 2024-02-10 34: --~ 数
62e417ee6c 2024-02-10 35: --~ 几位整数
62e417ee6c 2024-02-10 36: function d.几位整数(o1, o2)
62e417ee6c 2024-02-10 37: return string.format("%0" .. o2 .. "d", o1)
47e0a87646 2024-02-10 38: end
47e0a87646 2024-02-10 39: --~ 数
47e0a87646 2024-02-10 40: function d.负数(o1)
47e0a87646 2024-02-10 41: return -o1
47e0a87646 2024-02-10 42: end
47e0a87646 2024-02-10 43: -- 绝对值
47e0a87646 2024-02-10 44: function d.绝对值(o1)
47e0a87646 2024-02-10 45: if o1 > 0 then
47e0a87646 2024-02-10 46: return o1
47e0a87646 2024-02-10 47: else
47e0a87646 2024-02-10 48: return d.负数(o1)
c3565d121c 2024-02-10 49: end
c3565d121c 2024-02-10 50: end
c3565d121c 2024-02-10 51: -- 递加
c3565d121c 2024-02-10 52: do
c3565d121c 2024-02-10 53: local k1_0
c3565d121c 2024-02-10 54: --~ 数表
c3565d121c 2024-02-10 55: k1_0 = {}
c3565d121c 2024-02-10 56: function d.递加(o1)
c3565d121c 2024-02-10 57: if k1_0[o1] then
c3565d121c 2024-02-10 58: else
c3565d121c 2024-02-10 59: k1_0[o1] = 0
c3565d121c 2024-02-10 60: end
c3565d121c 2024-02-10 61: k1_0[o1] = k1_0[o1] + 1
c3565d121c 2024-02-10 62: return k1_0[o1]
47e0a87646 2024-02-10 63: end
420d28e057 2024-02-06 64: end
8dd55b61b6 2024-02-06 65: return d