uses graphabc; 
 type fun = function (x:  real):  real; 
 function f(x:  real):  real; begin f: =0.5*x*cos(2*x); end; 
 // l (logical) - логические координаты// s (screen) -  координатыprocedure drawgraph(x1,x2,y1,y2:  real;  f:  fun);  var xl,xl0,wl,yl,yl0,hl:  real;  xs0,ws,ys0,hs:  integer;  function ltosx(xl:  real):  integer;  begin result: =round(ws/wl*(xl-xl0)+xs0);  end;  function ltosy(yl:  real):  integer;  begin result: =round(hs/hl*(yl-yl0)+ys0);  end;  function stolx(xs:  integer):  real;  begin result: =wl/ws*(xs-xs0)+xl0;  end;  var xi:  integer; begin // drawgraph xs0: =0;  ys0: =windowheight;  ws: =windowwidth;  hs: =windowheight;  xl0: =x1;  yl0: =y1;  wl: =x2-x1;  hl: =-(y2-y1);  moveto(xs0,ltosy(f(stolx(;  for xi: =xs0+1 to xs0+ws do lineto(xi,ltosy(f(stolx(; end; 
 begin // program setwindowcaption('график функции');  drawgraph(-12,12,-23,23,f); end.
Популярные вопросы