Initial release
This commit is contained in:
26
Goldbach Décomposer en somme de premiers.py
Normal file
26
Goldbach Décomposer en somme de premiers.py
Normal file
@@ -0,0 +1,26 @@
|
||||
from math import sqrt
|
||||
from itertools import product
|
||||
|
||||
input = (4878, 8704, 7320, 7618, 7964, 5356, 1152, 8566, 5396, 7678, 2818, 1060, 9306, 1362, 7912, 5948, 7974, 3122, 3362, 3620, 3260, 4058, 4710, 7210, 304, 6774, 738, 7644, 928, 2636, 4752, 8564, 2772, 5792, 5120, 2266, 6002, 9020, 8006, 8284, 5730, 5416, 2662, 728, 7050, 8098, 9018, 5806, 5618, 9866)
|
||||
|
||||
def premiers(n):
|
||||
prem=list(range(2,n+1))
|
||||
k=2
|
||||
nRacine=sqrt(n)
|
||||
while k<nRacine:
|
||||
prem=[p for p in prem if p<=k or p%k!=0]
|
||||
k=prem[prem.index(k)+1] # nouveau nombre premier
|
||||
return prem
|
||||
|
||||
|
||||
table = list(product(premiers(max(input)), repeat=2))
|
||||
solution = list()
|
||||
|
||||
for i in input:
|
||||
for pair in table:
|
||||
if pair[0]+pair[1] == i:
|
||||
solution.append(pair)
|
||||
break
|
||||
|
||||
print(solution)
|
||||
|
||||
Reference in New Issue
Block a user