Массивы в паскале
Массив – это группа однотипных элементов, имеющих общее имя и расположенных в памяти рядом.Особенности:
все элементы имеют один тип
• весь массив имеет одно имя
• все элементы расположены в памяти рядом
Примеры:
• список студентов в группе
• квартиры в доме
• школы в городе
• данные о температуре воздуха за год
Общий вид описания (одномерного) массива в паскале:
array [<тип_индексов>] of <тип_компонент>;
Чаще всего это трактуется так:
array [<левая_граница>..<правая_граница>]
of <тип_компонент>;
Тип компонент массива может быть любым:
var a4: array[10..20] of real;
- массив из компонент простого типа
a5: array[0..100] of record1;
- массив из записей
a6: array[-10..10] of ^string;
- массив из указателей на строки
a7: array[-1..1] of file;
- массив из имен файловых переменных
a8: array[1..100] of array[1..100] of char;
- двумерный массив (массив векторов)
Многомерные массивы в паскале
Для краткости и удобства многомерные массивы в паскале можно описывать и более простым способом:var a9: array[1..10,1..20] of real;
- двумерный массив 10 х 20
a10: array[boolean, -1..1, char, -10..10]
of word;
- четырехмерный массив 2 х 3 х 256 х 21
Общее ограничение на размер массива в паскале - не более 65 520 байт - сохраняется и для многомерных массивов.
Количество компонент многомерного массива вычисляется как произведение всех его "измерений".
Таким образом, в массиве а9 содержится 200 компонент, а в массиве а10 - 32 256 компонент.
Массивы в паскале относятся к структурам прямого доступа. Это означает, что возможно напрямую (не перебирая
предварительно все предшествующие компоненты) обратиться к любой интересующей нас компоненте массива.
Доступ к компонентам линейного массива в паскале осуществляется так:
<имя_массива>[<индекс_компоненты>]
а многомерного – так:
<имя_массива>[<индекс_компоненты>]