Вопрос по информатике:
Дана матрица(двумерный массив). Посчитать произведения всех положительных элементов в каждой строке и занести их в одномерный массив(с помощью процедур)
Подскажите,пожалуйста,дошло только как выводить в столбик эти произведения,но не как занести их в полноценный массив(
Трудности с пониманием предмета? Готовишься к экзаменам, ОГЭ или ЕГЭ?
Воспользуйся формой подбора репетитора и занимайся онлайн. Пробный урок - бесплатно!
- 16.09.2016 20:21
- Информатика
- remove_red_eye 11085
- thumb_up 29
Ответы и объяснения 1
Type
TMatrix = array[,] of integer;
TVector = array of integer;
var
A: TMatrix;
B: TVector;
m,n,i,j: integer;
procedure CreateMulVector(A:TMatrix; var B: TVector);
var i, j: integer; f: boolean;
begin
SetLength(B, Length(A, 0));
for i := 0 to Length(A, 0) - 1 do begin
B[i] := 1; f := false;
for j := 0 to Length(A, 1) - 1 do begin
if A[i,j] > 0 then begin
f := true;
B[i] := B[i] * A[i,j];
end;
end;
if not f then B[i] := 0;
end;
end;
procedure WriteVector(B: TVector);
var i: integer;
begin
for i := 0 to Length(B) - 1 do
write(B[i]:3);
end;
begin
randomize;
n := Random(10) + 1;
m := Random(10) + 1;
SetLength(A, n, m);
writeln('Исходная матрица:');
for i := 0 to n-1 do begin
for j := 0 to m-1 do begin
A[i,j] := Random(10) - 5;
write(A[i,j]:4);
end;
writeln;
end;
CreateMulVector(A, B);
writeln('Полученный вектор:');
WriteVector(B);
end.
- 17.09.2016 01:49
- thumb_up 42
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.