NitWikit/docs/扩展阅读/kether/数学运算.md

70 lines
1.4 KiB
Markdown
Raw Normal View History

2024-04-19 21:42:07 +08:00
---
sidebar_position: 2
---
# 数学运算
## Math
https://www.yuque.com/sacredcraft/kether/action-math
```
/* 加法运算:等价于 1+2+3 = 6 */
math add [ 1 2 3 ]
math + [ 1 2 3 ]
/* 减法运算:等价于 9-5-1 = 3 */
math sub [ 9 5 1 ]
math - [ 9 5 1 ]
/* 乘法运算:等价于 3x2x5 = 30 */
math mul [ 3 2 5 ]
math * [ 3 2 5 ]
/* 除法运算:等价于 6÷2 = 3 */
math div [ 6 2 ]
math / [ 6 2 ]
```
除了上面几种用法Math 还有一种比较舒服的写法
```
/* 计算 1 + 3 x 6 ÷ 3 - 2 */
math 1 + 3 * 5 / 6 - 2
```
## calc
https://github.com/TabooLib/taboolib/blob/master/module/module-kether/src/main/kotlin/taboolib/module/kether/action/transform/ActionJexl3.kt
- 加法a + b
- 减法a - b
- 乘法a * b
- 除法a / b
- 幂运算(我测试不能使用)
> 幂运算使用 ** 符号。例如,计算 2 的 3 次方2 ** 3。
- 开方(我测试不能使用)
> JEX 支持开方操作。例如,计算 9 的平方根sqrt(9)。
- 取整(我测试不能使用)
```
取整操作可以使用 floor()、ceil() 或 round() 函数。
floor(x):向下取整,返回不大于 x 的最大整数。
ceil(x):向上取整,返回不小于 x 的最小整数。
round(x):四舍五入,返回最接近 x 的整数。
```
- 取余:
> 取余操作使用 % 符号。例如,计算 10 除以 3 的余数10 % 3。
当然也可以使用括号
![](_images/括号.png)