Cod sursa(job #150197)

Utilizator valytgjiu91stancu vlad valytgjiu91 Data 6 martie 2008 18:46:08
Problema Ciurul lui Eratosthenes Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.51 kb
var f,g:text;
p:array[2..2000000]of 0..1;
n,i,j,d,m:longint;
begin
assign(f,'ciur.in');
reset(f);
readln(f,n);
close(f);
m:=n-1;
fillchar(p,n-1,1);
d:=2;
while d<=n do
begin
  while p[d]=0 do d:=d+1;
  j:=d+d;
  while j<=n do
    begin
     if p[j]=1 then
               begin
               dec(m);
               p[j]:=0;
               end;
     j:=j+d;
    end;
  d:=d+1;
end;
assign(g,'ciur.out');
rewrite(g);
writeln(g,m);
for i:=2 to n do
if p[i]=1 then write(g,i,' ');
close(g);
end.