
Решите на паскале очень нужно В заданной матрицы V (5,6) определить максимальные элементы с
положительных элементов каждой строки матрицы и сформировать из них одномерный массив. Вывести исходную матрицу и создан массив

Ответы на вопрос

const n=5; m=6;
var
v:array[1..n,1..m] of integer;
b:array[1..n] of integer;
i,j,max:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to m do
begin
v[i,j]:=random(100)-50;
write(v[i,j]:4);
end;
writeln;
end;
for i:=1 to n do
begin
max:=0;
for j:=1 to m do
if (v[i,j]>0)and(v[i,j]>max) then max:=v[i,j];
b[i]:=max;
end;
writeln('Полученный массив:');
for i:=1 to n do write(b[i],' ');
end.
Пример:
Исходный массив:
19 12 -23 -40 -1 9
-42 18 -6 -13 -24 -31
22 26 -31 32 22 -8
-22 -7 20 0 48 35
-22 34 -46 -44 -48 -29
Полученный массив:
19 18 32 48 34



Для решения этой задачи на языке Паскаль (Pascal) нужно выполнить следующие шаги:
- Объявить матрицу V (5,6) и одномерный массив для хранения максимальных элементов.
- Заполнить матрицу V случайными значениями, включая положительные и отрицательные числа.
- Найти максимальные элементы среди положительных элементов каждой строки матрицы V и сохранить их в одномерный массив.
- Вывести исходную матрицу V и созданный массив с максимальными элементами.
Ниже приведен код на языке Паскаль, реализующий описанные шаги:
pascalprogram MaxPositiveElements; const Rows = 5; Cols = 6; type Matrix = array[1..Rows, 1..Cols] of Integer; ArrayOfMax = array[1..Rows] of Integer; procedure GenerateMatrix(var V: Matrix); var i, j: Integer; begin Randomize; for i := 1 to Rows do for j := 1 to Cols do V[i, j] := Random(100) - 50; // Заполняем случайными значениями от -50 до 49 end; procedure FindMaxPositiveElements(const V: Matrix; var maxElements: ArrayOfMax); var i, j: Integer; begin for i := 1 to Rows do begin maxElements[i] := V[i, 1]; // Предполагаем, что первый элемент строки - максимальный положительный for j := 2 to Cols do begin if (V[i, j] > maxElements[i]) and (V[i, j] > 0) then maxElements[i] := V[i, j]; // Если найден новый положительный максимальный элемент, обновляем его end; end; end; procedure PrintMatrix(const V: Matrix); var i, j: Integer; begin for i := 1 to Rows do begin for j := 1 to Cols do Write(V[i, j]:4); Writeln; end; end; procedure PrintArray(const arr: ArrayOfMax); var i: Integer; begin for i := 1 to Rows do Write(arr[i]:4); end; var V: Matrix; maxElements: ArrayOfMax; begin GenerateMatrix(V); Writeln('Исходная матрица V:'); PrintMatrix(V); FindMaxPositiveElements(V, maxElements); Writeln('Массив с максимальными положительными элементами каждой строки:'); PrintArray(maxElements); Readln; end.
Программа сначала заполняет матрицу случайными значениями от -50 до 49, затем находит максимальные положительные элементы каждой строки и сохраняет их в одномерный массив. После этого программа выводит исходную матрицу и созданный массив.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili