"Зеркальный разворот" столбца матрицы, в которой находится наибольший элемент побочной диагонали - Pascal

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

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

Дана вещественная квадратная матрица А порядка 8. Произвести "Зеркальный разворот" столбца матрицы, в которой находится наибольший элемент среди элементов побочной диагонали.

Решение задачи: «"Зеркальный разворот" столбца матрицы, в которой находится наибольший элемент побочной диагонали»

textual
Листинг программы
  1. const n=8;
  2. var a:array[1..n,1..n] of real;
  3.     i,j,jmx:byte;
  4.     max,x:real;
  5. begin
  6. randomize;
  7. writeln('Исходная матрица');
  8. jmx:=n;
  9. for i:=1 to n do
  10.  begin
  11.   for j:=1 to n do
  12.    begin
  13.     a[i,j]:=10*random;
  14.     write(a[i,j]:6:2);
  15.    end;
  16.   writeln;
  17.  end;
  18. max:=a[1,n];
  19. jmx:=n;
  20. for i:=1 to n do
  21. if a[i,n-i+1]>max then
  22.  begin
  23.   max:=a[i,n-i+1];
  24.   jmx:=n-i+1;
  25.  end;
  26. writeln('Максимальный элемент побочной диагонали=',a[n-jmx+1,jmx]:0:2,' в столбце ',jmx);
  27. for i:=1 to n div 2 do
  28.  begin
  29.   x:=a[i,jmx];
  30.   a[i,jmx]:=a[n-i+1,jmx];
  31.   a[n-i+1,jmx]:=x;
  32.  end;
  33. writeln('Перестановка столбца ',jmx);
  34. for i:=1 to n do
  35.  begin
  36.   for j:=1 to n do
  37.   write(a[i,j]:6:2);
  38.   writeln;
  39.  end;
  40. end.

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

  1. Создается константа n, которая определяет размерность матрицы.
  2. Создается переменная a, которая представляет собой матрицу размером n на n.
  3. Создаются три байтовых переменных i, j и jmx.
  4. Выводится исходная матрица.
  5. Переменная jmx устанавливается равной n.
  6. Для каждого i от 1 до n выполняется цикл.
  7. Внутри цикла выполняется цикл для каждого j от 1 до n.
  8. В каждой итерации вычисляется значение a[i,j] и выводится его.
  9. После завершения внутреннего цикла выводится символ новой строки.
  10. Вычисляется максимальное значение в текущем столбце.
  11. Если текущее значение a[i,n-i+1] больше максимального, то обновляется максимальное значение и переменная jmx.
  12. Выводится значение максимального элемента побочной диагонали.
  13. Для каждого i от 1 до n/2 выполняется цикл.
  14. В каждой итерации обновляется значение x.
  15. Обновляется значение a[i,jmx] и a[n-i+1,jmx] на основе значения x.
  16. Выводится переставленная часть столбца jmx.
  17. Для каждого i от 1 до n выполется цикл.
  18. В каждой итерации выводятся значения a[i,j] с пробелами и символом новой строки.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

7   голосов , оценка 3.714 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы