Предмет: Информатика,
автор: Аноним
Помогите решить.
Для каждого столбца подсчитать сумму отрицательных элементов и записать данные в новый массив.(PascalABC)
Не получается нормально сделать нужна ваша помощь!
const N=30;
var
a:array[1..n] of integer;
s,null,h,i:integer;
begin
h:=0;
for i:=1 to n do
begin
a[i]:=-10+random(21);
write(a[i]:4);
end;
for i:=1 to n do
begin
if a[i]<0 then inc(h);
end;
writeln;
writeln('Количество отрицательных элементов= ',h);
end.
AnonimusPro:
У вас в задании написано "для каждого столбца". Это значит, что массив двумерный, т.е матрица. Ваша же программа использует одномерный массив. И причем здесь количество, когда нужно найти сумму?
Ответы
Автор ответа:
1
const n=4; m=5;
var a: array[1..n,1..m] of integer;
b: array[1..m] of integer;
i,j,s: integer;
begin
s:=0;
randomize;
writeln('матрица:');
for i:=1 to n do begin
for j:=1 to m do begin
a[i,j]:=random(19)-9;
write(a[i,j],' ');
end;
writeln;
end;
for j:=1 to m do begin
for i:=1 to n do if(a[i,j]<0) then s:=s+a[i,j];
b[j]:=s;
s:=0;
end;
write('полученный массив: ');
for j:=1 to m do write(b[j],' ');
end.
Похожие вопросы
Предмет: Алгебра,
автор: bodsheva
Предмет: История,
автор: albosum
Предмет: Информатика,
автор: ivanmisaa
Предмет: Алгебра,
автор: karaa1
Предмет: Математика,
автор: рома971