Cod sursa(job #903703)
Utilizator | Horvay balazsbalu | Data | 2 martie 2013 16:42:11 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.5 kb |
program eraszthotenesz;
var n,i,j,p,sz:longint;
a:array[1..2000000] of boolean;
f,g:text;
Begin sz:=0;
assign(f,'ciur.in');
assign(g,'ciur.out');
reset(f);rewrite(g);
readln(f,n); close(f);
a[1]:=false;
for i:=2 to n do a[i]:=true;
p:=2;
while p*p <= n do begin
j:=p*p;
while (j<= n) do begin
a[j]:=false;
j:=j+p;
end;
repeat p:=p+1 until a[p]=true;
end;
assign(f,'prim.out'); rewrite(f);
for i:=1 to n do if a[i]=true then inc(sz);
write(g,sz);
close(f);close(g);
End.