国际访客建议访问 Primers 编程伙伴 国际版站点 > Lua 教程 > math-module 以获得更好的体验。

# Lua 的 Math 模块

请查看 Lua 标准库模块列表 了解更多相关 API。
常量 说明
math.huge 数值的最大值,通常对应 C 语言中的 HUGE_VAL
math.maxinteger 整数的最大值,通常对应 C 语言中的 LONG_MAX
math.mininteger 整数的最小值,通常对应 C 语言中的 LONG_MIN
math.pi 圆周率 \(\pi\)
函数 说明
math.max 取最大值
math.min 取最小值
math.ceil 向上取整
math.floor 向下取整
math.modf 分解整数部分和小数部分(向零取整)
math.fmod 计算除法的余数
math.deg 弧度转角度
math.rad 角度转弧度
math.abs 计算绝对值
math.acos 计算反余弦
math.asin 计算反正弦
math.atan 计算反正切
math.cos 计算余弦
math.sin 计算余弦
math.tan 计算正切
math.exp 计算自然常数 \(e\) 的幂
math.log 计算对数
math.sqrt 计算平方根
math.tointeger 转换为整数
math.type 检查类型
math.ult 比较无符号整数大小

# math.abs

math.abs (x)

!subtitle:说明

计算 x 的绝对值。

!subtitle:参数

  • x - 一个数值

!subtitle:返回值

  • 返回 x 的绝对值

# math.acos

math.acos (x)

!subtitle:说明

计算 x 的反余弦。

!subtitle:参数

  • x - 弧度

!subtitle:返回值

  • 返回 x 的反余弦

# math.asin

math.asin (x)

!subtitle:说明

计算 x 的反正弦。

!subtitle:参数

  • x - 弧度

!subtitle:返回值

  • 返回 x 的反正弦

# math.atan

math.atan (y [, x])

!subtitle:说明

计算 y/x 的反正切。

!subtitle:参数

  • y - 弧度的分子

  • x - 弧度的分母;默认为 1

!subtitle:返回值

  • 返回 y/x 的反正切

# math.ceil

math.ceil (x)

!subtitle:说明

x 向上取整,返回大于或等于 x 的最小整数值。

!subtitle:参数

  • x - 一个数值

!subtitle:返回值

  • 返回大于或等于 x 的最小整数值

# math.cos

math.cos (x)

!subtitle:说明

计算 x 的余弦。

!subtitle:参数

  • x - 弧度

!subtitle:返回值

  • 返回 x 的余弦

# math.deg

math.deg (x)

!subtitle:说明

将弧度 x 转换为角度。

!subtitle:参数

  • x - 弧度

!subtitle:返回值

  • 返回弧度 x 对应的角度

# math.exp

math.exp (x)

!subtitle:说明

计算自然常数 ex 次方。

!subtitle:参数

  • x - 指数

!subtitle:返回值

  • 返回 \(e^x\)

# math.floor

math.floor (x)

!subtitle:说明

x 向下取整,返回小于或等于 x 的最大整数值。

!subtitle:参数

  • x - 一个数值

!subtitle:返回值

  • 返回小于或等于 x 的最大整数值

# math.fmod

math.fmod (x, y)

!subtitle:说明

计算 x 除以 y 的余数,其中商的部分向 0 取整。

!subtitle:参数

  • x - 被除数

  • y - 除数

!subtitle:返回值

  • 返回 x 除以 y 的余数

# math.log

math.log (x [, base])

!subtitle:说明

计算以 base 为底,x 的对数(\(log_{base}{x}\))。

!subtitle:参数

  • x - 真数

  • base - 底数;默认为自然常数 \(e\)

!subtitle:返回值

  • 返回以 base 为底,x 的对数

# math.max

math.max (x, ···)

!subtitle:说明

取最大值。

!subtitle:参数

  • x - 数值

  • ... - 数值

!subtitle:返回值

  • 返回参数中的最大值

# math.min

math.min (x, ···)

!subtitle:说明

取最小值。

!subtitle:参数

  • x - 数值

  • ... - 数值

!subtitle:返回值

  • 返回参数中的最小值

# math.modf

math.modf (x)

!subtitle:说明

分离数值的整数部分和小数部分。

!subtitle:参数

  • x - 要处理的数值

!subtitle:返回值

  • 返回整数部分和小数部分

# math.rad

math.rad (x)

!subtitle:说明

将角度 x 转换为弧度。

!subtitle:参数

  • x - 要转换的角度

!subtitle:返回值

  • 返回角度 x 对应的弧度

# math.sin

math.sin (x)

!subtitle:说明

计算 x 的正弦。

!subtitle:参数

  • x - 弧度

!subtitle:返回值

  • 返回 x 的正弦

# math.sqrt

math.sqrt (x)

!subtitle:说明

计算 x 的平方根。

!subtitle:参数

  • x - 被开方数

!subtitle:返回值

  • 返回 x 的平方根

# math.tan

math.tan (x)

!subtitle:说明

计算 x 的正切。

!subtitle:参数

  • x - 弧度

!subtitle:返回值

  • 返回 x 的正切

# math.tointeger

math.tointeger (x)

!subtitle:说明

将变量 x 转换为整数。

!subtitle:参数

  • x - 要被转换的变量

!subtitle:返回值

  • 成功时返回对应的整数值

  • 失败时返回 nil

# math.type

math.type (x)

!subtitle:说明

检查变量 x 的数值类型。

!subtitle:参数

  • x - 要检查的变量

!subtitle:返回值

  • x 是整数时返回 "integer"

  • x 是小数时返回 "float"

  • x 不是数值时返回 nil

# math.ult

math.ult (m, n)

!subtitle:说明

判断无符号整数 m 是否小于无符号整数 n

  • 如果 mn 是有符号整数,则会被转换为无符号整数

  • 如果 mn 不是整数,则会报错

!subtitle:参数

  • m - 要比较的无符号整数

  • n - 要比较的无符号整数

!subtitle:返回值

  • m \(<\) n 时返回 true

  • 否则返回 false

# 推荐阅读

Mathematical Manipulation - Lua 5.4 Reference Manual

本文 更新于: 2025-11-27 09:38:13 创建于: 2025-11-27 09:38:13