2的整数次方幂的个位数是多少?

x=2^n,其中n为正整数,令 f(n)=2^n mod 10,求f。

由于n>=1且n为整数,因此 2^n 一定为偶数。对于2的整数次方幂,对其质因数分解只能得到2,由于系数中没有5,因此 f(n)<>0。于是 f(n) 只可能有4个取值:2、4、6、8。

由于模乘运算的性质,对于模10的计算而言,两个正整数相乘时只需要考虑其个位即可:

a*b mod 10 = (a mod 10)*(b mod 10) mod 10

由于2的整数次方幂的个位只有2、4、6、8四个可能的取值,根据上述性质,可以很容易地得到:

*2468
24826
48642
62468
86284

很明显,当且仅当乘数个位为6时,乘积与另一乘数的个位相等。2的整数次方幂中,满足个位为6的最小数值是2^4=16

我们知道:

f(n+4)=2^(n+4) mod 10=(2^4 * 2^n) mod 10=(2^4 mod 10)*(2^n mod 10) mod 10=6*(2^n mod 10) mod 10

根据前面的表格,我们可以进一步得出:

f(n+4)=2^(n+4) mod 10=(2^n mod 10)mod 10=2^n mod 10=f(n)

故f在其定义域上是一个周期为4的函数,即:

f(n)=f(n mod 4)

注意此处有个小问题是f(0)并不在f的定义域内。为了简便起见,我们令f(0)=6。这样一来,就没有什么不是拉格朗日插值解决不了的问题了。

定义: g(x)=-10x^3/3+15x^2-47x/3+6

注:若此问题是为了用程序来算,此处也可以用查表法:

xg(x)
06
12
24
38

则:

f(n)=g(n mod 4)