Const m=5; n=8; var b:array[1..m,1..n] of integer; i,j,ko,sp:integer; begin Randomize; ko:=0; sp:=0; for i:=1 to m do for j:=1 to n do begin b[i,j]:=Random(51)-20; if b[i,j]>0 then sP:=sp+b[i,j] else if b[i,j]<0 then Inc(ko) end; Writeln('Сумма положительных элементов равна ',sp); Writeln('Количество отрицательных элементов равно ',ko); Writeln('Исходный массив'); for i:=1 to m do begin for j:=1 to n do Write(b[i,j]:4); Writeln end end.
Пример работы программы Сумма положительных элементов равна 382 Количество отрицательных элементов равно 13 Исходный массив -6 13 10 2 -14 14 28 28 5 7 26 -8 26 24 7 27 15 -9 -13 28 4 12 9 -12 -2 -9 20 10 -16 8 -10 2 30 -10 -9 -10 2 2 0 23
//Не смотрел Ваш код, просто моё видение решения задачи //PascalABC.NET 3.2 сборка 1318
Var t:text; x,y,i,j:integer; s:string; c:char; world:array[1..4] of char=('E','S','W','N'); begin j:=1; c:='E'; assign(t,'input.txt'); reset(t); read(t,s); close(t); i:=1; while s[i]<>'S' do begin if s[i]='R' then begin if c='N' then j:=1 else inc(j); c:=world[j]; end; if s[i]='L' then begin if c='E' then j:=4 else dec(j); c:=world[j]; end; if s[i]='F' then case c of 'E':inc(x); 'S':dec(y); 'W':dec(x); 'N':inc(y); end; inc(i); end; assign(t,'output.txt'); rewrite(t); write(t,x,' ',y); close(t); end.
Пример содержимого input.txt: FLFS Пример содержимого output.txt: 1 1
m=5;
n=8;
var
b:array[1..m,1..n] of integer;
i,j,ko,sp:integer;
begin
Randomize;
ko:=0; sp:=0;
for i:=1 to m do
for j:=1 to n do begin
b[i,j]:=Random(51)-20;
if b[i,j]>0 then sP:=sp+b[i,j]
else
if b[i,j]<0 then Inc(ko)
end;
Writeln('Сумма положительных элементов равна ',sp);
Writeln('Количество отрицательных элементов равно ',ko);
Writeln('Исходный массив');
for i:=1 to m do begin
for j:=1 to n do Write(b[i,j]:4);
Writeln
end
end.
Пример работы программы
Сумма положительных элементов равна 382
Количество отрицательных элементов равно 13
Исходный массив
-6 13 10 2 -14 14 28 28
5 7 26 -8 26 24 7 27
15 -9 -13 28 4 12 9 -12
-2 -9 20 10 -16 8 -10 2
30 -10 -9 -10 2 2 0 23