Курсовая работа: Работа с двумерными числовыми массивами
Процедура B_SetDimmsClick является обработчиком нажатия кнопки «задать размеры». Она проверяет, не стали ли размеры меньше единицы, меняет число строк и столбцов в таблицах формы, а так же проставляет номера строк и столбцов:
1 {обраюотчик уствновки размеров матрицы}
2 procedure TMainForm.B_SetDimmsClick(Sender: TObject);
3 var
4 i: integer;
5 RowsN, ColsN: integer;
6 begin
7 //значения размеров не должны быть меньше 1
8 RowsN:= StrToIntDef(E_RowsN.Text, 0);
9 if RowsN < 1 then begin RowsN:= 1; E_RowsN.Text:= '1' end;
10 ColsN:= StrToIntDef(E_ColsN.Text, 0);
11 if ColsN < 1 then begin ColsN:= 1; E_ColsN.Text:= '1' end;
12 //число строк и столбцов в таблице, учитывая колонку и строку с номерами
13 G_Matrix.RowCount:= RowsN + 1;
14 G_Matrix.ColCount:= ColsN + 1;
15 //в этих таблицах отображаются одномерные массивы из первого задания
16 G_Task1B.RowCount:= RowsN;
17 G_Task1C.RowCount:= RowsN;
18 //одномерный массив из четвёртого задания имеет длину, равную числу элементов исходной матрицы
19 G_Task4.ColCount:= RowsN * ColsN;
20 //расставим номера строк и столбцов
21 for i:= 0 to RowsN do
22 begin
23 G_Matrix.Cells[0, i+1]:= IntToStr(i+1);
24 G_Task1B.Cells[0, i]:= IntToStr(i+1);
25 G_Task1C.Cells[0, i]:= IntToStr(i+1);
26 end;
27 for i:= 0 to ColsN do
28 G_Matrix.Cells[i+1, 0]:= IntToStr(i+1);