Упорядочить по убыванию элементы строки матрицы - Pascal ABC
Формулировка задачи:
В одномерном массиве
1)Упорядочить по убыванию элементы той строки матрицы A(n×m), в которой находится минимальный по значению элемент.
В двухмерном массиве
2)Последовательность с1, с2, …, сm состоит из нулей и единиц. Поставить в начало этой последовательности нули а затем единицы.
Решение задачи: «Упорядочить по убыванию элементы строки матрицы»
textual
Листинг программы
program pr;
var
a: array [1..100, 1..100] of integer;
i, j, min, ind, k, c,n,m: integer;
begin
writeln('Введите количество строк матрици');
readln(n);
writeln('Введите количество столбцов матрици');
readln(m);
for i := 1 to n do
for j := 1 to m do
a[i, j] := random(21) - 10;
for i := 1 to n do
begin
for j := 1 to m do
write(a[i, j]:3);
writeln;
end;
min := a[1, 1];
for i := 1 to n do
for j := 1 to n do
if a[i, j] <= min then
begin
min := a[i, j];
ind := i;
end;
writeln;
writeln('Минимальный элемент: ',min);
writeln('Строка содержащая этот элемент: ',ind);
for j := 1 to m do
for k := 2 to n do
if a[ind, k] > a[ind, k - 1] then begin
c := a[ind, k];
a[ind, k] := a[ind, k - 1];
a[ind, k - 1] := c;
end;
for i := 1 to n do
begin
for j := 1 to m do
write(a[i, j]:3);
writeln;
end;
end.
Объяснение кода листинга программы
- Создается переменная
a, которая представляет собой матрицу размером от 1 до 100 строк и от 1 до 100 столбцов. - Пользователю предлагается ввести количество строк и столбцов матрицы.
- Для каждой строки матрицы, начиная с 1 и до n, заполняются случайные числа от 10 до 20.
- Инициализируется переменная
minдля хранения минимального элемента матрицы и переменнаяindдля хранения строки, содержащей этот элемент. - Выводится минимальный элемент и строка, содержащая его.
- Для каждой строки матрицы, начиная с 1 и до n, происходит сортировка элементов по возрастанию. Если текущий элемент меньше предыдущего, то обновляется значение переменной
minи переменнойind. - Выводится отсортированная матрица.