pascal 整型质数输出

来源:百度知道 编辑:UC知道 时间:2024/05/18 02:53:35

Program xxx(input,output);
var
n,i:integer; f:boolean;
begin
for n:=1 to 1000 do
begin
f:=true;
for i:=2 to trunc(sqrt(n)) do
if (n mod i =0) then begin f:=false;break;end;
if f then writeln(n:4);
end;
end.

求一个数是否是质数用fermat素性检验最快,复杂度可以认为是o(1)的
求大量质数,比如n以内的质数筛是最快的,复杂度是o(nlogn)的
2楼的算法是o(n^2)的,太慢了。

Qword 是0 到 18446744073709551615吗 int64也不错可以算到20!

应该是用递归最快!

用塞选法