
4. Массивы. Описание одномерного массива
Массив - это структурированный тип данных, состоящий из фиксированного числа переменных. Набор переменных, входящих в массив, имеет один и тот же тип.
Элементы массива, объединены общим именем и занимают в компьютере определённую область памяти. Количество элементов в массиве всегда конечно. Эти элементы, упорядочены таким образом, что каждому элементу соответствует совокупность номеров (индексов), определяющих его местоположение в общей последовательности. Доступ к каждому отдельному элементу осуществляется путем индексирования элементов массива. Индексы представляют собой выражения любого целого типа. Массив используют для хранения и обработки однородной информации, например таблиц и списков. Если за каждым элементом массива закреплен только один его порядковый номер, то такой массив называется линейным, или одномерным.
Массив описывается в разделе переменных.
Var
<имя массива>: array [тип индекса] of <mun данных>;
Пример: Var
А: array [1 ..10] of real;
Одномерный массив А содержит десять элементов, вещественного типа. Если несколько массивов имеют одинаковое количество элементов и один и тот же тип, то в разделе описания переменных их можно перечислить через запятую:
Var
В, С: array[1...20] of integer;
По индексу определяется положение элемента в массиве. Индекс заключается в квадратные скобки и может быть целым числом
Например:
А[4] - элемент массива А находится на 4 позиции А[1] - элемент массива А находится на 1 позиции.
Индекс элемент массива можно задать выражением целого типа.
Пример: A[2i+3]
Такое задание номера элемента используют при описании некоторой последовательности.
5. Действия над элементами одномерного массива
1) Инициализация (присвоение начальных значений), при чем это значение одинаково для всех элементов массива. Присвоить каждому элементу массива одно и тоже значение вручную или пр помощи оператора цикла с известным числом повтора for:
А[1] : = 1;
А[2]:= 1; А[3]:=1;
for i:=1 to 3 do A[i]:=l;
2) Ввод и вывод элементов массива. Ввод/вывод элементов массива осуществляется при помощи цикла for
Ввод:
for i=1 to 10 do Read(a[i]);
Вывод:
for i:=1 to 10 do Write(a[i]);
Копирование массивов (присвоение значений всех элементов одного массива соответствующим элементам другого массива).
For i:=1 to 10 do A[i]:=B[i];
4) Перестановка элементов массива осуществляется при помощи дополнительной переменной.
Пример: В массиве А нужно поменять местами второй и пятый элементами.
buffer := а[2];
а[2]:=а[5];
а[5] :=buffer;
Переменной buffer присваивается значение второго элемента массива А. Затем второму элементу присваивается значение пятого элемента массива А. Последняя операция присваивает пятому элементу значение второго элемента, который мы записали в переменную buffer.
6. Описание двумерного массива. Ввод и вывод элементов двухмерного массива. Если в описании массива заданы два индекса, то это двумерный массив. Такой массив соответствует понятию прямоугольной таблицы (матрицы). Чтобы определенный образом задать какую-либо ячейку двумерной таблицы, нужно указать номер строки и номер столбца.
Общий вид объявления двумерных массивов выглядит так:
Var
<Имя массива>: array[<нижняя граница массива1..<верхняя граница массива1 >, <нижняя граница маси-ва2>..<верхняя граница массива2>] of<mun данных>;
Var
Matrix : array[1..5,l:.5] of integer;
Для того, чтобы реализовать ввод матрицы в компьютер с клавиатуры, необходимо использовать вложенные циклы:
For i:=l to 5 do
For j:=l to 5 do Read(Matrix[i,j]);
Здесь i u j - счетчики целочисленного типа (byte), объявляемые в разделе var. Алгоритм такого кода:
При
использовании вложенных циклов
последовательно идет работа с элементами
первой строки, потом второй, третьей,
четвертой, пятой. Вывод
матрицы
на
экран:
For i:=l to 5 do begin
Forj: -1 to 5 do
Write(Matrix[i j],' ');
WriteLn;
End.