Даны три точки a(x1,y1) b(x2,y2) и c(x3,y3). определите,будут ли они расположены на одной прямой. напишите алгоритм на паскале . надо

Умару11 Умару11    2   03.06.2019 23:40    5

Ответы
sasha1916 sasha1916  01.10.2020 18:55
Var
x1, y1, x2, y2, x3, y3, a, b, c, p, s: real;
begin
readln(x1, y1, x2, y2, x3, y3);
a:=sqrt(sqr(abs(x1-x2))+sqr(abs(y1-y2)));
b:=sqrt(sqr(abs(x2-x3))+sqr(abs(y2-y3)));
c:=sqrt(sqr(abs(x1-x3))+sqr(abs(y1-y3)));
p:=(a+b+c)/2;
s:=sqrt(p*(p-a)*(p-b)*(p-c));
if s=0 then write('Лежат на одной прямой') else write('Не лежат на одной прямой');
end.

Объясняю. Образуем из этих трёх точек треугольник. a, b, c - стороны треугольника. p - полу-периметр треугольника. s - площадь треугольника. Площадь вычисляется по формуле Герона. Если площадь равна нуля, значит точки лежат на одной прямой. Если нет - не лежат. 
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика