Впаскале (abc) с процедуры (любым написать : прямоугольник задан своими координатами,вычислить периметр.

епклсзкищут епклсзкищут    2   28.06.2019 12:00    0

Ответы
muratowaasya muratowaasya  22.07.2020 18:20
Чтобы задать прямоугольник, достаточно указать координаты концов его диагонали, например, идущей из левого верхнего угла в правый нижний, т.е. две точки: B(x1,y1) и D(x2,y2). Но можно также задать и другую диагональ (AC). Если считать, что стороны прямоугольника параллельны осям координат то длины сторон могут быть найдены как
l_1=|x_2-x_1|, \ l_2=|y_2-y_1|
Тогда можно найти и периметр:
P=2(l_1+l_2)=2(|x_2-x_1|+|y_2-y_1|)
Нахождение периметра оформим процедурой Per(x1,y1,x2,y2,P)

procedure Per(x1,y1,x2,y2:real;var P:real);
begin
  P:=2*(abs(x2-x1)+abs(y2-y1))
end;
var
  x1,x2,y1,y2,p:real;

begin
  Write('Введите координаты любой вершины прямоугольника: ');
  Read(x1,y1);
  Write('Введите координаты противоположной вершины прямоугольника: ');
  Read(x2,y2);
  Per(x1,y1,x2,y2,p);
  Writeln('Периметр прямоугольника равен ',p)
end.

Тестовое решение:
Введите координаты любой вершины прямоугольника: 5 -7
Введите координаты противоположной вершины прямоугольника: -4 12
Периметр прямоугольника равен 56
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика