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


В Pascal существуют так называемые динамические массивы. При объявлении таких массивов в программе не следует указывать границы индексов:

 

Массив а — одномерный, b — двухмерную, с — трехмерный. Указание границ осуществляется в программе с помощью функции SetLenght (a, 3) A = nil — освобождает память.

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

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

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

— введение массива;

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

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

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

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

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

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

Дорогой со структурированных типов (массивы, записи, множества, файлы) характеризуются множеством элементов, образующих этот тип. Каждый элемент, в свою очередь, может принадлежать структурированному типу, что позволяет говорить о возможной вложенности типов. В Pascal допускается произвольная глубина вложенности типов, однако суммарная длина каждого из них во внутреннем представлении не должна превышать 2Гбайт 2.

Читать  Лекция Операторы языка Паскаль

Массивы в Pascal во многом схожи с массивами в других языках программирования. Отличительная особенность массивов заключается в том, что все их компоненты — данные одного типа (возможно, структурированного). Эти компоненты можно легко упорядочить и обеспечить доступ к каждому из них простым указанием его порядкового номера, например:

 

Описание типа массива задается следующим образом:

<Имя типа> = array [<сп. И все. типов>] of <тип>;

<Имя типа> — правильный идентификатор;

Array of — зарезервированное слово (массив с)

<Сп. И все. типов> — список из одного или нескольких индексных типов, разделенных запятыми; квадратные скобки, обрамляющие список — требование синтаксиса;

<Тип> — любой тип,

Как индексные типы можно использовать любые порядковые типы, кроме LongInt и типов-диапазонов с базовым типом LongInt.

Определить переменную как массив можно и непосредственно при описании этой переменной, без предварительного описания типа массива, например:

Читать  Основные понятия и элементы языка Паскаль – Справка Pascal

Var

a, b: array [1..10] of real;

Обычно как индексный тип используется тип-диапазон, в котором задаются границы изменения индексов. Потому что тип <тип>, следующего за словом of — любой тип, то он может быть в том числе и другим массивом, например

 

В памяти компьютера элементы массива располагаются друг за другом так, что при переходе от младших адресов к старшим наиболее быстро меняется самый правый индекс массива, если

 

То в памяти последовательно друг за другом будут расположены байты со значениями 1,2,3,4.

В Pascal можно одним оператором присваивания передать все элементы одного массива другому массив того же типа, например:

Над массивами не определены операции отношений, нельзя, например, записать

Читать  Введение и вывод значений величин | Составляющие алгоритма обработки величин

If a = b then…,

Однако два массива можно сравнить поэлементно.

[Всего голосов: 3    Средний: 5/5]