begin
library A0, A1, A5, A15;
integer p, m, n, r;
n := 10 000;
writetext(30, {{c}number _ of _ primes _ below:});
write(30, format({nddddd}), n);
writetext(30, {:});
r := entier(2×sqrt(n));
begin
boolean array candidate [2 : n];
comment deal with 2 separately;
candidate[2] := true;
for m := 4 step 2 until n do
candidate[m] := false
comment now deal with the other factors;
for p := 3 step 2 until n do
candidate[p]:= true;
for p := 3 step 2 until r do
begin
if candidate[p] then
for m := p × p step p until n do
candidate[m] := false
end
m := 1; comment because 2 is prime;
for p := 3 step 2 until n do
if candidate[p] then m := m + 1;
end
write(30, format({ndddddc}), m);
close(30);
end
|