Cod sursa(job #2180317)
| Utilizator | Data | 20 martie 2018 19:46:03 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | fpc | Status | done |
| Runda | Arhiva educationala | Marime | 0.64 kb |
const MAX=1000000000;
var del: array[2..MAX] of boolean;
n,p,i,k,r,j:longint;
function ciurul(n:qword):qword;
var i,j:longint;
begin
for i:=2 to n do del[i]:=false;
i:=2;
repeat
if not del[i] then begin
j:=i*i;
while j<=n do begin
del[j]:=true;
j:=j+i;
end;
end;
i:=i+1;
until i*i>n;
for i:=2 to n do if not del[i] then r:=r+1;
ciurul:=r;
end;
begin
assign(input,'ciur.in');
assign(output,'ciur.out');
reset(input);
rewrite(output);
read(n);
r:=ciurul(n);
write(r);
close(input);
close(output);
end.