Cod sursa(job #875666)

Utilizator atatomirTatomir Alex atatomir Data 10 februarie 2013 16:45:43
Problema Ciurul lui Eratosthenes Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.52 kb
var n,i,cont,h,h2,j:longint;
    a:array[2..2000001]of boolean;

begin
  assign(input,'ciur.in'); reset(input);
  assign(output,'ciur.out'); rewrite(output);

  read(n);  cont := 0;
  for i := 2 to n do a[i] := true;

  h := trunc(sqrt(n))+1 ;
  for i := 2 to h do
  begin
    if a[i]= true then
    begin
      h2 := (n div i) ;
      for j := 2 to h2 do
        a[j*i] := false;
    end;
  end;

  for i := 2 to n do
    if a[i] = true then inc(cont);

  write(cont);

  close(input);
  close(output);
end.