首頁>Club>
9
回覆列表
  • 1 # 夢想總難追

    1. 模運算是取餘運算(記做 % 或者 mod),具有周期性的特點。 m%n的意思是n除m後的餘數, 當m遞增時m%n呈現週期性特點, 並且n越大,週期越長,週期等於n。

    例如

    0 % 20 = 0,1 % 20 = 1, 2 % 20 = 2, 3 % 20 = 3, ..., 19 % 20 = 19

    20 % 20 = 0,21 % 20 = 1,22 % 20 = 2,23 % 20 = 3, ...,39 % 20 = 19

    2. 如果 m % n = r,那麼可以推出如下等式

    m = k * n + r (k為大於等於0的整數, r <= m)

    3. 同餘式, 表示正整數a,b對n取模,它們的餘數相同,記做 a ≡ b mod n或者a = b (mod n)。

    根據2的等式可以推出 a = kn + b 或者 a - b = kn

    證明: ∵ a = k1 * n + r1

    b = k2 * n + r2

    ∴ a - b = (k1 - k2) * n + (r1 - r2)

    a = k * n + (r1 - r2) + b

    ∵ a, b對n取模同餘,r1 = r2

    ∴ a = k * n + b (k = k1 - k2)

    4. 模運算規則, 模運算與基本四則運算有些相似,但是除法例外。其規則如下

    (a + b) % n = (a % n + b % n) % n (1)

    (a - b) % n = (a % n - b % n) % n (2)

    (a * b) % n = (a % n * b % n) % n (3)

    ab % n = ((a % n)b) % n (4)


    (1)式證明

    ∵ a = k1*n + r1


    b = k2*n + r2


    a % n = r1


    b % n = r2


    ∴(a+b) % n = ((k1+k2)*n + (r1+r2)) % n = (r1+r2) % n = (a % n + b % n)% n

    得證

    (2)式證明同上

    (3)式證明

    a = k1*n + r1

    b = k2*n + r2

    (a*b) % n = (k1k2n2 + (k1r2+k2r1)n + r1r2) % n = r1r2 % n = (a %n * b %n ) % n

    (4)式證明

    設 a % n = r

    ab %n= (a * a * a * a…*a) %n = (a %n * a %n * a %n * … * a %n) %n = rb % n = ((a % n) b) % n

    模運算看起來不是很直觀,但是可以用來推匯出一些有用的東西。 例如(4)式可以用來降冪運算,例如計算6265 % 133,直接計算的話需要算出6265 利用(4)式可以進行降冪運算。

    6265 % 133

    = 62 * 6264 % 133

    = 62 * (622)32 % 133

    = 62 * 384432 % 133

    = 62 * (3844 % 133)32 % 133

    = 62 * 12032 % 133


    = 62 * 3616 % 133

    = 62 * 998 % 133

    = 62 * 924 % 133

    = 62 * 852 % 133

    = 62 * 43 % 133

    = 2666 % 133

    = 6

  • 中秋節和大豐收的關聯?
  • 3x3黃金聯賽規則?