Для объявления многомерных динамических массивов используйте повторяющуюся arrayof ... конструкцию. Например,
type TMessageGrid = array of array of string;
var Msgs: TMessageGrid;
объявляет двумерный массив строк. Для создания такого массива вызывайте SetLength с двумя целыми параметрами. Например, если I и J – переменные целого типа,
SetLength(Msgs,I,J);
распределяет массив I-на-J элементов, а Msgs[0,0] обозначает элемент этого массива.
ПРИМЕР
1. Преобразовать вещественный массив Y(N)={0.2, -7.8, 2.5, -6.3, 1.3, 5.9, 4.4, 7.8, 0.3} в массив V по формуле Vj= cos Yj, где N=9. Оформить подпрограмму преобразования массива Y в массив V.
2. Заменить положительные элементы массива V их кубами, а отрицательные – наименьшим элементом массива; расположить элементы в порядке возрастания. Оформить подпрограмму выполнения указанных действий над массивом A (N).
3. Преобразовать одномерный массив V в двумерный W размером 3х3: разрезать условно массив V на три полоски; поместить затем под первой полоской вторую, под второй - третью. Использовать при этом оформленную подпрограмму преобразования одномерного массива A(n) в двумерный массив B(m, m).
4. Составить массив R из произведений элементов каждого столбца матрицы W. Оформить подпрограмму выполнения над массивом B(m,m) указанных действий.
1. С помощью Проводника Windows на рабочем логическом диске создайте папку (например, DZ-1) для размещения файлов проекта.

2. Создайте проект консольного приложения Delphi.
2.1. Командой меню «Пуск | BorlandDelphi 7 | Delphi 7» (или аналогичной командой) запустите интегрированную среду программирования Delphi.

3. Вызовите мастера создания нового проекта консольного приложения Delphi «File| New| Other…».

4. В окне «New Items» выберите пиктограмму мастера создания консольного приложения «ConsoleApplication» и нажмите кнопку «ОК»

5. Появится окно с каркасом главной программы:

6. Сохраните файлы проекта с помощью команды основного меню «File | Save Project As…»:

7. Задайте новое имя проекта DZ1 (окно «Имя файла»), выберите раннее созданную папку DZ-1 (список «Папка») и нажмите кнопку «Сохранить»:

8. Автоматически изменится и имя главной программы:

9. Вставьте текстовый файл в проект (команда меню «File| New| Other…»). Выберите на вкладке «New» тип вставляемого объекта «Text».

10. В результате текстовый файл File1.txt будет вставлен в проект и открыт в окне редактора.

11. Сохраните файл под другим именем (команда меню «File | Save As…»)

12. В появившемся окне выберите папку проекта, текстовый тип файла и введите новое имя файла исходных данных DZ1.txt: Нажмите кнопку «Сохранить»

13. Внесите в новый файл DZ1.txt данные задания (количество элементов массива Y, сами элементы массива, количество строк-столбцов двумерной матрицы):

14. Сохраните изменения файла (команда меню «File | Save»).

15. Отредактируйте текст главной программы.
program DZ1;
{$APPTYPE CONSOLE}
Uses
SysUtils,
Math;
type
arr1=array of real; // тип для одномерных массивов Y, V
arr2=array of array of real; // тип для двумерного массива W
var
Y:arr1; // исходный одномерный массив Y
V:arr1; // одномерный массив V (п.1)
Vnew:arr1; // одномерный массив Vnew (п.2)
Vmin:real; // минимальный элемент массива Vnew (п.2)
W:arr2; // массив (п.3)
R:arr1; // одномерный массив R (п.4)
N:integer; // количество элементов одномерных массивов
M:integer; // количество строк-столбцов квадратной матрицы
//-------------------------------------------------------------
// Определение процедуры чтения данных из файла
//-------------------------------------------------------------
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.