В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
Arinka722
Arinka722
29.01.2020 04:40 •  Информатика

Решить на паскале. выпуклый многоугольник на плоскости задан своими вершинами, расположенными в произвольном порядке. расположить вершины в порядке обхода по часовой стрелке.

Показать ответ
Ответ:
школьник812
школьник812
03.10.2020 18:38
прощения за "пузырёк"
//Pascal ABC.NET 3.1 сборка 1219

Const n=5; //количество вершин

 Type
 ty=record
 x:integer;
 y:integer;
end;

Var
 ar:array[1..n] of ty;
 i,j:integer;
begin
 for i:=1 to n do
  begin
   write('Абсцисса точки №',i,':');readln(ar[i].x);
   write('Ордината точки №',i,':');readln(ar[i].y);
  end;
for i:=1 to n-1 do
 for j:=i+1 to n do
  if ar[i].x>ar[j].x then swap(ar[i],ar[j]);
for i:=1 to (n div 2)-1 do
 for j:=i+1 to n div 2 do
  if ar[i].y<ar[j].y then swap(ar[i],ar[j]);
for i:=n div 2+1  to n-1 do
 for j:=i+1 to n do
  if ar[i].y>ar[j].y then swap(ar[i],ar[j]);
ar.reverse.Print;
end.

Пример ввода:
Абсцисса точки №1:1
Ордината точки №1:2
Абсцисса точки №2:2
Ордината точки №2:1
Абсцисса точки №3:-3
Ордината точки №3:-3
Абсцисса точки №4:3
Ордината точки №4:3
Абсцисса точки №5:3
Ордината точки №5:1
Пример вывода:
(3,3) (3,1) (2,1) (-3,-3) (1,2)
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота