29/09/2018
Dưới đây là chương trình thực hiện vẽ đồ thị hàm số trong ngôn ngữ lập trình Turbo Pascal. Để vẽ đồ thị hàm số khác bạn cần thay hàm số tương ứng và các hệ số tỉ lệ thích hợp.

Trong phần vẽ đã được test thử với một số hàm:

              {Gia tri ham so}

              {Ham x^2}

              {y := trunc((i*i)/(dvx));}

 

              {Ham sin(x)}

              {y :=trunc(2*dvy*(sin(i*pi/180)));}

Để xem kết quả vẽ các hàm này bạn cần bỏ ngoặc chú thích ({}) và chú thích phần tính giá trị hàm không cần.

PROGRAM  Vedothi;

USES

 CRT, GRAPH;

 VAR

            i, dvx,dvy, y, x0, y0:integer;

            Device,Mode:integer;

 BEGIN

{Ma nguon tham khao tai www.chiasethongtin.com}

   {Xoa man hinh, khoi tao do hoa}

   ClrScr;

   InitGraph(Device,Mode,'');

   {Kiem tra neu co loi do hoa dua ra thong bao}

   If GraphResult<>0 then

       Begin

          Write('Loi do hoa! ', GraphErrorMsg(GraphResult) );

          Exit;

       End;

          {Lay gia tri toa do lon nhat theo truc x, y}

          {Gia tri don vi x, y}

          dvx:=64;

          dvy:=32;

          {Goc toa do}

          x0:= 320;

          y0:= 240 ;

              { Ve 2 truc toa do }

          Line (dvx,y0,9*dvx,y0);   { Truc Ox}

          Line (x0,dvy,x0,12*dvy);   { Truc Oy}

           for i:=-8*dvx to 8*dvx do

             {PutPixel (x0+i,y0-trunc(2*dvy*sin(i*pi/(2*dvx)) ),yellow );}

             Begin

              {Gia tri ham so}

              {Ham x^2}

              {y := trunc((i*i)/(dvx));}

               {Ham sin(x)}

              {y :=trunc(2*dvy*(sin(i*pi/180)));}

               {ham y = (2*sqr(x)+1)/(1-exp(x+2))}

              if (1-exp(i/dvx+2))<>0 then

              y := trunc(8*dvy*(2*sqr(i/dvx)+1)/(1-exp(i/dvx+2)));

               {Ve diem gia tri}

              PutPixel (x0+i,y0-y ,yellow );

             end;

           readln;

          CloseGraph;

  END.