// PascalABC.NET 3.3, сборка 1573 от 04.11.2017 // Внимание! Если программа не работает, обновите версию!
begin var k:=3; Writeln('*** Исходный массив ***'); var a:=MatrRandom(k,6,-20,20); a.Println(4); Writeln(4*a.ColCount*'-'); var n:=ReadInteger('Какую строку удалить (1-'+k+')?'); Assert(n.Between(1,k),'Введено неверное значение'); var r:=a.Row(k-1); // последняя строка SetLength(a,k-1,a.ColCount); // теперь строк на одну меньше if n<k then begin for var i:=n-1 to k-3 do a.SetRow(i,a.Row(i+1)); a.SetRow(k-2,r) end; Writeln(4*a.ColCount*'-'); a.Println(4) 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: Просто [ пример ]] со [[ скобками В строке Просто [ пример ]] со [[ скобками количество [ и ] не одинаково
// Внимание! Если программа не работает, обновите версию!
begin
var k:=3;
Writeln('*** Исходный массив ***');
var a:=MatrRandom(k,6,-20,20);
a.Println(4); Writeln(4*a.ColCount*'-');
var n:=ReadInteger('Какую строку удалить (1-'+k+')?');
Assert(n.Between(1,k),'Введено неверное значение');
var r:=a.Row(k-1); // последняя строка
SetLength(a,k-1,a.ColCount); // теперь строк на одну меньше
if n<k then begin
for var i:=n-1 to k-3 do
a.SetRow(i,a.Row(i+1));
a.SetRow(k-2,r)
end;
Writeln(4*a.ColCount*'-'); a.Println(4)
end.
Примеры
*** Исходный массив ***
-8 3 -10 -5 -8 11
14 -5 -19 -6 -19 -15
0 -11 11 3 -6 -12
Какую строку удалить (1-3)? 1
14 -5 -19 -6 -19 -15
0 -11 11 3 -6 -12
*** Исходный массив ***
11 -14 -3 18 19 -9
-11 19 8 20 -19 19
-20 13 3 -13 13 1
Какую строку удалить (1-3)? 3
11 -14 -3 18 19 -9
-11 19 8 20 -19 19
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:
Просто [ пример ]] со [[ скобками
В строке Просто [ пример ]] со [[ скобками количество [ и ] не одинаково