СРОЧНО ДАМ 14 БАЛОВ СРОЧНО ПОМОГИТЕ СОСТАВИТЬ ПРОГРАММУ В ПАСКАЛЕ НАХОЖДЕНИЯ ПЕРИМЕТРА...

0 голосов
65 просмотров

СРОЧНО ДАМ 14 БАЛОВ
СРОЧНО ПОМОГИТЕ
СОСТАВИТЬ ПРОГРАММУ В ПАСКАЛЕ НАХОЖДЕНИЯ ПЕРИМЕТРА ПРЯМОУГОЛЬНИКА ПО ЗАДАННЫМ КООРДИНАТАМ ЕГО ВЕРШИН АBCDE


Информатика (26 баллов) | 65 просмотров
0

По заданным координатам его вершин

0

Заканчивайте про баллы писать в задании, тем более, что Вы указываете их неверно, т.е. по факту вводите людей в заблуждение.

Дано ответов: 2
0 голосов

Var ax,ay,bx,by,cx,cy,dx,dy,p:real;
begin
write ('Введите координаты точки A: ');
read (ax,ay);
write ('Введите координаты точки B: ');
read (bx,by);
write ('Введите координаты точки C: ');
read (cx,cy);
write ('Введите координаты точки D: ');
read (dx,dy);
p:=abs(2*((by-ay)+(cx-bx)));
writeln;
writeln ('Периметр = ',p);
end.


image
(10.7k баллов)
0

Для чего вводить координаты a1,b1,c1,d1, если Вы их в программе не используете?

0

Точнее, a,b,c1,d1

0

опять не точно, b - используется :D

0

Увы да, тут невозможно исправлять описки, а система обозначений переменных у Вас меня просто у ума сводит, настолько она неинформативна, отсюда и описки

0

Могу еще Вас "порадовать", что по Вашей программе значения периметра может получаться отрицательным и даже нулевым! )))

0

Неверно с abs, надо к каждой разности ставить.... проверьте для случая, когда by>ay, cx<bx

0

У Вас каждая разность - длина стороны, а длина не может быть отрицательной.

0 голосов

Var
  Ax,Ay,Cx,Cy,P:real;
begin
  Writeln('Введите координаты x,y любой вершины прямоугольника: ');
  Read(Ax,Ay);
  Writeln('Введите координаты x,y диагональной вершины прямоугольника: ');
  Read(Cx,Cy);
  P:=2*(Abs(Cx-Ax)+Abs(Cy-Ay));
  Writeln('Периметр прямоугольника равен ',P)
end.

Тестовое решение:
Введите координаты x,y любой вершины прямоугольника:
2 10
Введите координаты x,y диагональной вершины прямоугольника:
-8 3
Периметр прямоугольника равен 34

(142k баллов)