梅森素数和完全数
梅森素数是格式为 的素数,其中梅森素数指数
本身也是一个素数. 每个梅森素数与一个偶完全数相对应.
生成梅森素数指数列表.
In[1]:=
![Click for copyable input](assets.zh/mersenne-primes-and-perfect-numbers/In_1.png)
mpe = Table[MersennePrimeExponent[n], {n, 1, 10}]
Out[1]=
![](assets.zh/mersenne-primes-and-perfect-numbers/O_1.png)
构建相对应的梅森素数.
In[2]:=
![Click for copyable input](assets.zh/mersenne-primes-and-perfect-numbers/In_2.png)
mp = 2^mpe - 1
Out[2]=
![](assets.zh/mersenne-primes-and-perfect-numbers/O_2.png)
构建相对应的完全数.
In[3]:=
![Click for copyable input](assets.zh/mersenne-primes-and-perfect-numbers/In_3.png)
pn = 2^(mpe - 1) (2^mpe - 1)
Out[3]=
![](assets.zh/mersenne-primes-and-perfect-numbers/O_3.png)
In[4]:=
![Click for copyable input](assets.zh/mersenne-primes-and-perfect-numbers/In_4.png)
AllTrue[pn, PerfectNumberQ]
Out[4]=
![](assets.zh/mersenne-primes-and-perfect-numbers/O_4.png)
在前 225 个素数列表中用红色显示较小的梅森素数指数,以显示其分布的稀疏程度.
In[5]:=
![Click for copyable input](assets.zh/mersenne-primes-and-perfect-numbers/In_5.png)
primes = Replace[Prime@Range[225],
x_?MersennePrimeExponentQ :> Style[x, Red, Bold], 1];
In[6]:=
![Click for copyable input](assets.zh/mersenne-primes-and-perfect-numbers/In_6.png)
Multicolumn[primes, Alignment -> {Center, Center}, Spacings -> {1, 1},
Frame -> All, FrameStyle -> Directive[Orange, Dashing[Small]]]
Out[6]=
![](assets.zh/mersenne-primes-and-perfect-numbers/O_5.png)