Как отсортировать массив методом прямого выбора? - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Мне нужно заполнить массив из 8 элементов случайными числами от -8 до 12 и отсортировать методом прямого выбора. Пожалуйста помогите, как это методом прямого выбора? Можно код? Заранее спасибо.

Решение задачи: «Как отсортировать массив методом прямого выбора?»

textual
Листинг программы
  1. program qqq;
  2. const n=8;
  3. var a:array[1..n] of integer;
  4.     i,x,j,buf:integer;
  5. begin
  6. randomize;
  7. writeln('Исходный массив');
  8. for i:=1 to n do
  9.  begin
  10.   a[i]:=-8+random(21);
  11.   write(a[i]:4);
  12.  end;
  13. writeln;
  14. for i:=1 to n-1 do
  15.  begin
  16.   x:=i;
  17.   for j:=i+1 to n do
  18.   if a[j]>a[x] then x:=j;//это по убыванию, по возрастанию сменить > на <
  19.   buf:=a[i];
  20.   a[i]:=a[x];
  21.   a[x]:=buf;
  22.  end;
  23. writeln('Отсортированный массив');
  24. for i:=1 to n do
  25. write(a[i]:4);
  26. readln;
  27. end.

Объяснение кода листинга программы

  1. Объявлены константа n равная 8 и переменные a, i, x, j, buf типа integer.
  2. В цикле выводятся элементы исходного массива a с помощью функции write.
  3. В цикле происходит сортировка массива a методом прямого выбора.
  4. Для этого, в каждой итерации, находится минимальный элемент и меняется его местоположение с текущим элементом.
  5. В итоге, после завершения цикла, массив a будет отсортирован по убыванию.
  6. Выводятся отсортированные элементы массива a с помощью функции write.
  7. Программа ожидает ввода с помощью функции readln.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.364 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы