Показать сообщение отдельно
  #38  
Старый 11.04.2008, 18:04
MegaPiha MegaPiha вне форума
Активный
 
Регистрация: 24.03.2008
Сообщения: 227
Версия Delphi: Delphi 7
Репутация: 30
По умолчанию

Очень глубоко не вникал в суть программы, но вот несколько моментов.
1.
Код:
for tmp:=0 to n-1 do
  for j:=0 to m-1 do
    stringgrid1.Cells[j,tmp]:=FormatFloat('0.00',C[tmp,j]);
end;
Вот в этом месте как раз надо использовать счетчик integer - он же t.
Код:
for t:=0 to n-1 do
  for j:=0 to m-1 do
    stringgrid1.Cells[j,t]:=FormatFloat('0.00',C[t,j]);
end;


2. Вы используете динамические массивы, поэтому на button5 надо обязательно нажимать прежде чем нажать на button4. Иначе выскочит ошибка как раз на той строке, что вы и говорили.

3. Ну также, это так на всякий случай, число столбцов должно быть не меньше 10. Или опять ошибка выскочит. Ну это вы наверное знаете.

4. В процедуре создания формы
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
 randomize;
 edit1.Text:=inttostr(n);
 edit5.Text:=inttostr(m);
 edit6.Text:=inttostr(l);
 edit4.text:=inttostr(k);
 stringgrid1.RowCount:=n;
 stringgrid1.ColCount:=m;
end;
Присваиваются едитам значения переменных, которые еще не определены.

5. Небольшой совет. Код читается очень трудно. Лучше пробелами выравнивать.