Основы программирования на C++, PASCAL

Навигация

ГЛАВА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ

ГЛАВА 2. ВВЕДЕНИЕ В ЯЗЫКИ ПРОГРАММИРОВАНИЯ

ГЛАВА 3. ПРОГРАММИРОВАНИЕ НА ПАСКАЛЕ

ГЛАВА 4. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ++

ГЛАВА 5. МЕТОДЫ ПОСТРОЕНИЯ АЛГОРИТМОВ

ГЛАВА 6. ЗАДАЧИ ПО ПРОГРАММИРОВАНИЮ

ПРИЛОЖЕНИЯ

СПИСОК ЛИТЕРАТУРЫ

В программах могут использоваться массивы и большей размерности.

Тип элементов массива называется его базовым типом. Очевидно, что для рассмотренных массивов температур базовым типом является вещественный (Real).

Описание массивов. Переменная регулярного типа описывается в разделе описания переменных в следующей форме:

Var <идентификатор>: Array[<тип индекса>] Of <тип компонент>

Чаще всего в качестве типа индекса употребляется интервальный тип. Например, рассмотренный выше одномерный массив среднемесячных температур опишется так:

Var Т: Array[1..12] Of Real;

Описание массива определяет, во-первых, размещение массива в памяти, во-вторых, правила его дальнейшего употребления в программе. Последовательные элементы массива располагаются в последовательных ячейках памяти (T[1], T[2] и т. д.), причем значения индекса не должны выходить из диапазона 1... 12. В качестве индекса может употребляться любое выражение соответствующего типа. Например, Т[i+j], Т[m div 2].

Тип индекса может быть любым скалярным порядковым типом, кроме integer. Например, в программе могут присутствовать следующие описания:

Var Cod: Array[Char] Of 1..100;

L: Array[Boolean] Of Char;

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

cod['x']; L[true]; cod[chr (65) ]; L[a>0]

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

Type Index=(А,В,С,D);

Var Class_10: Array[Index] Of Byte;

И если, например, элемент Class_l0[A] равен 35, то это означает, что в 10«А» классе 35 чел. Такое индексирование улучшает наглядность программы.

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

Type    Mas1=Array[1..100] Of Integer;

Mas2=Array [-10..10] Of Char;

Var Num: Mas1; Sim: Mas2;

До сих пор речь шла об одномерных массивах, в которых типы элементов скалярные.

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