Изменения

Перейти к: навигация, поиск

Решето Эратосфена

1946 байт добавлено, 19:31, 8 октября 2010
Новая страница: «'''Решето Эратосфена''' — алгоритм нахождения всех простых чисел до некото…»
'''Решето Эратосфена''' — алгоритм нахождения всех [[простое число|простых чисел]] до некоторого целого числа <tex>n</tex>, который приписывают древнегреческому математику Эратосфену Киренскому.

== Алгоритм ==
Для нахождения всех простых чисел не больше заданного числа ''n'', следуя методу Эратосфена, нужно выполнить следующие шаги:
# Выписать подряд все целые числа от двух до ''n'' (2, 3, 4, …, ''n'').
# Пусть переменная ''p'' изначально равна двум — первому простому числу.
# Вычеркнуть из списка все числа от 2''p'' до ''n'', делящиеся на ''p'' (то есть, числа 2''p'', 3''p'', 4''p'', …)
# Найти первое не вычеркнутое число, большее чем ''p'', и присвоить значению переменной ''p'' это число.
# Повторять шаги 3 и 4 до тех пор, пока ''p'' не станет больше, чем ''n''
# Все не вычеркнутые числа в списке — простые числа.

На практике, алгоритм можно немного улучшить следующим образом. На шаге №3, числа можно вычеркивать, начиная сразу с числа <tex>p^2</tex>, потому что все составные числа меньше его уже будут вычеркнуты к этому времени. И, соответственно, останавливать алгоритм можно, когда <tex>p^2</tex> станет больше, чем <tex>n</tex>.
175
правок

Навигация