Тип-массив представляет собой фиксированное количество
упорядочен¬ных однотипных компонент, снабженных индексами. Он может
быть од¬номерным и многомерным. Чтобы задать тип-массив,
используется заре-зервированное слово array, после которого следует в
квадратных скобках
Type
<имя типа>=аrrау[<тип
индекса(индексов)>] of <тип компонент>
Пример, объявление типов-массивов:
Type
Arr=array[ 1.3] of Real; {Тип-массив из трех вещественных чисел}
Matrix =array[1.,3, 1..2] of Integer;{Тип - двумерный массив целых
чисел, состоящий из 3 строк и 2 столбцов}
Введя тип-массив, можно затем задать переменные или типизированные
константы этого типа.
Размерность массива может быть любой, компоненты массива могут быть
любого, в том числе и структурированного, типа, индекс (индексы) может
(могут) быть любого порядкового типа, кроме типа Longint.
Тип-массив можно вводить непосредственно и при опре¬делении
соответствующих переменных или типизированных констант.
Пример, другое задание
переменных-массивов:
VAR
М1, М2: array[1..3J of Real;
Matr: array[1..3. 1..2) of Integer.
Здесь определены те же массивы, что и в предыдущем примере. Доступ к
компонентам массива осуществляется указанием имени массива, за которым
в квадратных скобках помещается значение индекса (индексов) компоненты.
В общем случае каждый индекс компоненты может быть задан выражением
соответствующего типа.
Пример обращения к элементам массива:
Ml [2],
MatrfX, YJ, и т. д.
Одному массиву можно присвоить
значение другого массива, но толькоидентичного типа. Так, если заданы
следующие массивы:
VAR
А, В: array[1..5] of Integer;
С: arrayfl..5] of real;
то допустим оператор А:= В; С другой стороны, оператор С:=А;
недопустим, так как массивы А и С - неидентичных типов.
Обработка массивов в программах
производится покомпонентно. Вот примеры ввода значений в массивы:
For I:=l To 12 Do ReadLn(T[I]);
For I:=l To IMax Do
For J:=l To JMax Do ReadLn(Mas[I,J]);
Здесь каждое следующее значение будет вводиться с новой строки. Для
построчного ввода используется оператор Read.
Аналогично в цикле по индексной переменной организуется вывод значений массива. Например:
For I:=l То 12 Do Write (Т [ I] : 8 : 4) ;
Следующий фрагмент программы организует построчный вывод матрицы на экран:
For I:=l To IMax Do
Begin For J:=l To JMax Do
Write(Mas[I,
J] :6) ;
WriteLn
End;
После печати очередной строки матрицы оператор WriteLn без параметров
переведет курсор в начало новой строки.
Сортировка массивов - называется распределение элементов
множества по группам в соответствии с определенными правилами.
Например, сортировка элементов массива, в результате который получается
массив, каждый элемент которого, начиная со второго, не больше стоящего
от него слева, называется сортировкой по невозрастанию.
for I:=l To N-l Do
For K:=l To N-I Do
If X[K]>X [K+l] Then Begin
A:=X[K];
X[K]:=X[K+1];
X[K+1]:=A
End;