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

Ответы

Ответ дал: z31rus
0
var
  a: array [1..10] of byte;
  i, k, n, t, x, max: byte;
  //процедура вывода массива
procedure WriteA();
var i : byte;
begin  for i := 1 to 10 do begin
    write(a[i], chr(32));
  end;
  writeln();
end;
//основная процедура
begin 
Randomize;
  for i := 1 to 10 do begin
    a[i] := random(100);
  end;
  WriteA();
  writeln('-------------------------------');
  n := 10;
  while n > 1 do begin
    for i := n downto 1 do begin
      if a[i] > max then begin max := a[i]; x := i end;
    end;
    t := a[n];
    a[n] := max;
    a[x] := t;
    dec(n);
    max := 0;
    WriteA();
  end;
  writeln('-------------------------------');
  WriteA();
end.

- Pascal ABC.NET, массив из 10 случайных чисел до 100 типа byte
- Результат работы программы следующий:

43 77 72 39 60 99 44 65 72 58
 -------------------------------
43 77 72 39 60 58 44 65 72 99
43 72 72 39 60 58 44 65 77 99
43 72 65 39 60 58 44 72 77 99
43 44 65 39 60 58 72 72 77 99
43 44 58 39 60 65 72 72 77 99
43 44 58 39 60 65 72 72 77 99
43 44 39 58 60 65 72 72 77 99
43 39 44 58 60 65 72 72 77 99
39 43 44 58 60 65 72 72 77 99
 -------------------------------
39 43 44 58 60 65 72 72 77 99 
Вас заинтересует