| Код | var a: array [0..50, 0..50] of integer; i,i1,n,m,tmp:integer; Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin
n:=strtoint(edit1.text); m:=strtoint(edit2.text);
stringgrid1.RowCount:=n+1; stringgrid1.ColCount:=m+1;
for i:=1 to n do // напутал куда делать +1, а куда нет, for i1:=1 to m do // лучше не париться и идти сразу с единицы begin randomize; a[i,i1]:=Random(25)-Random(25); StringGrid1.Cells[i1,i]:=IntToStr(a[i,i1]); end;
end; procedure TForm1.Button2Click(Sender: TObject); begin //-----------замена отриц. на положит.-------- for i := 1 to n do for i1 := 1 to m do begin a[i,i1] := abs(a[i,i1]); // проверка "if a[i,i1] < 0 then" не нужна StringGrid1.Cells[i1,i]:=IntToStr(a[i,i1]); // забыл вывести массив на экран end;
//-------------поменять местами столбцы-------- for i := 1 to n do begin tmp := a[i, 2]; a[i, 2] := a[i, m]; a[i, m] := tmp;
for i1 := 1 to m do // забыл добавить i1, без нее вывод не будет работать StringGrid1.Cells[i1,i]:=IntToStr(a[i,i1]); end; end;
end.
|
Вот рабочий код, ошибки я там указал, приложил 2 файла - скомпилированный этим кодом и мой |