Компонентный Паскаль/Знакомство с массивами: различия между версиями

Материал из Викиучебника — открытых книг для открытого мира
Содержимое удалено Содержимое добавлено
Строка 19: Строка 19:


===Объявление многомерного массива===
===Объявление многомерного массива===
Многомерным массивом называется такой массив, в котором расположение элементов не только по одной линии (друг за другом), но и в более высоких размерностях. Например, массив с двумя измерениями можно уподобить фигуре на плоскости. При этом при размерности 1000х1000 он будет в общей сложности иметь 1 млн. элементов (1000^2). Такой массив называется прямоугольным или квадратным по аналогии с планиметрией. Массив с тремя измерениями будет иметь размер 1000х1000х1000 -- 1 млрд. элементов (1000^3). А это уже даже для современных компьютеров довольно много. Такой массив называется объёмным или кубическим по аналогией со стереометрией. Можно создать массив с ещё более высокими размерностями и адекватно представить даже в воображении такой массив трудно, если не невозможно. Но тем не менее, аналогии можно провести с реальностью. Например структура "Города-улицы-дома-квартиры".
Многомерным массивом называется такой массив, в котором расположение элементов не только по одной линии (друг за другом), но и в более высоких размерностях. Например, массив с двумя измерениями можно уподобить фигуре на плоскости. При этом при размерности 1000х1000 он будет в общей сложности иметь 1 млн. элементов (1000^2). Такой массив называется прямоугольным или квадратным по аналогии с планиметрией. Массив с тремя измерениями будет иметь размер 1000х1000х1000 -- 1 млрд. элементов (1000^3). А это уже даже для современных компьютеров довольно много. Такой массив называется объёмным или кубическим по аналогией со стереометрией. Можно создать массив с ещё более высокими размерностями и адекватно представить даже в воображении такой массив трудно, если не невозможно. Но тем не менее, аналогии можно провести с реальностью. Например структура "Города-улицы-дома-квартиры". Ниже пример объявления многомерных массивов:
<source lang="oberon2"></source>

VAR
d1, d2: ARRAY 1000, 1000 OF INTEGER;
d3, d4: ARRAY 1000, 1000, 1000 OF INTEGER;
{{BookCat}}
{{BookCat}}

Версия от 10:58, 16 апреля 2015

Общие сведения о массивах

Массивом называется выделенный блок однотипных переменных, например 1`000 переменных типа INTEGER или 1`000`000 типа CHAR. Или даже ещё больше. Поскольку разные типы переменных занимают разное число байтов в памяти, массивы из одного количества элементов (например 1000) могут занимать разное количество байт(например SHORTCHAR займёт 1000 байт, а LONGINT -- 8000). Необходимость в массивах возникает довольно часто, особенно при обработке больших массивов данных. Например, Большой адронный коллайдер (БАК) в Швейцарии (родине Никлауса Вирта) создаёт такие огромные массивы данных, что после каждого запуска БАК все ведущие университеты мира и исследовательские организации по полгода обрабатывают накопленные данные.

Объявление массива

Массив, по сути это такая же переменная, как и например, BOOLEAN. Поэтому объявление массивов не выбивается из общих правил:

VAR
	d: ARRAY 1000 OF INTEGER;

Как видно из приведённого текста массив объявляется ключевым словом ARRAY, после чего через пробел указывается его размерность. После определения размерности следует ключевое слово OF с указанием типа элементов INTEGER. Точно также, как и в случае с обыкновенными переменными окончание объявление массива ограничивается точкой с запятой (если это не последний элемент секции VAR).

Ничто не мешает объявить два или больше массивов сразу, через одно объявление типа:

VAR
	d1, d2, d3, d4: ARRAY 1000 OF INTEGER;

Всё это допустимые формы объявления переменных (массив особый случай переменной, но по большому счёту -- это переменная).

Объявление многомерного массива

Многомерным массивом называется такой массив, в котором расположение элементов не только по одной линии (друг за другом), но и в более высоких размерностях. Например, массив с двумя измерениями можно уподобить фигуре на плоскости. При этом при размерности 1000х1000 он будет в общей сложности иметь 1 млн. элементов (1000^2). Такой массив называется прямоугольным или квадратным по аналогии с планиметрией. Массив с тремя измерениями будет иметь размер 1000х1000х1000 -- 1 млрд. элементов (1000^3). А это уже даже для современных компьютеров довольно много. Такой массив называется объёмным или кубическим по аналогией со стереометрией. Можно создать массив с ещё более высокими размерностями и адекватно представить даже в воображении такой массив трудно, если не невозможно. Но тем не менее, аналогии можно провести с реальностью. Например структура "Города-улицы-дома-квартиры". Ниже пример объявления многомерных массивов:

VAR d1, d2: ARRAY 1000, 1000 OF INTEGER; d3, d4: ARRAY 1000, 1000, 1000 OF INTEGER;