Top.Mail.Ru
Ответы

Как легко найти простые числа???

По дате
По рейтингу
Аватар пользователя
Новичок
13лет

Как найти простые числа?
Один из способов предложил еще в III в. до н. э. древнегреческий математик Эратосфен
. Этот способ, названный «решетом Эратосфена» , позволяет найти все простые числа, не превышающие заданное число.
Простых чисел бесконечно много.
Это доказал другой древнегреческий ученый Евклид.
В своем сочинении «Начала» он приводит теорему: «Первых (простых) чисел существует больше любого указанного числа их» .
Простые числа, хотя и называются простыми, но загадок задают очень много.
Если посмотреть на первые простые числа: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, то можно заметить, что все они нечетные, кроме 2.
Еще посмотрите на пары: 3 и 5, 5 и 7, 11 и 13.
Эти числа отличаются друг от друга на 2. Такие числа называют близнецами.
Среди простых чисел, меньших 100 - 8 пар близнецов и даже одна «тройня» - числа 3, 5, 7.
Чем дальше от нуля, тем близнецов становится меньше, но сколько их вообще - неизвестно,
неизвестно также конечно или бесконечно количество пар близнецов.
С древних времен математики пытались вывести формулу, с помощью которой можно вычислять простые числа.
Леонард Эйлер предложил формулу n2-n+41, которая при всех n от 0 до 40 дает простые числа,
но при n=41 получается число, которое делится на 41. Так что, универсальной формулы не найдено.

Источник: <noindex><a rel="nofollow" href="http://hypatia.magomir.ru/ariph/lesson16.html" target="_blank">http://hypatia.magomir.ru/ariph/lesson16.html</a></noindex>
Аватар пользователя
Ученик
7лет

А, может, вам подойдёт простая программа на Бейсик-Спектруме?
Тогда снимите со шкафа свой старенький Спекки, вынесите его на балкон и сдуйте с него пыль и включите. Если работает - введите следующую программу:

10 DIM A(2263)
20 LET A(1)=2: LET M=2
30 FOR A=3 TO 20011 STEP 2
40 PRINT #0; AT 0,0; A;”,_”;M
50 FOR B=1 TO M
60 LET E=A(B): LET S=A/E
70 IF S=INT S THEN GO TO 110
80 IF S<E THEN GO TO 100
90 NEXT B
100 LET A(M)=A: LET M=M+1
110 NEXT A
120 FOR I=1 TO 2263
130 PRINT I; TAB 7; A(I)
140 NEXT I

(В строке 40 знак "_" означает просто пробел.)

Ну что, ввели? Запускайте! Программа вычисляет ВСЕ простые числа до 20011 (это -максимальное простое число.). Если нужно иной предел - подкорректируйте это число в строке 30. Тогда нужно будет скорректировать и число 2263 (количество простых чисел в искомом пределе) в строке 10. Мне были нужны именно эти цифры.

Поделитесь потом своим мнением о программе...

Аватар пользователя
Мудрец
13лет

Насколько я помню, простые числа делятся только на 1 и на саму себя. Вот небольшой ряд-2,3,5,7,11,13,17,19,23,29,31 и так далее.