Отсортировать по возрастанию элементы главной диагонали матрицы - Pascal ABC

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

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

Ввести элементы массива К, состоящего из 3 строк и 3 столбцов. Отсортировать по возрастанию элементы главной диагонали матрицы методом пузырькового всплытия. Отсортированный массив вывести на экран в виде таблицы.
ПОМОГИТЕ!!!

Решение задачи: «Отсортировать по возрастанию элементы главной диагонали матрицы»

textual
Листинг программы
uses crt;
const n=3;
var K: array [1..n,1..n] of integer;
    i,j,r,x,y: integer;
begin
writeln('Введите элементы массива, целые числа');
for i:=1 to n do
for j:=1 to n do
 begin
  write('K[',i,',',j,']=');
  readln(K[i,j]);
 end;
clrscr;
writeln ('Исходный массив');
for i:=1 to n do
 begin
  for j:=1 to n do
  write(K[i,j]:6);               {Вывод массива}
  writeln;
 end;
for x:=1 to n-1 do
for j:=1 to n-1 do
if K[j,j]>K[j+1,j+1] then
 begin
  r:= K[j,j];
  K[j,j]:=K[j+1,j+1];
  K[j+1,j+1]:=r;
 end;
writeln ('Сортировка главной диагонали');
for i:=1 to n do
 begin
  for j:=1 to n do
  write(K[i,j]:6);               {Вывод массива}
  writeln;
 end;
end.

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

  1. В первой части кода пользователю предлагается ввести элементы массива K, которые являются целыми числами. Для этого используется цикл for, который выполняется n (количество строк) раз, где n - это константа, равная 3 в данном случае.
  2. Во второй части кода выводится исходный массив K. Для этого также используется цикл for, который выполняется n (количество строк) раз. Внутри цикла каждая строка массива выводится отдельно с помощью функции write.
  3. Затем происходит сортировка главной диагонали матрицы K. Для этого также используются два вложенных цикла for. Первый цикл идет по строкам, а второй - по столбцам. Если элемент в текущей ячейке главной диагонали больше элемента в следующей ячейке, то значения меняются местами.
  4. Наконец, выводится отсортированная главная диагональ матрицы K.

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

7   голосов , оценка 3.857 из 5
Похожие ответы