У меня снова вопрос - нужно мне передеалть прогу из вида - 10 кнопок на 1 стринггрид в вид - 1 кнопка на 10 стринггридов.. в общем нужно что бы при нажатии на 1 кнопку заполнялись 3 стринггрида 3-мя матрицами - я это сделал - вот код: (к стати - если можно его как-то сократить, напишите плиз - ато придераются к моим огромным кодам)
Код:
procedure TForm5.Button6Click(Sender: TObject);
var i,j:integer;
begin
begin
n:=7;
m:=11;
setlength(C,n,m);
stringgrid3.RowCount:=n;
stringgrid3.ColCount:=m;
for i:=0 to n-1 do
for j:=0 to m-1 do
begin
C[i,j]:=cos(14*j+1);
stringgrid3.Cells[j,i]:=FormatFloat('0.00',C[i,j]);
end;
end;
begin
n:=8;
m:=15;
setlength(B,n,m);
stringgrid2.RowCount:=n;
stringgrid2.ColCount:=m;
for i:=0 to n-1 do
for j:=0 to m-1 do
begin
B[i,j]:=sin(3.2*j+4.2)+power(exp(1),tan(i));
stringgrid2.Cells[j,i]:=FormatFloat('0.00',B[i,j]);
end;
end;
begin
n:=12;
m:=9;
setlength(A,n,m);
stringgrid1.RowCount:=n;
stringgrid1.ColCount:=m;
for i:=0 to n-1 do
for j:=0 to m-1 do
begin
A[i,j]:=sin(j)/cos(j)+exp(cos(i));;
stringgrid1.Cells[j,i]:=FormatFloat('0.00',A[i,j]);
end;
end;
end;
Но проблема у меня в слудующем - нужно на 2-ю кнопку сделать, что бы поменялись определенные столбцы в до этого выведенных матрицах - тоесть еще в 3 стринггрида выводятся 3 новые матрицы (те же - но с замененным столбцами) 0 пихаю типа как выше для заполнения - не работает... вот коды для замены столбцов 3-х матриц - подскажите, пожалуйста, если не трудно...
замена столбцов в А
Код:
procedure TForm5.Button7Click(Sender: TObject);
var i,j,t:integer;
tmp:real;
begin
m:=stringgrid1.ColCount;
k:=0;
l:=8;
for i:=0 to n-1 do
begin
tmp:=A[i,k];
A[i,k]:=A[i,l];
A[i,l]:=tmp;
end;
for t:=0 to n-1 do
for j:=0 to m-1 do
stringgrid4.Cells[j,t]:=FormatFloat('0.00',A[t,j]);
end;
замена в B
Код:
procedure TForm5.Button9Click(Sender: TObject);
var i,j,t:integer;
tmp:real;
begin
m:=stringgrid1.ColCount;
k:=2;
l:=4;
for i:=0 to n-1 do
begin
tmp:=B[i,k];
B[i,k]:=B[i,l];
B[i,l]:=tmp;
end;
for t:=0 to n-1 do
begin
for j:=0 to m-1 do
begin
stringgrid1.Cells[j,t]:=FormatFloat('0.00',B[t,j]);
end;
end;
end;
замена в С
Код:
procedure TForm5.Button5Click(Sender: TObject);
var i,j,t:integer;
tmp:real;
begin
m:=stringgrid1.ColCount;
k:=0;
l:=10;
for i:=0 to n-1 do
begin
tmp:=C[i,k];
C[i,k]:=C[i,l];
C[i,l]:=tmp;
end;
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;
Заранее спасибо - ато у меня уже взрыв мозга от это программы 
|