Матрица.поменять max с min

Bloodpoisoning

Дана матрица A(n,m). Найти максимальный и минимальный элемент. Заменить их, поставив минимальный на место максимального.помогите,пожалуйста заранее благодарю
1 ответ

Bloodpoisoning

procedure TForm1.Button1Click(Sender: TObject);
 var a:array of array of integer;
     i,j,n,m,max,min,buf,imax,jmax,imin,jmin:integer;
 begin
   randomize;
   n:=StrToInt(Edit1.Text);
   m:=StrToInt(Edit2.Text);
   StringGrid1.ColCount:=m;
   StringGrid2.ColCount:=m;
   StringGrid1.RowCount:=n;
   StringGrid2.RowCount:=n;
   Setlength(a,n,m);
   for i:=0 to n-1 do
   for j:=0 to m-1 do
     begin
       StringGrid1.Cells[i,j]:=IntToStr(Random(100));
       a[i,j]:=StrToInt(StringGrid1.Cells[i,j]);
     end;
   max:=a[0,0];min:=a[0,0];
   for i:=1 to n-1 do
   for j:=1 to m-1 do
     begin
      if a[i,j]>max then
        begin
         max:=a[i,j];
         imax:=i;
         jmax:=j;
        end;
      if a[i,j]<min then
        begin
         min:=a[i,j];
         imin:=i;
         jmin:=j;
        end;
     end;
   Label1.Caption:=IntToStr(max)+' '+IntToStr(min);
   buf:=a[imax,jmax];
   a[imax,jmax]:=a[imin,jmin];
   a[imin,jmin]:=buf;
   for i:=0 to n-1 do
   for j:=0 to m-1 do
    begin
      StringGrid2.Cells[i,j]:=IntToStr(a[i,j]);
    end;
 end;
 
end.