Форум: "Начинающим";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
Внизпомогите Найти похожие ветки
← →
дямак © (2006-05-06 20:40) [0]может у кого - нибудь есть алгоритм, чтоб при нажатии на кнопку появлялась матрица в поле memo1 и число строк и столбцов можно было задавать при помощи TEdit
← →
Marser © (2006-05-06 20:46) [1]Каждую строчку формируешь в отдельном цикле, а затем выводишь.
← →
ЛшдлуттнСфе (2006-05-06 20:47) [2]http://delphimaster.net/view/2-1146932864/&web=1 - то есть, это уже неактуально, хотим сразу все идеально?
← →
дямак © (2006-05-06 20:55) [3]насколько я понимаю это
процедура инициализации матрицы случайными целыми числами в диапазоне [0..10]:
procedure RandomMatrix(var M:TMatrix;r,c:integer);
var i,j:integer;
begin
for i:=1 to r do
for j:=1 to c do
M[i,j]:=random(10);
end;
а как сделать чтобы она заполнялась после нажатия на кнопку?(заранее извиняюсь за ламерство)
← →
KilkennyCat © (2006-05-06 20:59) [4]В ветке "Ламерский вопросик" (код ниже),она у вас разве не от кнопки?
procedure TForm1.Button1Click(Sender: TObject);
begin
randomize;
Num_el:=StrToInt(Edit1.Text);
if Num_el>20 then
begin
Application.MessageBox("слишком много элелентов","Ошибка",MB_OK);
Num_el:=0;
exit;
end;
RandomArray(Arr,Num_El);
OutArray(Arr,Num_El,Memo1.Lines);
end;
← →
дямак © (2006-05-06 21:03) [5]так она там одномерная то есть состоит из одного столбца, а мне надо чтоб её размеры можно было указывать, т.е. например 5*5
← →
дямак © (2006-05-06 21:09) [6]вот я вроде чё то составил, как раз 5*5
Var Mtx:TMatrix;
c:integer=5;
r:integer=5;
procedure TForm1.Button1Click(Sender: TObject);
begin
InMatrix(M,r,c,StringGrid1);
ExecMatrix(M,r,c);
OutMatrix(M,r,c,StringGrid2);
end;
теперь мне надо как -то это связать с моим заданием ((В каждой строке поменять местами наибольший и наименьший элементы.))
у меня алгоритм есть, кто-то на форуме помог написать,
var
A: array [1..N, 1..N] of Integer;
I, J, Min, Max, Temp: Integer;
begin
for I := Low(A) to High(A) do
begin
Min := Low(A[I]);
Max := Min;
for J := Succ(Low(A[I])) to High(A[I]) do
if A[I, Min] > A[I, J] then
Min := J
else if A[I, Max] < A[I, J] then
Max := J;
if Min <> Max then
begin
Temp := A[I, Min];
A[I, Min] := A[I, Max];
A[I, Max] := Temp
end;
end;
end.
но как его связать с кнопкой?
← →
KilkennyCat © (2006-05-06 21:11) [7]- Урри, ты нашел у него кнопку? © "Приключения Электроника"
procedure TForm1.Button1Click(Sender: TObject);
begin
InMatrix(M,r,c,StringGrid1);
ExecMatrix(M,r,c);
OutMatrix(M,r,c,StringGrid2);
end;
Выделенное жирным - связь с кнопкой.
← →
дямак © (2006-05-06 21:42) [8]а что такое TMatrix вроде нет такого компонента?
Пример объявления матрицы из 100 чисел (размер 10x10):
type
TMatrix=array [1..10,1..10] of integer;
var
Arr:TMatrix;
Пример процедуры инициализации матрицы случайными целыми числами в диапазоне [0..10]:
procedure RandomMatrix(var M:TMatrix;r,c:integer);
var i,j:integer;
begin
for i:=1 to r do
for j:=1 to c do
M[i,j]:=random(10);
end;
← →
Kilkennycat © (2006-05-06 21:52) [9]
>что такое TMatrix вроде нет такого компонента?
а разве внизу он неописан как тип?
← →
Mr tray (2006-05-06 21:57) [10]Слушайте, люди. Может, я торможу. Но чего то в сабже не понятно мне. По-моему, вообще фраза "матрица появляется в поле memo1" нокорректно звучит. Можете мне разъяснить, что именно это значит?
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.05.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c