Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const
- n = 5;
- m = 5;
- var
- a: array[1..m, 1..n] of integer;
- i, j, k, c: integer;
- //Заполнение рандомными числами и вывод массива
- begin
- randomize;
- writeln('Исходная матрица:');
- for i := 1 to m do
- begin
- for j := 1 to n do
- begin
- a[i, j] := random(20);
- write(a[i, j]:4);
- end;
- writeln;
- end;
- //Задается цикл, пока не будет введен номер строки
- repeat
- write('Введите номер строки от 1 до ', m, ': k = ');
- readln(k);
- until k in [1..m];
- //Сортировка вставками
- for i := 2 to n do //Первый элемент считает отсортированным
- begin
- c := a[k, i];
- j := i - 1;
- while (j >= 1) and (a[k, j] > c) do // собственно сама сортировка вставками смотрим на второе значение,
- begin // если ее значение меньше первой, то меняем эти значения местами, в противном случае переменные сохраняют свои позиции, и алгоритм переходит к шагу 2. На 2-ом шаге смотрим на третье значение и тд
- a[k, j + 1] := a[k, j];
- j := j - 1;
- end;
- a[k, j + 1] := c;
- end;
- writeln('Результат:');
- for i := 1 to m do
- begin
- for j := 1 to n do //просто вывод массива
- write(a[i, j]:4);
- writeln;
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment