program HomeWork;
var a,b,c,P,Pp,S,Ha,Hb,Hc:real;
begin
write('Введите стороны треугольника a, b и c (числа через пробел): '); readln(a,b,c);
P:=a+b+c;
Pp:=P/2;
Ha:=2*sqrt(abs(Pp*(Pp-a)*(Pp-b)*(Pp-c)))/a;
Hb:=2*sqrt(abs(Pp*(Pp-a)*(Pp-b)*(Pp-c)))/b;
Hc:=2*sqrt(abs(Pp*(Pp-a)*(Pp-b)*(Pp-c)))/c;
S:=Hc*c/2;
writeln('Параметры треугольника со сторонами a=', a:0:3, ', b=', b:0:3, ' и c=', c:0:3, ':');
writeln('Периметр: ', P:0:3);
writeln('Площадь: ', S:0:3);
if Pp-a >= 0 then writeln('Высота, опущенная на сторону a: ', Ha:0:3)
else writeln('Высота, опущенная на сторону a (находится вне треугольника): ', Ha:0:3);
if Pp-b >= 0 then writeln('Высота, опущенная на сторону b: ', Hb:0:3)
else writeln('Высота, опущенная на сторону b (находится вне треугольника): ', Hb:0:3);
if Pp-c >= 0 then writeln('Высота, опущенная на сторону c: ', Hc:0:3)
else writeln('Высота, опущенная на сторону c (находится вне треугольника): ', Hc:0:3)
end.
program HomeWork;
var a,b,c,P,Pp,S,Ha,Hb,Hc:real;
begin
write('Введите стороны треугольника a, b и c (числа через пробел): '); readln(a,b,c);
P:=a+b+c;
Pp:=P/2;
Ha:=2*sqrt(abs(Pp*(Pp-a)*(Pp-b)*(Pp-c)))/a;
Hb:=2*sqrt(abs(Pp*(Pp-a)*(Pp-b)*(Pp-c)))/b;
Hc:=2*sqrt(abs(Pp*(Pp-a)*(Pp-b)*(Pp-c)))/c;
S:=Hc*c/2;
writeln('Параметры треугольника со сторонами a=', a:0:3, ', b=', b:0:3, ' и c=', c:0:3, ':');
writeln('Периметр: ', P:0:3);
writeln('Площадь: ', S:0:3);
if Pp-a >= 0 then writeln('Высота, опущенная на сторону a: ', Ha:0:3)
else writeln('Высота, опущенная на сторону a (находится вне треугольника): ', Ha:0:3);
if Pp-b >= 0 then writeln('Высота, опущенная на сторону b: ', Hb:0:3)
else writeln('Высота, опущенная на сторону b (находится вне треугольника): ', Hb:0:3);
if Pp-c >= 0 then writeln('Высота, опущенная на сторону c: ', Hc:0:3)
else writeln('Высота, опущенная на сторону c (находится вне треугольника): ', Hc:0:3)
end.