Переместить наибольший элемент матрицы в левый верхний угол - Free Pascal
Формулировка задачи:
дано действительную матрицу N*N. Сделать так, чтобы один с элементов матрицы, что имеет наибольшее значения, размещался бы в левом верхнем углу матрицы.
Решение задачи: «Переместить наибольший элемент матрицы в левый верхний угол»
textual
Листинг программы
- const
- n=10;
- var
- max:real;
- i,j,imax,jmax:integer;
- a:array [1..n,1..n] of real;
- begin
- randomize;
- for i:=1 to n do
- begin
- for j:=1 to n do
- begin
- a[i,j]:=n*random;
- write(a[i,j]:6:2);
- end;
- writeln;
- end;
- max:=a[1,1];
- imax:=1;
- jmax:=1;
- for i:=1 to n do
- for j:=1 to n do
- if a[i,j]>max then
- begin
- max:=a[i,j];
- imax:=i;
- jmax:=j;
- end;
- a[1,1]:=a[imax,jmax];
- writeln('Максимум: ',max:8:2,', строка: ',imax,', столбец: ',jmax);
- for i:=1 to n do
- begin
- for j:=1 to n do
- write(a[i,j]:6:2);
- writeln;
- end;
- readln;
- end.
Объяснение кода листинга программы
- Объявляются переменные: — n — размерность матрицы (10х10); — max — для хранения наибольшего элемента; — i, j, imax, jmax — для поиска наибольшего элемента; — a — массив для хранения элементов матрицы.
- Заполняются элементы матрицы случайными числами с помощью цикла и функции randomize.
- Находится наибольший элемент матрицы с помощью циклов и условия if. Переменные imax и jmax хранят номер строки и столбца наибольшего элемента.
- наибольший элемент копируется в левый верхний угол матрицы.
- Выводится сообщение с наибольшим элементом, его номером строки и номером столбца.
- Выводится заполненная матрица.
- Программа ожидает ввода пользователя для завершения работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д