Var a: array[1..4, 1..4] of integer; i, j, x, y, n: integer; s: string; begin for i:=1 to 4 do for j:=1 to 4 do read(a[i, j]); writeln('Введите "столбцы", чтобы поменять столбцы, или "строки", чтобы поменять строки'); readln(s); writeln('Введите номера столбцов/строк'); readln(x, y); if s='столбцы' then for i:=1 to 4 do begin n := a[i, x]; a[i, x] := a[i, y]; a[i, y] := n; end; if s='строки' then for i:=1 to 4 do begin n := a[x, i]; a[x, i] := a[y, i]; a[y, i] := n; end; for i:=1 to 4 do begin for j:=1 to 4 do write(a[i, j], ' '); writeln; end; end.
2 votes Thanks 1
egasyan4ig
а чтоб предлагалось не только столбцы поменять но и строки так возможно сделать?
egasyan4ig
строки и столбцы который поменять нужно?
ИнформатикБУ
Блин, программа же всё пишет, что вводить! Сначала массив, потом "строки" или "столбцы", потом два значения - индексы столбцов, которые нужно поменять!
Answers & Comments
Verified answer
Vara: array[1..4, 1..4] of integer;
i, j, x, y, n: integer;
s: string;
begin
for i:=1 to 4 do
for j:=1 to 4 do
read(a[i, j]);
writeln('Введите "столбцы", чтобы поменять столбцы, или "строки", чтобы поменять строки');
readln(s);
writeln('Введите номера столбцов/строк');
readln(x, y);
if s='столбцы' then
for i:=1 to 4 do
begin
n := a[i, x];
a[i, x] := a[i, y];
a[i, y] := n;
end;
if s='строки' then
for i:=1 to 4 do
begin
n := a[x, i];
a[x, i] := a[y, i];
a[y, i] := n;
end;
for i:=1 to 4 do
begin
for j:=1 to 4 do
write(a[i, j], ' ');
writeln;
end;
end.