计算大数的模数

时间:2016-11-17 06:05:56

标签: discrete-mathematics

我正在研究离散结构的测验。我该如何计算2 ^ 50(mod5)?我可以使用计算器用较小的数字计算结果,但我不能用大数字来计算。

2 个答案:

答案 0 :(得分:0)

我们假设我们有一个数字N = 5X + Y,其中N,X和Y是整数(即N mod 5 = Y)。从那时起,2N = 2(5X + Y) = 10x + 2Y就是2N mod 5 = 2Y mod 5

类似地,因为2 ^ 50可以改写为((2 ^ 5)^ 5)^ 2:

2^50 mod 5 = ((2^5 mod 5)^5 mod 5)^2 mod 5

2^50 mod 5 = ((2)^5 mod 5)^2 mod 5

2^50 mod 5 = (2)^2 mod 5

2^50 mod 5 = 4

答案 1 :(得分:0)

您可以利用if (2^x = t)(mod A) then (2^(x*y) = t^y)(mod A)

这一事实

因此,我们有:

2^2  = (-1) (mod 5) which means
2^50 = (-1)^25(mod 5)
     = -1 (mod 5) (which is the same as 4 (mod 5))

使用实际计算,我们看到2^50 = 1125899906842624 = -1(mod 5)