Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_Лабы_Ч2.doc
Скачиваний:
5
Добавлен:
09.11.2019
Размер:
2 Mб
Скачать

Лабораторная работа № 7. Одномерные массивы

Цели работы:

  • Познакомиться с понятием массив и правилами его объявления.

  • Познакомиться с понятием многомерные массивы.

  • Познакомиться с операциями над массивами.

  • Создать приложение, в котором наглядно выполняются различные операции с одномерными массивами. Обеспечить выбор операции над массивом с помощью компонента MainMenu.

Краткие теоретические сведения о массивах

Массив представляет собой группу элементов одного и того же типа.

Преимущество массива – простота доступа к отдельному элементу массива и простота реализации самого массива. Поэтому массивы являются наиболее распространенным типом данных, особенно в вычислительных машинах.

7.1.1Понятие массив.

Структура данных формируется из множества данных определенного типа или других, более простых, структур данных.

Массив это структура данных, которая состоит из фиксированного числа элементов, каждый из которых имеет один и тот же тип. Элементы массива могут иметь стандартный тип или тип, введенный пользователем.

Каждый элемент массива имеет свой номер, который называется индексом.

Доступ к элементу массива происходит путем указания имени массива и указания в квадратных скобках порядкового номера элемента.

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

Статический массив – это массив, количество элементов которого заранее известно, т.е. количество элементов массива определяется при его объявлении.

Объявление одномерного массива имеет вид, представленный на рисунке 7.1.

Рисунок 7.1 – Синтаксис объявления одномерного массива

Тип индекса – это любой порядковый (ordinal) тип, например, Char, Boolean. Наиболее часто используется ограниченный тип, например, 0 .. 10 или ‘a’..’z’.

Тип индекса определяет границы изменения значений индекса.

Тип элементов определяет тип элементов, из которых состоит массив.

Пример объявления массива с именем А, состоящего из десяти элементов целого типа приведен ниже:

var A: array[1 .. 10] of integer;

Допустим, элементам массива присвоены конкретные значения (2, 5, 10, 3, 6 ,0, 9, 4, 5, 7). Этот массив, для наглядности представим:

Рисунок 7.2 – Схема одномерного массива

Для доступа к элементам массива используется синтаксическая конструкция, состоящая из имени массива и индекса, который записывается в квадратных скобках. То есть доступ к элементам этого массива обеспечивается выражением: A[i]. Индекс i в данном примере является целым числом в диапазоне от 1 до 10. Таким образом, A[1] – это имя первого элемента, A[2] - имя второго элемента и т.д.

Индексированные элементы массива могут быть использованы так же, как и простые переменные. Например, они могут находиться в выражениях в качестве операндов, им можно присваивать любые значения, соответствующие их типу.

Элементы массива могут иметь любой тип. Например, предложение, приведенное ниже, определяет массив символов.

var S : array [0 .. 10] of char;

Но массив символов это не строка, так как способ хранения в памяти для этих типов данных не одинаков. Единственное, что их объединяет – это способ обращения к элементам. И к элементам массива, и к символам строки обращение делается путем указания индекса.

Ниже приведен пример использования массива для получения чисел Фибоначчи. Два первых числа Фибоначчи равны 1, а каждое последующее равно сумме двух предыдущих. В программе первые 2 элемента массива заполняются до цикла, остальные – в цикле.

var a : array [1..10] of integer;

begin

a[1] := 1;

a[2] := 1;

for i:=3 to 10 do

a[i] := a[i – 2] + a[ i – 1 ];

end;

Во всех приведенных примерах все характеристики массива объявлялись непосредственно при объявлении переменных. Но это не лучший способ объявления переменной типа массив. При работе с массивами лучше вначале объявить тип массива, а затем использовать этот тип при объявлении переменных. Например:

type TArr = array[1 .. 10] of integer;

var A, B : TArr;

Здесь вначале для массивов из 10 целых чисел объявляется тип TArr, а затем объявляются переменные этого типа.

При объявлении массива удобно использовать именованные константы. Например:

const size = 10;

var ar1 : array[1..size] of integer;