Python用函数输出2-100间的所有孪生素数
时间: 2024-02-03 12:13:26 浏览: 238
孪生素数是指相差为2的两个素数,因此可以先写一个函数用于判断一个数是否为素数,然后再遍历2-100间的所有数,判断其是否为素数并且其相邻的数也是素数。
下面是代码实现:
```python
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5)+1):
if n % i == 0:
return False
return True
def twin_primes():
for i in range(2, 99):
if is_prime(i) and is_prime(i+2):
print("({}, {})".format(i, i+2))
twin_primes()
```
输出结果为:
```
(3, 5)
(5, 7)
(11, 13)
(17, 19)
(29, 31)
(41, 43)
(59, 61)
(71, 73)
```
这些都是2-100间的孪生素数。
相关问题
输出1-100之间的孪生质数
孪生质数是指相差为2的两个质数,因此我们可以编写一个函数来判断一个数字是否为质数,然后遍历1到100之间的数字,找出相邻的两个质数。以下是Python代码实现:
```python
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n**0.5)+1):
if n % i == 0:
return False
return True
for i in range(2, 99):
if is_prime(i) and is_prime(i+2):
print(i, i+2)
```
输出如下:
```
3 5
5 7
11 13
17 19
29 31
41 43
59 61
71 73
```
用python打印1-100以内的孪生质数
双胞胎质数是指两个连续的质数,比如 (3, 5)、(5, 7),它们之间的差恰好是2。在Python中,我们可以编写一个函数来找出并打印1到100范围内的孪生质数。以下是实现这个功能的一个简单示例:
```python
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
def find_twin_primes(start, end):
twin_primes = []
for num in range(start, end):
if is_prime(num) and (num + 2) <= end and is_prime(num + 2):
twin_primes.append((num, num + 2))
return twin_primes
# 打印1到100之间的孪生质数
start = 1
end = 100
primes = find_twin_primes(start, end)
for pair in primes:
print(f"({pair[0]}, {pair[1]})")
阅读全文
相关推荐














