求模运算(取余)
计算 a mod n,支持负数取模,并解释同余概念
模运算定义
a = q·n + r,其中 0 ≤ r < |n|
这里采用「余数非负」约定(与数学/多数语言一致):先取 q = ⌊a/n⌋(向负无穷取整),再 r = a − q·n,保证 r 落在 [0, |n|) 内。负数取模示例:(−7) mod 3 = 2,因为 −7 = (−3)·3 + 2。
同余:若 a mod n = b mod n,则称 a ≡ b (mod n),即 a−b 是 n 的整数倍。
提示:注意与某些语言「向零取整」结果不同(如 −7 mod 3 在 C 中为 −1),本工具采用数学约定。