Заданы два массива X и Y, которые задают координаты N точек, расположенных на числовой плоскости. Сформировать индексный массив B, соответствующий расположению точек в порядке возрастания расстояния от начала координат — Pascal(Паскаль)

uses crt;
var
   x,y:array[1..100] of integer;
   b:array[1..100] of real;
   i,j,n:integer;
   s,r:real;
begin
clrscr;
write('=');
readln(n);
for i:=1 to n do
 begin
  write('Точка ',i,' Ox=');
  readln(x[i]);
  write('Точка ',i,' Oy=');
  readln(y[i]);
  s:=sqrt(sqr(x[i])+sqr(y[i]));
  b[i]:=s;
 end;
for i:=1 to n-1 do
 for j:=1 to n-i do
  if (b[j]>=b[j+1]) then
   begin
    r:=b[j];
    b[j]:=b[j+1];
    b[j+1]:=r;
   end;
writeln('Итог');
for i:=1 to n do
 write(b[i]:5:2);
readln
end.

Leave a Comment

− 3 = 3