Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/local/bin/python3
- import math
- def prime_nums(N):
- "Возвращает все простые от 2 до N"
- deads = set(range(2, N))
- # последовательно уберем все числа, которые делятся на 2..sqrt(n)
- for i in range(2, int(math.sqrt(N))):
- # если числа нет в множестве deads - значит оно не простое
- if i in deads:
- deads -= set(range(2*i, N, i))
- return list(deads)
- nums = prime_nums(2000000)
- # проверка гиротезы "cумма простых чисел, начиная с 3 = 2^N - 1"
- summ = 0
- for i in range(1, len(nums)):
- summ += nums[i]
- lg = math.log(summ+1)/math.log(2)
- # выводим похожие
- if lg-math.floor(lg) < 0.0001:
- print('{0}: {1} as hex 0x{1:x}'.format(nums[i], summ))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement