Вниз
Скачать: CL | DM;

Как узнать число простое или нет?   Найти похожие ветки 

 
Витёк   (2005-12-24 12:32) [0]

Простое число - это число, которое делится только на себя (без остатка).

Например, 1,2,3,5,7,11,13,17,19,23,29,31,37,… и так до бесконечности. . . .


 
SergP.   (2005-12-24 12:49) [1]

Когда-то была подобная ветка...

Самый простой способ, это


...
result:=true;
for i:=2 to trunc(sqrt(N)) do if (N mod i) =0 then
 begin
 result:=false;
 break;
 end;
...


Можно в цикле перебирать только нечетные числа, Будет быстрее,  но двойку тоже придется включить.

Если есть массив простых чисел до sqrt(N), то достаточно перебрать в цикле только их а не весь диапазон 2..sqrt(N)

и т.д.


 
Uncle Archi ©   (2005-12-24 12:50) [2]

Витёк   (24.12.05 12:32) [0]

Проверить, делится ли она на числа, начиная с 2 заканчивая Trunc(sqrt(N)) (т.е. корнем из числа).


 
Uncle Archi ©   (2005-12-24 12:53) [3]

Когда писал, не видел SergP.   (24.12.05 12:49) [1].


 
Mystic ©   (2005-12-24 17:38) [4]

Число один не относят к простым.


 
Aldor_   (2005-12-24 19:06) [5]

Если нужен список простых чисел до некоторого натурального N, лучше воспользоваться решетом Эратосфена (google forever).


 
wal ©   (2005-12-26 09:47) [6]


> Витёк   (24.12.05 12:32)
Простых способов нет, точнее простой, но медленный в [1] и [2]. А быстрых нет. На этом, пока, криптография и держится.

> Aldor_   (24.12.05 19:06)
Задача несколько обратная.


 
pasha_golub ©   (2005-12-26 09:51) [7]

http://algolist.manual.ru/maths/teornum/



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
3-1132777245
Serg1981
2005-11-23 23:20
2006.01.22
Подключение к SQL Server


2-1135859627
ezorcist
2005-12-29 15:33
2006.01.22
Как упаковать файл WinRar-ом


2-1135847930
n0p
2005-12-29 12:18
2006.01.22
Application.CreateForm(TDataModule, DataModule);


1-1134725456
oleggar
2005-12-16 12:30
2006.01.22
threads


14-1135611667
Fl@sh
2005-12-26 18:41
2006.01.22
Настройки редактора




   Наверх