Получение простых чисел — различия между версиями

Материал из ALL
Перейти к: навигация, поиск
м
 
(не показано 19 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''Получение простых чисел''' – это алгоритм дающий набор простых чисел.
+
'''Получение простых чисел''' – это алгоритм, дающий набор простых чисел, не превышающих заданное.
  
'''[[Простые числа]]''' — это натуральные числа, имеющие только два делителя: 1 и само число (число 1 не считается простым числом, то есть простые числа — это 2, 3, 5, 7, 11,…).
+
'''Простые числа''' — это натуральные числа, которые делятся только на само себя и на единицу.
 
== Обозначения ==
 
== Обозначения ==
Введём обозначения:
+
'''n''' — натуральное число, '''n>2''';
 
+
'''n''' — натуральное число;
+
  
 
'''k''' — количество простых чисел, не превышающих '''n''';
 
'''k''' — количество простых чисел, не превышающих '''n''';
 +
 +
'''b<sub>i</sub>''' — признак '''i'''-числа, который равен 1 если '''i'''-число простое, иначе - 0;
  
 
'''p<sub>i</sub>''' — '''i'''-ое простое число.
 
'''p<sub>i</sub>''' — '''i'''-ое простое число.
== Алгоритм получения простых чисел ==
+
== Алгоритмы получения простых чисел ==
 +
=== Алгоритм 1 ===
 
Входные данные: '''n'''.
 
Входные данные: '''n'''.
  
 
[[файл:ППЧ01.JPG]]
 
[[файл:ППЧ01.JPG]]
  
Выходные данные: '''k; {p<sub>1</sub>,p<sub>2</sub>,…,p<sub>k</sub>}'''.
+
Выходные данные: '''k; {p<sub>1</sub>, p<sub>2</sub>, …, p<sub>k</sub>}; {b<sub>1</sub>, b<sub>2</sub>, …, b<sub>n</sub>}'''.
== Другие алгоритмы ==
+
=== Алгоритм 2 ===
* [[наибольший общий делитель]];
+
Входные данные: '''n'''.
* [[наименьшее общее кратное]];
+
 
* [[проверка кратности]];
+
[[файл:ППЧ02.JPG]]
* [[деление по модулю]];
+
 
* [[получение простых чисел]];
+
Выходные данные: '''k; {p<sub>1</sub>, p<sub>2</sub>, …, p<sub>k</sub>}; {b<sub>1</sub>, b<sub>2</sub>, …, b<sub>n</sub>}'''.
* [[разложение на множители]];
+
*Заметим, что данные алгоритмы похожы на алгоритм '''оптимизированное Решето Эратосфена''' из Википедии.
* [[составление перестановок]];
+
== [[Алгоритмы в арифметике|Другие алгоритмы:]] ==
* [[составление сочетаний]];
+
{{Список ААлг}}
* [[составление размещений]];
+
* [[составление разбиений]];
+
* [[сортировка]];
+
* [[алгоритм определения мест]];
+
* [[метод математической индукции]];
+
* [[схема примитивной рекурсии]];
+
* [[система счисления]].
+
 
== Ссылки ==
 
== Ссылки ==
* Википедия.
+
*[[Участник:Logic-samara]]
* [[Участник:Logic-samara]]
+
 
[[Категория:Математика]][[Категория:Алгоритмы]]
 
[[Категория:Математика]][[Категория:Алгоритмы]]

Текущая версия на 10:59, 16 января 2024

Получение простых чисел – это алгоритм, дающий набор простых чисел, не превышающих заданное.

Простые числа — это натуральные числа, которые делятся только на само себя и на единицу.

Обозначения

n — натуральное число, n>2;

k — количество простых чисел, не превышающих n;

bi — признак i-числа, который равен 1 если i-число простое, иначе - 0;

pii-ое простое число.

Алгоритмы получения простых чисел

Алгоритм 1

Входные данные: n.

ППЧ01.JPG

Выходные данные: k; {p1, p2, …, pk}; {b1, b2, …, bn}.

Алгоритм 2

Входные данные: n.

ППЧ02.JPG

Выходные данные: k; {p1, p2, …, pk}; {b1, b2, …, bn}.

  • Заметим, что данные алгоритмы похожы на алгоритм оптимизированное Решето Эратосфена из Википедии.

Другие алгоритмы:

Шаблон:Список ААлг

Ссылки