Пример работы с двумерным массивом:
var
A: array[1..10] of array[1..10] integer;
B: array[1..10,1..10] of integer;
i,j,N,M:integer;
begin
read(N,M);
for i:=1 to N do
begin
for j:=1 to M do
begin
A[i,j]:=random(100);
write(A[i,j]:5);
end;
writeln;
end;
Ввод:
5 5
Вывод:
67 3 32 96 59
97 96 94 88 61
21 97 62 76 7
57 78 4 3 81
81 66 59 46 36
TStringGrid (Additional)
Свойства:
ColCount - количество столбцов
RowCount - количество строк
Cells - ячейки с текстом
FixedCols - количество фиксированных столбцов
FixedRows - -"- строк
Options -> GoEditing - разрешить ввод текста в ячейки с клавиатуры
Пример работы со StringGrid
var
A: array[1..10,1..10] of integer;
i,j,N,M:integer;
begin
N:=SpinEdit1.Value;
M:=SpinEdit2.Value;
StringGrid1.RowCount := N;
StringGrid1.ColCount := M;
for i:=1 to N do
begin
for j:=1 to M do
begin
A[i,j]:=random(100);
StringGrid1.Cells[j-1,i-1]:=A[i,j]
end;
end
Практическое задание:
№1 Заполнить квадратный массив "снежинкой":
*
|
*
|
*
|
||
*
|
*
|
*
|
||
*
|
*
|
*
|
*
|
*
|
*
|
*
|
*
|
||
*
|
*
|
*
|
№2(а) Сгенерировать квадратную матрицу случайных чисел, по нажатию на кнопку очистить верхний треугольник: элементы над главной диагональю.
№2(б) ...по нажатию на кнопку очистить нижний треугольник: элементы под главной диагональю.
№3 Заполнить квадратную матрицу по следующему правилу:
элементы над "побочной диагональю" =4, под диагональю =5, на диагонали =3. Например:
4 4 4 4 3
4 4 4 3 5
4 4 3 5 5
4 3 5 5 5
3 5 5 5 5
№4 Сформировать квадратную матрицу порядка n по заданному образцу:
№4 Сформировать квадратную матрицу порядка n по заданному образцу:
1*2
|
0
|
0
|
…
|
0
|
0
|
0
|
0
|
2*3
|
0
|
…
|
0
|
0
|
0
|
0
|
0
|
3*4
|
…
|
0
|
0
|
0
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
0
|
0
|
0
|
…
|
0
|
(n-1)*n
|
0
|
0
|
0
|
0
|
…
|
0
|
0
|
n*(n+1)
|
№5 Дано действительное число x. Получить квадратную матрицу порядка n+1.
1
|
x
|
x2
|
…
|
xn-2
|
xn-1
|
xn
|
X
|
0
|
0
|
…
|
0
|
0
|
xn-1
|
x2
|
0
|
0
|
…
|
0
|
0
|
xn-2
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
xn-1
|
0
|
0
|
…
|
0
|
0
|
x
|
xn
|
xn-1
|
xn-2
|
…
|
x2
|
x
|
1
|
№6 Получить матрицу:
1
|
2
|
3
|
…
|
9
|
10
|
0
|
1
|
2
|
…
|
8
|
9
|
0
|
0
|
1
|
…
|
7
|
8
|
…
|
…
|
…
|
…
|
…
|
…
|
0
|
0
|
0
|
…
|
0
|
1
|
№7 Дана действительная матрица порядка 2n. Получить новую матрицу, переставляя ее блоки размера n*n по часовой стрелке, начиная с блока в левом верхнем углу.
Во всех заданиях задавать размер матрицы из SpinEdit
Комментариев нет:
Отправить комментарий