uses crt, graph;

const graphic_driver_dir = '';
var gd, gm, cx, cy: integer;
    n, i: integer;
    xy: array[byte]of word;

begin
clrscr;
       gd:=detect;
       initgraph(gd,gm,graphic_driver_dir);
       cx:=getmaxx div 2;
       cy:=getmaxy div 2;
       closegraph;

 {Date de intrare}
       writeln('Introdu nr. de puncte (intre 1 si 128):');
       readln(n);
       Writeln('Introdu coordonatele punctelor (Xi, Yi):',#10#13,'Xi in [1..',2*cx,'] and Yi in [1..',2*cy,']');

 {Generarea coordonatlor punctelor}
       randomize;
       for i:=0 to n-1 do begin
           xy[2*i]  := random(2*cx);
           xy[2*i+1]:= random(2*cy);
       end;
{Introducerea coordonatelor punctelor de la tastatura}
       {for i:=0 to n-1 do begin write('i=',i,': '); readln(xy[2*i],xy[2*i+1]); end;}

{Initierea modului grafic}
       initgraph(gd,gm,graphic_driver_dir);

{Linii de reper}
       setcolor(red);
       line(cx,1,cx,getmaxy);
       line(1,cy,getmaxx,cy);

{Desenarea punctelor din partea de jos a ecranului}
       for i:=0 to n-1 do
           if(xy[2*i+1]>=cy)then putpixel(xy[2*i],xy[2*i+1],white);


       readkey;
       closegraph;
end.