Для упрощения задачи не будем рассматривать вырожденные варианты, т.е. решаем её для случая, когда все три точки являются вершинами некоторого треугольника. Тогда эти точки и есть точки пересечения линий, на которых лежат стороны треугольника.Воспользуемся известным уравнением прямой, проходящей через две точки с координатами (x₁;y₁) и (x₂;y₂):Ax+By+C=0, где A=y₂-y₁, B=x₁-x₂, C=y₁x₂-x₁y₂procedure Equation(x1,y1,x2,y2:real; var A,B,C:real);begin A:=y2-y1; B:=x1-x2; C:=y1*x2-x1*y2end;var x,y,a,b,c:array[1..3] of real; i:integer;begin Writeln('Введите парами чисел x,y координаты трех точек'); for i:=1 to 3 do begin Write('Точка ',i,': '); Read(x[i],y[i]) end; Equation(x[1],y[1],x[2],y[2],a[1],b[1],c[1]); Equation(x[1],y[1],x[3],y[3],a[2],b[2],c[2]); Equation(x[2],y[2],x[3],y[3],a[3],b[3],c[3]); { получены коэффициенты уравнений } for i:=1 to 3 do begin Write(a[i],'*x'); if b[i]>=0 then Write('+'); Write(b[i],'*y'); if c[i]>=0 then Write('+'); Writeln(c[i],'=0') endend.
Тестовое решение:Введите парами чисел x,y координаты трех точекТочка 1: 1 5Точка 2: 5 6Точка 3: 4 21*x-4*y+19=0-3*x-3*y+18=0-4*x+1*y+14=0