Описать процедуру Dist(Px,Py,Ax,Ay,Bx,By,D), находящую расстояние D от точки P до прямой AB по формуле D = 2SPAB / |AB|, где SPAB — площадь треугольника PAB. С помощью этой процедуры найти расстояния от точки P до прямых AB, AC, BC, если даны координаты точек P, A, B, C — Pascal(Паскаль)

uses crt;
procedure Dist(px,py,ax,ay,bx,by:real;var d:real);
var s:real;
begin
s:=abs(ax*(by-py)+bx*(py-ay)+px*(ay-by))/2;
d:=2*s/sqrt(sqr(ax-bx)+sqr(ay-by));
write('Расстояние от точки Р до прямой АВ=',d:0:2);
end;
var px,py,ax,ay,bx,by,d:real;
begin
clrscr;
writeln('Введите координаты точки Р:');
readln(px,py);
writeln('Введите координаты точек на прямой:');
readln(ax,ay,bx,by);
Dist(px,py,ax,ay,bx,by,d);
readln
end.

Leave a Comment

6 + 3 =