Дана матрица порядка (11*11). Поменять местами минимальное и максимальное значение в каждой строке - Pascal
Формулировка задачи:
Здравствуйте!
Помогите решить программу. Pascal.
Дана матрица порядка (11*11). Преобразовать матрицу по правилу: в каждой строке поменять местами минимальное и максимальное значение этой строки.
Заранее благодарен.Решение задачи: «Дана матрица порядка (11*11). Поменять местами минимальное и максимальное значение в каждой строке»
textual
Листинг программы
program noName; type matriX = array[1..11, 1..11] of integer; var a: matriX; i, j, min, max, x: integer; begin writeln('Сгенерированная матрица: '); for i := 1 to 11 do for j := 1 to 11 do a[i, j] := random(10); for i := 1 to 11 do begin for j := 1 to 11 do write(a[i, j], ' '); writeln; end; for i := 1 to 11 do begin min := 32767; max := 0; for j := 1 to 11 do begin if (max <= a[i, j]) then max := a[i,j] else if (min >= a[i, j]) then min := a[i,j]; end; for j:=1 to 11 do if (a[i,j]=max) then a[i,j]:=min else if (a[i,j]=min) then a[i,j]:=max; end; writeln('Отсортированная матрица:'); for i := 1 to 11 do begin for j := 1 to 11 do write(a[i, j], ' '); writeln; end; end.
Объяснение кода листинга программы
- Создается тип матрицы - matriX, который является одномерным массивом 11 элементов типа integer.
- Создается переменная a типа matriX, которая будет представлять собой матрицу.
- Заполняется матрица случайными значениями от 0 до 9 с помощью функции random(10).
- Выводится сгенерированная матрица на экран.
- Для каждой строки матрицы находятся минимальное и максимальное значение с помощью двух вложенных циклов.
- Значения min и max сохраняются в переменных min и max соответственно.
- Затем происходит замена значений в строке: если значение элемента равно max, то оно меняется на min, а если равно min, то меняется на max.
- Выводится отсортированная матрица на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д