# premiers_jumeaux.py
01| def premier_inefficace(n):
02| if n < 2:
03| return False 04| k = 2
05| while k < n:
06| if n % k == 0:
07| return False 08| k += 1
09| return True 10|
11| def premier(n):
12| if n < 2:
13| return False 14| k = 2
15| while k**2 <= n:
16| if n % k == 0:
17| return False 18| k += 1
19| return True 20|
21| def jumeaux_inefficace(q):
22| p1 = 3
23| for k in range(1, q+1):
24| while not(premier_inefficace(p1)) or not(premier_inefficace(p1 + 2)):
25| p1 += 2 26| p1 += 2
27| return p1 - 2, p1 28|
29| def jumeaux(q):
30| p1 = 3
31| for k in range(1, q+1):
32| while not(premier(p1)) or not(premier(p1 + 2)):
33| p1 += 2 34| p1 += 2
35| return p1 - 2, p1 36|
37| print(jumeaux(10**2), jumeaux(10**3), jumeaux(10**4)) 38|
39| # q = 100 : 3821, 3823 40| # q = 1000 : 79559, 79561 41| # q = 10000 : 1260989, 1260991 42|
43|
1