Cod sursa(job #147187)

Utilizator GavrilaVladGavrila Vlad GavrilaVlad Data 2 martie 2008 17:46:17
Problema Ciurul lui Eratosthenes Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.76 kb
var v:array[0..2000001]of shortint;
    p:array[1..1024]of longint;
    n,j,k,u,i:qword;
    f:text;
begin
   assign(f,'ciur.in');
   reset(f);
   read(f,n);
   close(f);
   i:=1;
   repeat
   i:=i+1;
   if v[i]=0 then begin j:=i;
                        while(j<n)and(j>0)do
                        begin
                        j:=j+i;
                        v[j]:=1;
                        end;
                  end;
   until i=n;
   i:=n+1;
   repeat
   i:=i-1;
   if v[i]=0 then begin u:=u+1;
                        p[u]:=i;
                  end;
   until(i=2)or(u=1000);
   assign(f,'ciur.out');
   rewrite(f);
   writeln(f,u);
   u:=u+1;
   repeat
   u:=u-1;
   write(f,p[i],' ');
   until u=1;
   writeln(f);
   close(f);
end.