Привет всем!
Итак, я почти закончил с проблемой, над которой я начал работать для школы, которая имеет дело с Ситом Эратосфена. Мне удалось заставить программу распечатать все простые числа от 2 до квадратного корня из 1000. Однако мой учитель просит меня использовать гипотезу простых чисел (?) К.Ф. Гаусс. Вот что он говорит:
C. Ф. Гаусс выдвинул гипотезу, что (N) определяется число простых чисел, меньших или равных N
так как (N) = N / loge (N), когда N приближается к бесконечности. Это было названо простым числом
гипотеза. В цикле for выведите простые числа, счетчик, указывающий его порядковый номер
число (1, 2, 3 и т. д.) и значение (N).
Я пытался сделать еще один цикл for и печатать простые числа, но он просто не работает для меня! тьфу
Любая помощь будет принята с благодарностью! :)
import math
def sieves(N):
x = 1000*[0]
prime = 2
print('2')
i = 3
while (i <= N):
if i not in x:
print(i)
prime += 1
j = i
while (j <= (N / i)):
x.append(i * j)
j += 1
i += 2
print("\n")
def main():
count = 0
for i in range (1000):
count = count + 1
print(sieves(math.sqrt(1000)))
main()