// PascalABC.NET 3.0, сборка 1088 const n=9; m=7; var a:array[1..n,1..m] of integer; b:array[1..n] of boolean; i,j,k:integer; begin Randomize; Writeln('*** Исходный массив ***'); for i:=1 to n do begin k:=0; for j:=1 to m do begin a[i,j]:=Random(225)-112; Write(a[i,j]:5); if a[i,j]<0 Then Inc(k) end; Writeln; b[i]:=k>3 end; Writeln('*** Строки, содержащие больше 3 отрицательных элементов ***'); for i:=1 to n do if b[i] then Write(i,' '); Writeln end.
Var s:string; n,k,i:integer; begin for n:=1 to 2 do begin writeln('Введите строку ',n,':'); readln(s); k:=0; for i:=1 to length(s) do begin case s[i] of '[': k:=k+1; ']': k:=k-1; end; end; if k=0 then writeln('В строке ',s,' количество [ и ] одинаково') else writeln('В строке ',s,' количество [ и ] не одинаково'); end; end.
Пример: Введите строку 1: c:=a[imax,j]; a[imax,j]:=a[imin,j]; a[imin,j]:=c В строке c:=a[imax,j]; a[imax,j]:=a[imin,j]; a[imin,j]:=c количество [ и ] одинаково Введите строку 2: Просто [ пример ]] со [[ скобками В строке Просто [ пример ]] со [[ скобками количество [ и ] не одинаково
const
n=9;
m=7;
var
a:array[1..n,1..m] of integer;
b:array[1..n] of boolean;
i,j,k:integer;
begin
Randomize;
Writeln('*** Исходный массив ***');
for i:=1 to n do begin
k:=0;
for j:=1 to m do begin
a[i,j]:=Random(225)-112;
Write(a[i,j]:5);
if a[i,j]<0 Then Inc(k)
end;
Writeln;
b[i]:=k>3
end;
Writeln('*** Строки, содержащие больше 3 отрицательных элементов ***');
for i:=1 to n do
if b[i] then Write(i,' ');
Writeln
end.
Тестовое решение:
*** Исходный массив ***
89 -71 36 -25 -19 60 -28
-60 -35 20 112 -69 29 74
4 -23 -7 -15 107 64 -4
-82 91 102 -90 81 32 -64
41 -44 21 74 77 -77 -100
-38 -36 100 5 -42 54 46
-52 27 -86 -77 90 30 -2
-76 -14 -58 11 67 -91 59
-50 47 -47 12 -84 -76 11
*** Строки, содержащие больше 3 отрицательных элементов ***
1 3 7 8 9