Найти суммы положительных и отрицательных элементов каждой строки матрицы отдельно и вывести их на экран - Pascal ABC

Формулировка задачи:

Привет, всем. Народ где ошибка у меня в задачи? Сформировать двумерный массив А размером 5*7 с помощью генератора случайных чисел и вывести элементы массива на экран. Найти суммы положительных и отрицательных элементов каждой строки матрицы отдельно и вывести их на экран.
const
M = 5;
N = 7;
var
a: array[1..n,1..m] of integer;
i, j: integer;
sum: integer;
sc: array[1..M] of integer;
sm: array[1..M] of integer;
 
begin
for i:=1 to n do begin 
writeln;
for j:=1 to m do begin
a[i,j]:=random(30)-15;
write(' ');
write(a[i,j]:4);
end; end;
for i:= 1 to n do
for j:=1 to m do
 
if a[i,j] > 0 then sc[j]:=sc[j]+a[i,j]
else sm[j]:=sm[j]+a[i,j];
writeln;
for i:=1 to m do
write(sm[j]:6);
writeln (' |');
 
for i:=1 to m do
write(sc[j]:6);
writeln (' |');
end.

Код к задаче: «Найти суммы положительных и отрицательных элементов каждой строки матрицы отдельно и вывести их на экран - Pascal ABC»

textual
uses crt;
const m = 5;
      n = 7;
var a: array[1..m,1..n] of integer;
    i, j, sp, so: integer;
begin
writeln('Массив');
for i:=1 to m do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=-15+random(31);
    write(a[i,j]:4);
   end;
  writeln;
 end;
writeln('Суммы положительных и отрицательных в строках');
for i:=1 to m do
 begin
  sp:=0;
  so:=0;
  for j:=1 to n do
  if a[i,j]>0 then sp:=sp+a[i,j]
  else so:=so+a[i,j];
  writeln(i,' положительные=',sp:3,' отрицательные=',so:3);
 end;
end.

12   голосов, оценка 3.917 из 5


СОХРАНИТЬ ССЫЛКУ