寻找反素数python代码
时间: 2024-10-20 19:01:52 浏览: 99
寻找反素数(即除了1和本身以外没有其他正因数的自然数)的Python代码可以这样编写:
```python
def is_prime(n):
"""判断一个数是否为质数"""
if n <= 1:
return False
for i in range(2, int(n**0.5) + 1): # 验证到根号n即可,节省计算时间
if n % i == 0:
return False
return True
def find_proth_number(limit):
"""寻找小于给定限制的Proth数(形式为4n + 1的素数)"""
proth_numbers = []
for num in range(5, limit, 2): # 只考虑奇数,因为Proth数是形如4n+1的形式
if is_prime(num):
# 检查下一个形如4n+1的数是否也是素数
candidate = (num * 2) + 1
if is_prime(candidate):
proth_numbers.append((num, candidate))
return proth_numbers
# 示例
limit = 100
proth_pairs = find_proth_number(limit)
print(f"小于{limit}的Proth数对有:")
for pair in proth_pairs:
print(pair)
阅读全文