Pagini recente » Cod sursa (job #909825) | Cod sursa (job #2651420) | Borderou de evaluare (job #3043359) | Borderou de evaluare (job #1601757) | Cod sursa (job #406194)
Cod sursa(job #406194)
//23:24 27.02.2010
//Moldovan Ilie Marcel
//Ciurul lui Eratosthenes
const maxn=2000000;
type vector=array[1..maxn shr 1]of boolean;
var n,nr,i:longint;
j:int64;
v:vector;//v[i]=false daca 2*i+1 este prim
begin
assign(input,'ciur.in');
reset(input);
assign(output,'ciur.out');
rewrite(output);
readln(n);
nr:=1;
i:=3;
while i<=n do
begin
if v[i shr 1]=false then
begin
inc(nr);
j:=int64(i)*i;
while j<=n do begin
v[j shr 1]:=true;
j:=j+i shl 1;
end;
end;
i:=i+2;
end;
writeln(nr);
close(output);
close(input);
end.