Поменять местами первую строку и строку в которой находиться первый нулевой элемент.Приняв, что нулевые элементы в массиве есть и что массив просматривается слева на право и сверху вниз — Pascal(Паскаль)

uses crt;
const n=5;
var a: array[1..n, 1..n] of integer;
     i, j, k: byte; p: integer;
begin
 k:=0;
 p:=0;
 randomize;
 clrscr;
 writeln ('Ishodn. massiv: ');
 for i:=1 to n do
  begin
   for j:=1 to n do
    begin
     a[i, j]:=random (19)-9;
     write (a[i, j]:3);
    end;
   writeln;
  end;
 writeln;
 i:=1;
 j:=0;
 repeat
  inc (j);
  if a[i, j]=0 then k:=i;
  if (j=n) and (i<>n) then
   begin
    j:=0;
    inc (i);
   end;
 until (k>0) or (i=n) and (j=n);
 if k>0 then
  begin
   for j:=1 to n do
    begin
     p:=a[1, j];
     a[1, j]:=a[k, j];
     a[k, j]:=p;
    end;
   writeln ('Izmenennaya matrica: ');
   for i:=1 to n do
    begin
     for j:=1 to n do
      write (a[i, j]:3);
     writeln;
    end;
  end
 else writeln ('V matrice net nulevah elementov');
end.

Leave a Comment

83 − 77 =