График вроде строит, но я не пойму, почему у меня только горизонтальная ось?
В тот момент, когда программа вычисляет координату У горизонтальной оси (у0), после следует рисовать координатные оси....
???
uses Graph;
var x1, x2, y1, y2, x, y, dx, mx, my : real;
l , b, h, w, x0, y0 : integer;
st : string;
grDriver, grMode, ErrCode : integer;
Function f(x : real) : real;
begin
f := 2*Exp(x) - 4*cos(2*x);
end;
begin
grDriver:=VGA; GrMode:=VGAHi;
InitGraph(grDriver,grMode,' ');
ErrCode:=GraphResult;
if ErrCode<>grOk then Halt(1);
l:=40;b:=400;
h:=300;w:=300;
x1:=0;x2:=25;dx:=0.01;
y1:=0;y2:=0;
x:=x1;
repeat
y:=f(x);
if y<y1 then y1:=y;
if y>y2 then y2:=y;
x:=x+dx;
until(x>=x2);
my:=h/abs(y2-y1);
mx:=w/abs(x2-x1);
x0:=1;
y0:=b-abs(Round(y1*my));
Line(1,b,1,b-h);
Line(x0,y0,x0+w,y0);
Str(y2:5:1,st);
OutTextXY(l+5,b-h,st);
Str(y1:5:1,st);
OutTextXY(l+5,b,st);
x:=x1;
repeat
y:=f(x);
Putpixel(x0+Round(x*mx),y0-Round(y*my),13);
x:=x+dx;
until(x>=x2);
Readln;
CloseGraph;
end.