Массив - это множество однотипных элементов, объединённых общим именем и занимающих в компьютере определённую область памяти. Количество элементов в массиве всегда конечно. В общем случае массив - это структурированный тип данных, состоящий из фиксированного числа элементов, имеющих один и тот же тип.
Другими словами можно сказать, что массив представляет собой фиксированное количество упорядоченных однотипных компонент, снабженных индексами, т.е. является совокупностью конечного числа данных одного типа. В качестве элементов массива можно использовать любой тип данных, поэтому вполне правомерно существование массивов записей, массивов указателей, массивов строк, массивов и т.д.
Массивы могут быть:
· одномерными (одна строка – несколько столбцов);
· многомерными (несколько строк – несколько столбцов).
Для создания массива его предварительно необходимо описать либо в разделе var, либо в разделе type. Для задания массива используется зарезервированное слово array, после которого указывается тип индекса (-ов) компонент (в квадратных скобках) и после слова of - тип самих компонент:
Type
<имя массива>=array[<тип индекса(-ов)>] of <тип компонент>;
Или
Var
<имя массива>:array[<тип индекса(-ов)>] of <тип компонент>;
Введя тип массив, можно задавать переменные или типизированные константы этого типа. Размерность массива может быть любой, компоненты массива могут быть любого, в том числе и структурированного, типа; индекс может быть любого порядкового типа, кроме типа longint.
При задании значений константе-массиву компоненты указываются в круглых скобках и разделяются запятыми, причем, если массив многомерный, внешние круглые скобки соответствуют левому индексу, вложенные в них круглые скобки - следующему индексу и т.д.
Например,
Type
arr = array [1..3] of real;
matrix = array [1..3, 1..2] of integer;
Const
mas1: arr = (1, 2, 3);
mas2: matrix = ((1, 2), (3, 4), (5, 6));
Тип массив можно вводить и непосредственно при определении соответствующих переменных или типизированных констант.
Например,
Var
m1, m2 : array [1..3] of integer;
matr : array [1..3, 1..3] of real;
Доступ к компонентам массива осуществляется указанием имени массива, за которым в квадратных скобках помещается значение индекса (-ов) компоненты. В общем случае каждый индекс компоненты может быть задан выражением соответствующего типа.
Например, m1 [2], matr[i,j].
Для обработки массива и последовательного доступа к данным, как правило, используется цикл FOR.
Например,
for i:=1 to 10 do read(mas[i]);
Обработка элементов двумерного массива обычно выполняется с двойного цикла. Один цикл управляет перебором номеров строк, другой - столбцов.
Например,
for i:=1 to 10 do
for j:=1 to 10 do read(mas[i, j]);
Над элементами массива можно производить те же операции, которые допустимы для данных его базового типа. Если два массива имеют одинаковые типы индексов и одинаковые типы элементов, то к ним применимы булевы операции (<>=).
2. Основные операции обработки массивов
2.1 Определение размерности массива, заполнение массива
Объяснение:
1. Определение и типы массивов
Массив - это множество однотипных элементов, объединённых общим именем и занимающих в компьютере определённую область памяти. Количество элементов в массиве всегда конечно. В общем случае массив - это структурированный тип данных, состоящий из фиксированного числа элементов, имеющих один и тот же тип.
Другими словами можно сказать, что массив представляет собой фиксированное количество упорядоченных однотипных компонент, снабженных индексами, т.е. является совокупностью конечного числа данных одного типа. В качестве элементов массива можно использовать любой тип данных, поэтому вполне правомерно существование массивов записей, массивов указателей, массивов строк, массивов и т.д.
Массивы могут быть:
· одномерными (одна строка – несколько столбцов);
· многомерными (несколько строк – несколько столбцов).
Для создания массива его предварительно необходимо описать либо в разделе var, либо в разделе type. Для задания массива используется зарезервированное слово array, после которого указывается тип индекса (-ов) компонент (в квадратных скобках) и после слова of - тип самих компонент:
Type
<имя массива>=array[<тип индекса(-ов)>] of <тип компонент>;
Или
Var
<имя массива>:array[<тип индекса(-ов)>] of <тип компонент>;
Введя тип массив, можно задавать переменные или типизированные константы этого типа. Размерность массива может быть любой, компоненты массива могут быть любого, в том числе и структурированного, типа; индекс может быть любого порядкового типа, кроме типа longint.
При задании значений константе-массиву компоненты указываются в круглых скобках и разделяются запятыми, причем, если массив многомерный, внешние круглые скобки соответствуют левому индексу, вложенные в них круглые скобки - следующему индексу и т.д.
Например,
Type
arr = array [1..3] of real;
matrix = array [1..3, 1..2] of integer;
Const
mas1: arr = (1, 2, 3);
mas2: matrix = ((1, 2), (3, 4), (5, 6));
Тип массив можно вводить и непосредственно при определении соответствующих переменных или типизированных констант.
Например,
Var
m1, m2 : array [1..3] of integer;
matr : array [1..3, 1..3] of real;
Доступ к компонентам массива осуществляется указанием имени массива, за которым в квадратных скобках помещается значение индекса (-ов) компоненты. В общем случае каждый индекс компоненты может быть задан выражением соответствующего типа.
Например, m1 [2], matr[i,j].
Для обработки массива и последовательного доступа к данным, как правило, используется цикл FOR.
Например,
for i:=1 to 10 do read(mas[i]);
Обработка элементов двумерного массива обычно выполняется с двойного цикла. Один цикл управляет перебором номеров строк, другой - столбцов.
Например,
for i:=1 to 10 do
for j:=1 to 10 do read(mas[i, j]);
Над элементами массива можно производить те же операции, которые допустимы для данных его базового типа. Если два массива имеют одинаковые типы индексов и одинаковые типы элементов, то к ним применимы булевы операции (<>=).
2. Основные операции обработки массивов
2.1 Определение размерности массива, заполнение массива