Да, да..... С этой ошибкой разобрался... Теперь работает, только сохраняет в файл черный экран. Приведу код, правильно ли я вызов save_bmp поставил?
Код
program lab;
uses crt,graph,BMP_PLUS;
var a:array[1..10] of real; b:array[1..10] of real;
t1,t2,t3,t4,a0,a1,e,dn:real;
i,gd,gm,dp:integer;
begin clrscr;
initgraph(gd,gm,'');
line(50,30,50,400);
line(50,400,600,400);
for i:=1 to 11 do line(48,(400-30*i),52,(400-30*i));
for i:=1 to 17 do line((50+30*i),398,(50+30*i),402);
for i:=0 to 15 do begin
dp:=20*i;
dn:=0.384*0.01*dp;
circle((50+round(dp*1.5)),(400-round(dn*300)),1);
end;
t1:=0; t2:=0; t3:=0; t4:=0; a0:=0; a1:=0; e:=1;
a[1]:=330; b[1]:=1.110*0.0001;
a[2]:=285; b[2]:=0.999*0.0001;
a[3]:=255; b[3]:=0.888*0.0001;
a[4]:=225; b[4]:=0.777*0.0001;
a[5]:=195; b[5]:=0.666*0.0001;
a[6]:=165; b[6]:=0.555*0.0001;
a[7]:=135; b[7]:=0.444*0.0001;
a[8]:=105; b[8]:=0.333*0.0001;
a[9]:=75; b[9]:=0.278*0.0001;
a[10]:=45; b[10]:=0.167*0.0001;
for i:=1 to 10 do begin
t1:=t1+a[i];
t2:=t2+a[i]*a[i];
t3:=t3+b[i];
t4:=t4+a[i]*b[i];
end;
{writeln(t1:12:8);
writeln(t2:12:8);
writeln(t3:12:8);
writeln(t4:12:8);} i:=0;
while e>0.0000001 do begin
i:=i+1;
a0:=(t3-t1*a1)/10;
e:=abs(t1*a0+t2*a1-t4);
a1:=a1+0.000000000001;
end;
for i:=0 to 16 do begin
dp:=20*i;
dn:=10000*(a0+a1*dp);
circle((50+round(dp*1.5)),(400-round(dn*300)),1);
end;
setcolor(red);
for i:=1 to 10 do circle((50+round(a[i]*1.5)),(400-round(b[i]*300*10000)),1);
save_bmp(0,0,getmaxx,getmaxy,'screen_l.bmp',0);
readln;
end.