const picScale = 10;
var
ma_x, ma_y, mb_x, mb_y, mc_x, mc_y: integer;
ha_x, ha_y, hb_x, hb_y, hc_x, hc_y: integer;
ba_x, ba_y, bb_x, bb_y, bc_x, bc_y: integer;
i,j,m:integer;
k1,k2,k3,z1,z2,z3:integer; {integer}
p,a,b,c:real;
g1,g2,l:{extended}real;
Xh, Yh, Zh: integer;
begin
with paintbox1.Canvas do begin
pen.Color := clBlack;
moveto(picScale*strtoint(edit1.Text), picScale*strtoint(edit2.Text));
lineto(picScale*strtoint(edit3.Text), picScale*strtoint(edit4.Text));
lineto(picScale*strtoint(edit5.Text), picScale*strtoint(edit6.Text));
lineto(picScale*strtoint(edit1.Text), picScale*strtoint(edit2.Text));
pen.Color := clGreen;
k1:=10*strtoint(edit1.Text);
k2:=10*strtoint(edit3.text);
k3:=10*strtoint(edit5.text);
z1:=10*strtoint(edit2.text);
z2:=10*strtoint(edit4.text);
z3:=10*strtoint(edit6.text);
a:= sqrt(sqr(k1-k2)+sqr(z1-z2));
b:= sqrt(sqr(k2-k3)+sqr(z2-z3));
c:= sqrt(sqr(k1-k3)+sqr(z1-z3));
p:=(a+b+c)/2;
{g1:= abs(sqrt(sqr(i-k2)+sqr(j-z2))); }
g2:= (2*sqrt(p*(p-a)*(p-b)*(p-c)))/c;
l:=abs(g2);
for i:=k1 to k3 do
begin
for j:=z1 to z3 do
begin
g1:= sqrt(sqr(i-k2)+sqr(j-z2));
if (g1=l) then {почему,когда g1=l она не переходит к выполнению условия???}
begin
Xh := i;
Yh := j;
end;
end; end;
moveto(10*strtoint(edit3.Text), picScale*strtoint(edit4.Text));
lineto(Xh, Yh);
Сообщение отредактировано: Глюк -