Произвести заданные действия с матрицами - Pascal
Формулировка задачи:
Помогите пожалуйста глупому человеку. Я понимаю в принципе как это сделать, но мне лень разбираться и нет времени.
Поэтому памагите
Для этой задачи нужно написать код на проклятом паскале с использованием подпрограмм (процедур и функций, как удобно). И желательно блок схему) Хотя думаю ни у кого не будет желания посвятить 30 минут рисованию бесполезной блок схемы для университетской задачки.
Вот задача
Ввести матрицы A(n1,m1), B(n2,m2). Найти максимальные элементы в каждой матрице.
В каждой матрице элементы первого и последнего столбцов заменить на максимум из другой матрицы.
Подпрограммы: ввод матрицы, поиск максимального, замена, вывод матрицы.
Решение задачи: «Произвести заданные действия с матрицами»
textual
Листинг программы
program Matrixes; const N = 10; M = 10; type mat = array [1..N, 1..M] of integer; procedure output(matr: mat; max: Integer); var i, j: Integer; begin for i:=1 to N do begin for j:=1 to M do begin if (j=1) or (j=M) then matr[i, j]:=max; write(matr[i, j]:4); end; writeln; end; writeln; end; function maxA(a: mat): Integer; var i, j: Integer; begin maxA:=0; for i:=1 to N do for j:=1 to M do if a[i, j]>maxA then maxA:=a[i, j]; output(a, maxA); end; function maxB(b: mat): Integer; var i, j: Integer; begin maxB:=0; for i:=1 to N do for j:=1 to M do if b[i, j]>maxB then maxB:=b[i, j]; output(b, maxB); end; procedure MatInit; var a, b: array [1..N, 1..M] of integer; i, j: Integer; begin randomize; for i:=1 to N do begin for j:=1 to M do a[i, j]:=random(100)+1; end; for i:=1 to N do begin for j:=1 to M do b[i, j]:=random(100)+1; end; maxA(a); maxB(b); end; begin MatInit; readln(); end.
Объяснение кода листинга программы
- Объявлены константы N и M, которые задают размерность матрицы (в данном случае, 10х10).
- Определен тип матрицы - массив 10х10 целых чисел с индексами от 1 до N по строке и от 1 до M по столбцу.
- Выведена функция вывода матрицы на экран. Она проходит по всем элементам матрицы и выводит их значение, если элемент является внешним (первый или последний столбец), в противном случае записывает в него максимальное значение.
- Выведена функция нахождения максимального элемента в матрице типа
a
. - Выведена функция нахождения максимального элемента в матрице типа
b
. - Выведена функция инициализации матрицы случайными значениями от 1 до 100.
- Выведена функция, которая вызывает функцию инициализации матрицы, выводит максимальные значения в матрицах
a
иb
, после чего выводит на экран приглашение для ввода данных. - Программа завершается после считывания данных с помощью функции readln().
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д