取余是针对整形的,但是有时候一些特殊需求,我们需要 float 型对整形取下余数。比如,将角度化到 0- 360 范围内。
今天看到 lua 的实现方式:
a % b == a - math.floor(a/b)*b
其它语言的也类似,关键就在使用 floor() 函数进行向下取整。
关于 floor(),示例如下:
floor(3.14) = 3.0
floor(9.999999) = 9.0
floor(-3.14) = -4.0
floor(-9.999999) = -10
b 取整数的话,是可以满足我们的需求的。