梅森素数指数p与相邻数的关系

我通过质因数分解发现指数2203和2281,都有公因数19;指数21701分解为7✖️31✖️100+1

指数216091分解为147的平方✖️10+1

且147被分解为3✖️7✖️7

指数20996011分解为1449的平方✖️10+1

且1449被分解为3✖️3✖️7✖️23

我从20多万和2000多万里面都发现了这样神奇的分解,而且都有2✖️3✖️5✖️7,这样不难看出在2亿多跟20多亿的时候,如果有这样用2✖️5✖️7再乘以100以内的质数开平方,然后试试+1,如果这个数字加上去是质数,且减去1能分解为类似有公因数2、3、5、7,这四个数随便怎么开平方立方,再乘以一个质数开平方,试一试弄到指数里面会不会成为新发现的梅森素数。

204575491、227040031、201924101、207532837、2136274561、2179301759等这类数字将成为着重关注的。

f59bb1184048458aa8df483b8ccdf631.jpg

 d696ba28728b402f9945e7ec92da80d0.jpg

 只有这样打破砂锅问到底才能取得新的成果。

Python中,梅森素数(Mersenne prime)是指形如\(2^p - 1\),其中\(p\)也是质素数。而寻找完美(perfect number),则是指一个正整恰好等于其所有真因之和的,比如6(1+2+3=6)就是最著名的完美。 计算梅森素数是否同时是完美并不常见,因为梅森素数本身就是非常罕见的现象。不过,我们可以分别编写两个函来检查一个是否是梅森素数以及判断它的前一项\(2^{p-1}\)是否是一个完全(如果它是,则\(2^p - 1\)就是完美)。下面是一个简单的示例: ```python def is_mersenne_prime(p): """Check if a Mersenne candidate (2^p - 1) is prime.""" # 实现 primality check for base cases and even numbers if p < 3 or (p & 1 == 0 and p > 2): return False # Use Miller-Rabin test for larger numbers from math import sqrt if p == 3: return True trial = int(sqrt(2**p - 1)) + 1 for _ in range(trial - 1): witness = pow(2, (p - 1) // 2, 2**p - 1) if witness != 1 and witness != (2**p - 2): return False return True def is_perfect_number(n): """Check if the sum of divisors of n equals n.""" sum_of_divisors = sum(i for i in range(1, n) if n % i == 0) return sum_of_divisors == n # 使用这两个函来查找 for p in range(2, 50): # 可以调整范围以搜索更多梅森素数 if is_mersenne_prime(p): mersenne_num = 2**p - 1): # 因为梅森素数形式是 2^p - 1 print(f"{mersenne_num} 是一个完美,因为它减去一后是 {mersenne_num - 1} 的完美") ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值