Построить матрицу, которая образуется из исходной добавлением к ней строки максимальных значений по столбцам - Pascal
Формулировка задачи:
Обработка двумерных массивов (матриц)
Разработать программу, в которой предусмотреть:
- ввод размерности NxM двумерного массива А,
- задание элементов массива двумя способами: ввод с клавиатуры и формирование значений с помощью функции RANDOM(K) генерирования случайных чисел в диапазоне [0..К-1].
ВАРИАНТ ЗАДАНИЯ :
Построить новую матрицу, которая образуется из исходной добавлением к ней строки максимальных значений по столбцам.
Решение задачи: «Построить матрицу, которая образуется из исходной добавлением к ней строки максимальных значений по столбцам»
textual
Листинг программы
- const
- n=5;m=4;k=10;
- var
- a:array[1..n,1..m] of integer;
- b:array[1..n+1,1..m] of integer;
- i,j,z:integer;
- begin
- randomize;
- repeat
- writeln('Матрица[',n,'x',m,']:');
- writeln('1. Ручной ввод матрицы');
- writeln('2. Автоматический ввод');
- write('Ваш выбор:');
- readln(i);
- until i in [1,2];
- if i=1 then begin
- writeln('Вводите строки матрицы:');
- for i:=1 to n do begin
- writeln('Строка ',i,':');
- for j:=1 to m do read(a[i,j]);
- end;
- end
- else
- for i:=1 to n do begin
- for j:=1 to m do begin
- a[i,j]:=random(k);
- write(a[i,j]:4);
- end;
- writeln;
- end;
- for j:=1 to m do begin
- b[n+1,j]:=a[1,j];
- for i:=1 to n do begin
- if a[i,j]>b[n+1,j] then b[n+1,j]:=a[i,j];
- b[i,j]:=a[i,j];
- end;
- end;
- writeln('Полученная матрица:');
- for i:=1 to n+1 do begin
- for j:=1 to m do write(b[i,j]:4);
- writeln;
- end;
- end.
Объяснение кода листинга программы
- Объявление констант:
n
со значением 5m
со значением 4k
со значением 10
- Объявление переменных:
a
как целочисленный массив размерности 5х4b
как целочисленный массив размерности 6х4i
,j
,z
как целочисленные переменные
- Начало выполнения программы, использующей генератор случайных чисел.
- Цикл, который выполняется, пока пользователь не выберет 1 или 2:
- Вывод на экран информации о матрице и доступных вариантах ввода (1. Ручной ввод матрицы, 2. Автоматический ввод)
- Запрос у пользователя выбора варианта
- Если пользователь выбрал ввод вручную, то:
- Вывод сообщения о вводе строк матрицы
- Цикл для ввода значений элементов матрицы
- В противном случае, если пользователь выбрал автоматический ввод, то:
- Генерация случайных значений для элементов матрицы
- Вывод на экран сгенерированной матрицы
- Заполнение массива
b
строкой, содержащей максимальные значения по столбцам:- Проход циклом по столбцам матрицы
a
- Нахождение максимального значения в столбце
- Присвоение этого значения элементу
b[n+1,j]
- Заполнение элементов
b[i,j]
значениями изa[i,j]
- Проход циклом по столбцам матрицы
- Вывод на экран полученной матрицы
b
, содержащей исходную матрицуa
с добавленной строкой максимальных значений по столбцам. - Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д