模运算即求余运算。“模”是“Mod”的音译,模运算多应用于程序编写中。 Mod 的含义为求余。模运算在数论和程序设计中都有着广泛的应用,从奇偶数的判别到素数的判别,从模幂运算到最大公约数的求法,从孙子问题到凯撒密码问题,无不充斥着模运算的身影。 例如 11 Mod 2,值为 1 上述模运算多用于程序编写,举一例来说明模运算的原理: Turbo Pascal 对 mod 的解释是这样的: A Mod B=A—(A div B) * B (div 含义为整除)基本理论 基本概念: 给定一个正整数 p,任意一个整数 n,一定存在等式 n = kp + r ; 其中 k、r 是整数,且 0 ≤ r 〈 p,称呼 k 为 n 除以 p 的商,r 为 n 除以 p 的余数. 对于正整数 p 和整数 a,b,定义如下运算: 取模运算:a % p(或 a mod p),表示 a 除以 p 的余数。 模 p 加法:(a + b) % p ,其结果是 a+b 算术和除以 p 的余数,也就是说,(a+b) = kp +r,则(a + b) % p = r。 模 p 减法:(a-b) % p ,其结果是 a—b 算术差除以 p 的余数。 模 p 乘法:(a * b) % p,其结果是 a * b 算术乘法除以 p 的余数. 说明: 1. 同余式:正整数 a,b 对 p 取模,它们的余数相同,记做 a ≡ b % p 或者 a ≡ b (mod p)。 2。 n % p 得到结果的正负由被除数 n 决定,与 p 无关.例如:7%4 = 3, —7%4 = —3, 7%—4 = 3, —7%—4 = —3。 基本性质 (1)若 p|(a—b),则 a≡b (% p)。例如 11 ≡ 4 (% 7), 18 ≡ 4(% 7) (2)(a % p)=(b % p)意味 a≡b (% p) (3)对称性:a≡b (% p)等价于 b≡a (% p) (4)传递性:若 a≡b (% p)且 b≡c (% p) ,则 a≡c (% p) 运算规则 模运算与基本四则运算有些相似,但是除法例外.其规则如下: (a + b) % p = (a % p + b % p) % p (1) (a — b) % p = (a % p - b % p) % p (2) (a * b) % p = (a % p * b % p) % p (3) (a^b) % p = ((a % p)^b) % p (4) 结合率: ((a+b) % p + c) % p = (a + (b+c) % p) % p (5) ((a*b) % p * c)% p = (a * (b*c) % p) % p (6) 交换率: (a + b) % p = (b+a) % p (7) (a * b)...