Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
EKZAMYeN.doc
Скачиваний:
167
Добавлен:
11.02.2015
Размер:
345.09 Кб
Скачать

22. Структурированные типы данных. Массивы. Операции с массивами. Динамические массивы.

Структурированные типы:

- записи;

- множества;

- файлы;

- массивы;

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

Тип-диапазон – это специальная конструкция языка Delphi, помогающая присваивать значения, лежащие в заданном диапазоне.

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

Массив, как и любая переменная программы, перед использованием должен быть объявлен в разделе объявления переменных.

Имя: array [нижний_индекс. .верхний_индекс] of тип

  • имя — имя массива;

  • array — зарезервированное слово языка Delphi, обозначающее, что объявляемое имя является именем массива;

  • нижний_индекс и верхний_индекс — целые константы, определяющие диапазон изменения индекса элементов массива и, неявно, количество элементов (размер) массива;

  • тип — тип элементов массива.

а:array[0. .2] of integer;

В общем виде объявление двумерного(прямоугольного) массива выглядит так:

Имя: array[НижняяГраница1..ВерхняяГраница1, НижняяГраница2..ВерхняяГраница2] of Тип

n: array [1..12, 1..6] of integer

Список индексных типов – это список одного или нескольких индексов. Если описывается один индексный тип, то массив линейный, если несколько, то многомерный.

При объявлении массива удобно использовать именованные константы. Именованная константа объявляется в разделе объявления констант, который обычно располагают перед разделом объявления переменных. Начинается раздел объявления констант словом const. В инструкции объявления именованной константы указывают имя константы и ее значение, которое отделяется от имени символом «равно». После объявления именованной константы ее можно использовать в программе как обычную числовую или символьную константу.

Пример:

const

c = 18;

team: array[1..c] of string[SN];

Операции с массивами

Типичными операциями при работе с массивами являются:

– вывод массива;

– ввод массива;

– поиск максимального или минимального элемента массива;

– поиск заданного элемента массива;

– сортировка массива.

Вывод массива

Под выводом массива понимается вывод на экран монитора (в диалоговое окно) значений элементов массива.Если в программе необходимо вывести значения всех элементов массива, то для этого удобно использовать инструкцию for.

Ввод (вывод) массива

Под вводом массива понимается процесс получения от пользователя (или из файла) во время работы программы значений элементов массива.

Поиск максимального или минимального элемента массива.

Задачу поиска минимального элемента массива рассмотрим на примере массива целых чисел. Алгоритм поиска минимального (максимального) элемента массива довольно очевиден: сначала делается предположение, что первый элемент массива является минимальным (максимальным), затем остальные элементы массива последовательно сравниваются с этим элементом. Если во время очередной проверки обнаруживается, что проверяемый элемент меньше (больше) принятого за минимальный (максимальный), то этот элемент становится минимальным (максимальным) и продолжается проверка оставшихся элементов.

Поиск в массиве заданного элемента

При решении многих задач возникает необходимость определить, содержит ли массив определенную информацию или нет. Задачи такого типа называются поиском в массиве. Для организации поиска в массиве могут быть использованы различные алгоритмы. Наиболее простой — это алгоритм простого перебора. Поиск осуществляется последовательным сравнением элементов массива с образцом до тех пор, пока не будет найден элемент, равный образцу, или не будут проверены все элементы. Алгоритм простого перебора применяется, если элементы массива не упорядочены.

Сортировка массива

Под сортировкой массива подразумевается процесс перестановки элементов массива, целью которого является размещение элементов массива в определенном порядке.

а[3] – обращение к элементу линейного массива.

b[1,7] – обращение к прямоугольному массиву.

Обращение к элементам массива осуществляется указанием идентификаторов массива и в квадратных скобках номеров элемента через запятую.

Динамические массивы.

В них не указываются границы индексов, однако указывается тип элементов. По умолчанию нижней границей индексов считается 0.

d: array of integer;

Для того, чтобы инициализировать количество элементов массива, используется процедура SetLength(A,n).

Параметр А – это название массива, n – это количество элементов. Если мы хотим инициализировать многомерный массив:

d: array of array of real;

Set Length (d,3)

Set Length (d[0],2)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]