Cod sursa(job #1562427)

Utilizator gra99Graur Gabriel gra99 Data 5 ianuarie 2016 02:27:05
Problema Ciurul lui Eratosthenes Scor 30
Compilator fpc Status done
Runda Arhiva educationala Marime 0.67 kb
Program p1;
uses crt;
var u:array[1..2000000] of boolean;
 i,j,n,m,k2:longint;
 f,g:text;
function prim(k:integer):boolean;
 var j,k1:integer;
 begin k1:=0;
 for j:=1 to k do begin
    if k mod j=0 then inc(k1);
                       end;
    if k1=2 then prim:=true;
    end;
 begin
 assign(f,'ciur.in');reset(f);
 assign(g,'ciur.out');rewrite(g);
 read(f,n);
 repeat
 inc(m);
 until sqr(m)>=n;
 for j:=2 to n do u[j]:=true;
 for i:=2 to m do
     if prim(i) then
        for j:=i+1 to n do
           if j mod i=0 then u[j]:=false;
 for j:=2 to n do
              if u[j]=true then
                         inc(k2);


 write(g,k2);
 close(g);
 end.