pascalabcnet/InstallerSamples/Algorithms/Eratosthenes.pas

27 lines
511 B
ObjectPascal
Raw Normal View History

// "Решето Эратосфена" - вычисление простых чисел
2015-05-14 22:35:07 +03:00
const n = 100000;
var primes: set of integer;
2015-05-14 22:35:07 +03:00
begin
primes := [2..n];
for var i:=2 to round(sqrt(n)) do
begin
if not (i in primes) then
continue;
var x := i*i;
while x<=n do
begin
Exclude(primes,x);
x += i;
end;
end;
writeln('Простые числа < ',n,':');
2015-05-14 22:35:07 +03:00
writeln(primes);
writeln;
writeln('Время вычисления: ',Milliseconds/1000);
2015-05-14 22:35:07 +03:00
end.