
- •Глава 3. Структура программы на языке турбо паскаль. Операторы языка.
- •3.1. Структура программы на языке Паскаль
- •Раздел var содержит имена переменных и соответствующие им типы.
- •3.2. Операторы языка Паскаль
- •3.2.1. Оператор присваивания
- •3.2.2. Пустой оператор
- •3.2.3. Оператор обращения к процедуре
- •3.2.4. Организация ввода информации
- •3.2.5. Организация вывода информации
- •3.2.6. Комментарии к программе
- •3.2.7. Организация программ линейной структуры
Глава 3. Структура программы на языке турбо паскаль. Операторы языка.
3.1. Структура программы на языке Паскаль
Программа на языке Паскаль состоит из заголовка, раздела описаний и тела программы.
Структура программы на языке Паскаль имеет вид:
PROGRAM <имя программы>;
Раздел описаний
BEGIN
Тело
программы
END.
Заголовок содержит служебное слово PROGRAM, имя программы, даваемое пользователем, и в круглых скобках имена стандартных файлов INPUT (ввод) и OUTPUT (вывод), связывающих программу с внешними устройствами ввода - вывода ПК (персонального компьютера). В конце заголовка ставится символ ";".
Раздел описаний состоит из разделов (частей), каждый из которых начинается с ключевого слова:
LABEL – описание меток;
CONST – определение констант;
TYPE – определение типов данных;
VAR – описание переменных;
PROCEDURE, FUNCTION – описание процедур и функций.
Порядок размещения разделов произвольный, можно создавать несколько одинаковых частей. Не все перечисленные части обязательно используются в каждой программе. В конце каждой части ставится символ ";".
Тело программы (обязательная часть), представляет собой последовательность операторов и заключается в операторные скобки BEGIN – END. При этом после BEGIN не ставится никакой символ, после END ставится символ ".".
Замечание 1. Программа записывается в свободной форме, операторы не привязаны к определенной позиции строки. Длина строки не должна превышать 127 символов. Допускается перенос на другую строку, при этом служебные слова, имена, константы, переменные стараются не разрывать.
Замечание 2. Клавишей ввода пользуются только после символа «;», чтобы перейти на новую строку. Если в оператор внесены изменения, то не надо нажимать клавишу ввода, так как при этом строка разбивается на две. В этих случаях пользуются клавишами управления курсором.
Все данные, используемые в программе, должны быть объявлены в разделе описаний.
Раздел LABEL содержит перечисленные через запятую метки переходов, установленные в теле программы. Метки могут обозначаться целым числом в диапазоне 0...9999 или идентификатором длиной не более 63 символов.
Например,
LABEL 123, m1, Vvod, Stop;
Метками снабжаются операторы, на которые имеются ссылки в программе. Метка отделяется от оператора символом ":". При отсутствии в программе помеченных операторов раздел LABEL опускается.
Раздел CONST включает в себя список имен констант и их значений. В Турбо Паскале имеются две разновидности констант, заданных идентификаторами:
– обычные константы, тип которых определяется их значением;
– типизированные константы, для которых в явном виде указывается их тип.
Для обычных констант задаются их имена и значения, разделенные знаком равенства:
CONST
<имя константы 1> = <значение 1>;
<имя константы 2> = <значение 2>;
. . . . . . . . . . . . . . . . . . . . . . . . . .
<имя константы N> = <значение N>;
Пример.
CONST
M = 10; M1 = M;
M2 = sin(1)+0.5;
F = -6.345E-5;
ST = 'A';
D = MaxLongInt;
G = MaxInt;
Замечание 1. В Турбо Паскале в качестве значений констант можно использовать выражения и некоторые стандартные функции, а также два предопределенных целых числа: МaxInt = 32767, MaxLongInt = 2147483647.
Дополнительно к обычным константам Турбо Паскаль допускает использование качественно новых объектов – типизированных констант. Такие константы занимают промежуточное положение между обычными константами и переменными. Они описываются в разделе CONST вместе с обычными константами. Для каждой типизированной константы задается ее имя, тип и начальное значение:
CONST
<имя константы>:<тип> = <значение>;
Пример.
CONST
DL: Integer = 10;
R: Real = -23.345;
Sim: Char = 'H';
B: Boolean = True;
Типизированным константам можно переприсваивать другие значения в ходе выполнения программы и использовать их как обычные переменные таких же типов. При объявлении других констант пользоваться ими в качестве значений нельзя, например, недопустимым считается объявление констант: R3 = R; Sim1: Char = Sim.
Если в программе не предполагалось использование констант, то раздел CONST отсутствует.
Раздел TYPE состоит из списка равенств, в левой части которых указан идентификатор типа, а в правой – множество значений этого типа.
Пример описания нестандартных типов данных.
TYPE
Mas = array [1..40] of Integer;
Otr = 1..20;
Sezon = (Vesna, Leto, Osen, Zima);
Если в программе используются только стандартные типы, то раздел TYPE отсутствует.