默尼森数是指一个素数p满足2^p-1也是素数的数。例如,当p=2时,2^2-1=3,3是一个素数,因此2是一个默尼森数。目前已知的默尼森数是2^82,589,933-1,它有24,862,048位。
2. 默尼森数的求解方法
er测试。
ernenene数是素数,否则不是素数。
er测试的代码
er(p)
s = 4 = 2 p – 1ge(p – 2) s == 0
ersennee(p)ote(p) Falseer(p)
e)<= 1 Falseget 0.5) + 1) % i == 0 False True
ain()ge(2, 32)ersennee(i)tat(i))
ameain__’ain()
erersenneeeain函数中,大家可以通过循环遍历所有可能的p值,然后判断2^p-1是否为默尼森数。
er测试,大家可以求解默尼森数。这种方法虽然比较复杂,但是可以有效地判断一个数是否为默尼森数。