var
x1,y1,x2,y2,x3,y3:integer; {координаты вершин }
a,b,c:real; {длины сторон треугольника }
p,S:real; {полупериметр и площадь треугольника}
BEGIN
{ввод коодринат треугольника}
writeln('A(x1,y1)'); write('x1 = ');readln(x1); write('y1 = ');readln(y1);
writeln('B(x2,y2)'); write('x2 = ');readln(x2); write('y2 = ');readln(y2);
writeln('C(x3,y3)'); write('x3 = ');readln(x3); write('y3 = ');readln(y3);
{вычисление длин сторон треугольника}
a:=sqrt(sqr(x1-x2)+sqr(y1-y2));
b:=sqrt(sqr(x2-x3)+sqr(y2-y3));
c:=sqrt(sqr(x3-x1)+sqr(y3-y1));
{проверка на существование - две любые стороны должны быть
больше третьей }
if (a<b+c)and(b<a+c)and(c<a+b) then
begin
writeln('Треугольник существует.');
p:=(a+b+c)/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln('S = ',S:3:1);
end else writeln('Треугольник не существует.');
readln;
END.