Срочно Задача Pasckal: Поменять местами столбцы массива если можно и для строк напишите!!!

0 голосов
60 просмотров

Срочно Задача Pasckal: Поменять местами столбцы массива если можно и для строк напишите!!!


Информатика (48 баллов) | 60 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
PascalABC.NET 3.3.5, сборка 1650 от 01.04.2018
Внимание! Если программа не работает, обновите версию!

begin
  var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:');
  Writeln('*** Исходный массив ***');
  var a:=MatrRandom(m,n,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var (p,q):=ReadInteger2('Укажите номера строк для обмена: ');
  a.SwapRows(p-1,q-1);
  Writeln('*** Полученный массив ***'); a.Println(4);
  (p,q):=ReadInteger2('Укажите номера столбцов для обмена: ');
  a.SwapCols(p-1,q-1);
  Writeln('*** Полученный массив ***'); a.Println(4);
end.
(150k баллов)
0 голосов

Var
  A: array [1..5, 1..5] of integer;
  i, j, tmp, FL, SL: integer;
begin
for i := 1 to 5 do
begin
  for j := 1 to 5 do
    begin
    A[i, j] := random(101)-50;
    write(A[i, j]:4);
    end;
  writeln;   
 end;

writeln('Обмен строк.');
write('Введите два числа(№ строк) = ');
readln(FL, SL);
for j := 1 to 5 do
begin
  tmp := A[FL, j];
  A[FL, j] := A[SL, j];
  A[SL, j] := tmp;   
end;
for i := 1 to 5 do
begin
  for j := 1 to 5 do
    write(A[i, j]:4);
  writeln;
end;

writeln('Обмен столбцов.');
write('Введите два числа(№ столбцов) = ');
readln(FL, SL);
for i := 1 to 5 do
begin
  tmp := A[i, FL];
  A[i, FL] := A[i, SL];
  A[i, SL] := tmp;   
end;
for i := 1 to 5 do
begin
  for j := 1 to 5 do
    write(A[i, j]:4);
  writeln;
end;

end.


image
(9.4k баллов)
0

Спасибо, бро!