ЧАСТЬ 3

ИНФОРМАТИКА

Электронное учебно-методическое пособие

 

 
 

 

2.5.4. Структура программы

Структурно программа состоит из заголовка и двух частей: описательной и выполняемой.

Заголовок находится в начале программы и имеет вид:

Program <Имя программы>;

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

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

Каждый раздел начинается специальным служебным словом. В конце каждого раздела ставится точка с запятой.

Структура программы в общем случае:

Program <Имя программы>;

Uses <Список модулей>;

Label <Список меток>;

Туре <Описание типов>;

Const <Список констант>;

Var <Объявление переменных>;

<Описание процедур>;

<Описание функций>;

Begin

<операторы тела программы>; {Выполняемая часть программы}

end.

Порядок расположения разделов следующий: раздел подключения модулей всегда располагается сразу после заголовка программы. Остальные разделы следуют в произвольном порядке с учётом обязательного правила: имена элементов программы должны быть объявлены и описаны до того, как они будут использованы. В структуре конкретной программы любой из разделов описания и объявления может отсутствовать.

Раздел подключения модулей состоит из зарезервированного слова Uses и списка имён подключаемых стандартных и пользовательских библиотечных модулей. Формат этого раздела:

Uses <Имя1>, <Имя2>, ... , <ИмяN>;

Например:

Uses Crt, Dos, MyLib;

Раздел объявления меток начинается зарезервированным словом Label, за которым следуют имена меток, разделённые запятыми. Имена меток записываются как любой идентификатор, кроме того, метками могут быть целые числа без знака в диапазоне 0..9999.

Формат данного раздела:

Label <имя1>, <имя2>, ..., <имяN>;

Например:

Label metkal, metka2, 10, 567;

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

Формат раздела:

Туре <Имя типа 1> = «Описание типа 1>; …<Имя типа N> = <Описание типа N>;

Например:

Type char2 = ('а'..'z');
massiv = array[1..100] of real;
month = 1..12;

В Object Pascal есть много стандартных типов, не требующих описания: Real, Integer, Char, Boolean, String и др.

Раздел объявления констант начинается зарезервированным словом Const. Именованная константа может быть определена с помощью любого математического или строкового выражения. Формат:

Const <идентификатор константы> = <константное выражение>;

Примеры объявления именованных констант:

Const maxn = 12;

kd = Pi/180;
name = ‘Алексей’;

Раздел объявления переменных начинается зарезервированным словом Var. Объявление переменных обеспечивает выделение памяти для размещения.

 

2.5.5. Переменные

Переменная в компьютере – это область оперативной памяти, имеющая определённый адрес. Переменные объявляются в разделе объявления переменных Var, однако, в отличие от констант, получают свои значения уже в процессе выполнения программы. Кроме того, значения переменных могут изменяться в ходе выполнения программы. К переменным можно обращаться по именам (идентификаторам).

Сколько байтов памяти выделить под переменную, компилятор определяет по указанному типу переменной при её объявлении в разделе Var.

Формат объявления:

Var <список идентификаторов переменных>: <тип значений>;

Примеры объявления переменных:

Var a, b: integer;
Name: string;
x, y: real;

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

Переменные, объявляемые в процедурах и функциях, являются локальными. Они существуют только во время выполнения соответствующей процедуры или функции, т. е. память для них выделяется только при вызове соответствующей процедуры или функции и освобождается при возврате в вызвавшую процедуру.

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

Глобальные переменные можно инициализировать при объявлении.

 

 


© Сибирская государственная геодезическая академия (СГГА), 2011