====== Объявление массива ====== {{:users:chrissie:del:1294.jpg|}} Массив, как и любая переменная программы, перед использованием должен быть объявлен в разделе объявления переменных. В общем виде инструкция объявления массива выглядит следующим образом: Имя: array [нижний_индекс. .верхний_индекс] of тип где: * имя — имя массива; * array — зарезервированное слово языка Delphi, обозначающее, что объявляемое имя является именем массива; * нижний_индекс и верхний_индекс — целые константы, определяющие диапазон изменения индекса элементов массива и, неявно, количество элементов (размер) массива; * тип — тип элементов массива. == Примеры объявления массивов: == //temper:array[1..31] of real;// //коef:array[0. .2] of integer;// //name:array[1..30] of string[25];// ---- При объявлении массива удобно использовать именованные константы. Именованная константа объявляется в разделе объявления констант, который обычно располагают перед разделом объявления переменных. Начинается раздел объявления констант словом const. В инструкции объявления именованной константы указывают имя константы и ее значение, которое отделяется от имени символом "равно". Например, чтобы объявить именованную константу nv, значение которой равно 10, в раздел const надо записать инструкцию: nv=u. После объявления именованной константы ее можно использовать в программе как обычную числовую или символьную константу. Ниже в качестве примера приведено объявление массива названий команд-участниц чемпионата по футболу, в котором используются именованные константы. //const// //NT = 18; // число команд// //SN = 25; // предельная длина названия команды var// //team: array[1..NT] of string[SN];// ---- Для того чтобы в программе использовать элемент массива, надо указать имя массива и номер элемента (индекс), заключив индекс в квадратные скобки. В качестве индекса можно использовать константу или выражение целого типа, например: //team [ 1] := 'Зенит';// //d := koef[l]*koef[l]-4*koef[2]*koef[1];// //ShowMessage(name[n+1]);// //temper[i] := StrToFloat(Edit1.text);// ---- Если массив не является локальным, т.е. объявлен не в процедуре обработки события, а в разделе переменных модуля, то одновременно с объявлением массива можно выполнить его инициализацию, т.е. присвоить начальные значения элементам массива. Инструкция объявления массива с одновременной его инициализацией в общем виде выглядит так: Имя:array[нижний_индекс..верхний_индекс] of тип = (список); где список — разделенные запятыми значения элементов массива. Например: //a: array[10] of integer = (0,0,0,0,0,0,0,0,0,0);// //Team: array[1..5] of String[10]=// //('Зенит','Динамо','Спартак','Ротор','СКА');// Обратите внимание, что количество элементов списка инициализации должно соответствовать размерности массива. Если это будет не так, то компилятор выведет сообщения об ошибке: Number of elements differs from declaration (количество элементов не соответствует указанному в объявлении). При попытке инициализировать локальный массив компилятор выводит сообщение об ошибке: Cannot initialize local variables (локальная переменная не может быть инициализирована). Локальный массив можно инициализировать только во время работы программы, например, так: //for i := 1 to 10 do// //a[i]:= 0;// ===== Операции с массивами ===== Типичными операциями при работе с массивами являются: * вывод массива; * ввод массива; * поиск максимального или минимального элемента массива; * поиск заданного элемента массива; * сортировка массива. Назад: [[users:chrissie:del:index]] {{tag>}}