СРОЧНО ПОМОГИТЕ ))
Задание 1.
Составьте алгоритм, определяющий является ли треугольник прямоугольным, если заданы три стороны. Алгоритм должен так же определять периметр треугольника, если он не является прямоугольным, и площадь фигуры, если это прямоугольный треугольник.
Задание 2.
Нарисуйте блок-схему составленного алгоритма.
Answers & Comments
const
eps = 1e-10;
var
a:array [1..3] of Real;
i: integer;
max: Real;
max_i: integer;
sqr_h: Real;
sqr_k: Real;
sp: Real;
begin
Write('Введите длину сторон треугольника: ');
Readln(a[1],a[2],a[3]);
max:=a[1];
max_i:=1;
for i := 2 to 3 do
if a[i]>max then
begin
max:=a[i];
max_i:=i;
end;
sqr_k := 0;
for i:=1 to 3 do
if i<>max_i then
sqr_k:=sqr_k+sqr(a[i]);
sqr_h:=Sqr(max);
if (Abs(sqr_k-sqr_h)<eps) then
begin
Writeln('Треугольник прямоугольный');
sp:=1;
for I := 1 to 3 do
if i<>max_i then
sp:=sp*a[i];
sp:=sp/2;
Writeln('Площадь треугольника = ',sp:0:5);
end
else
begin
Writeln('Треугольник не прямоугольный');
sp:=0;
for I := 1 to 3 do
sp:=sp+a[i];
Writeln('Периметр треугольника = ',sp:0:5);
end;
Readln;
end.