Алгоритмические языки и программирование. Игошина Л.В. - 75 стр.

UptoLike

Составители: 

Write(' Введите длину массива n = ');
Readln(n);
{ Вместо ввода с клавиатуры заполним массив случайными
числами из диапазона от 0 до 500}
For i:=1 to n do M[i]:=Random(500);
For i:=1 to n-1 do
Begin
{принимаем за минимум i-й элемент}
Min:=M[i]; i_min:=i;
For j:=i+1 to n do
If M[j]<Min then
Begin
{найдено меньшее число - запоминаем его и его адрес}
Min:=M[j]; i_min:=j;
End;
{Обмен}
M[i_min]:=M[i];
M[i]:=Min;
End;
Writeln(' Упорядоченный массив');
For i:=1 to n do write(M[i],' ');
readkey;
End.
17.2 Обменная сортировка
Обменная сортировка основывается на последовательном сравнении
двух рядом стоящих элементов
и если порядок следования нарушен,
элементы меняются местами. Сравнения производятся до тех пор, пока при
очередном цикле просмотра всех рядом стоящих пар элементов, ни одна пара
элементов не менялась местами. В том случае, если элементы массива уже
упорядочены, алгоритм закончит свою работу после одного цикла просмотра
всех рядом стоящих пар.
Просмор
пар может начинаться с начала массива или с его конца, в
последнем случае алгоритм называют алгоритмом пузырьковой сортировки.
Подробнее об этом можно ознакомиться в [2,3].
Рассмотрим работу алгоритма по схеме.
Схема алгоритма обменной сортировки
            Write(' Введите длину массива n = ');
            Readln(n);
            { Вместо ввода с клавиатуры заполним массив случайными
            числами из диапазона от 0 до 500}
            For i:=1 to n do M[i]:=Random(500);
            For i:=1 to n-1 do
             Begin
                {принимаем за минимум i-й элемент}
                Min:=M[i]; i_min:=i;
                   For j:=i+1 to n do
                          If M[j]