Заголовок содержит служебное слово PROGRAM, имя программы, задаваемое программистом. Заканчивается заголовок символом «;» (точка с запятой).
Раздел описаний предназначен для объявления всех встречающихся в программе данных и их характеристик (имена данных, их тип, возможные значения). Этот раздел содержит следующие подразделы: объявление меток, констант, типов, переменных, объявление процедур и функций. Порядок расположения разделов не важен и описания могут повторяться.
Объявление процедур и функций является одним разделом. Следует заметить, что не все перечисленные разделы обязательны в программе. В простых программах могут потребоваться, например, только разделы описания констант и переменных.
После каждого описания ставится символ «;».
Раздел операторов («тело» программы) заключается в операторные скобки вида: BEGIN(начать) и END (окончить), при этом после служебного слова END обязательно ставится точка. В разделе операторов записывается последовательность исполняемых операторов и каждый выражает действие, которое необходимо выполнить. Исполняемые операторы отделяются друг от друга символом «;».
Хороший стиль программирования требует:
· записывать слова PROGRAM, BEGIN, END с одинаковой позиции строки;
· по отношению к ним описания и операторы принято сдвигать вправо на 3 символа. Желательно сдвиг делать на одинаковое количество позиций от края или по отношению к предыдущему сдвигу.
Раздел описания меток
Метки являются условными номерами (именами) операторов. Одной меткой можно пометить только один оператор. Метка от помеченного оператора отделяется двоеточием. Используемые в Turbo Pascal метки, могут быть двух типов:
целым числом в пределах от 0 до 9999;
обычным идентификатором.
Все используемые метки должны быть перечислены в разделе объявления меток, начинающемся зарезервированным словом Label, например:
Label1, 2, Metka.
Раздел описания констант
Константами называются параметры программы, значения которых не меняются в процессе ее выполнения.
В языке Паскаль возможно двоякое использование констант:
– непосредственное использование значения константы;
– использование идентификатора константы.
Задание констант идентификаторами осуществляется в разделе объявления констант, начинающемся зарезервированным словом Const.
В Turbo Pascal имеется две разновидности констант, заданных идентификаторами:
– обычные константы, тип которых определяется их значением;
– типизированные константы, для которых в явном виде указывается их тип.
Обычные константы могут быть целого, вещественного, символьного, логического типа и типа string, типизированные константы – любого типа, кроме типа файл (или содержащего компоненту типа файл). Для обычных констант задаются их имена и значения, разделенные знаком равенства.
Const
<имя константы 1> = <значение 1>,
<имя константы 2> = <значение 2>,
<имя константы N> = <значение N> ;
Значения констант могут задаваться как конкретными величинами соответствующего типа, так и константными выражениями.
Целые константы представляются знаком и цифрами (знак + можно не указывать). Предполагается десятичная система счисления, однако можно использовать и шестнадцатеричную. В этом случае перед константой следует поставить знак $. Диапазон целых десятичных чисел – от -2147483648 до 2147483647, а шестнадцатеричных – от $00000000 до $FFFFFFFF. В Turbo Pascal заданы два предопределенных целых числа:
Maxint =32767;
MaxLongInt=2147483647.
Вещественные константы в своем изображении содержат десятичную точку или/и показатель степени (символ Е или е), например: -0. 5; 1.07; -1Е-5; 5е+15.
Строковаяконстанта(строка символов) – это последовательность любого, в том числе и равного нулю, количества символов из набора ASCII, расположенных на одной строке и заключенных в апострофы. Ограничением здесь может быть максимальный размер строки, воспринимаемый компилятором (не более 126 символов).
Строка, состоящая из одного символа, называется символьной константой.
Если между апострофами нет ни одного символа, то такая строка называется нулевой строкой.
При необходимости поместить в строку символ ' (апостроф), его следует записать дважды, например 'Язык 'Turbo Pascal''.
Пример.Описание строковых констант.
Const
Symbols ='TURBO',
Apostroph = ''.
Константные выражения – это такие выражения, которые могут быть вычислены на стадии компиляции без запуска программы. Они являются частным случаем выражений и могут состоять из констант, знаков операций, круглых скобок и некоторых стандартных функций.
Пример.Константные выражения
'А' {выражение, состоящее из символьной константы}
Pi/4 {выражение с использованием функции и знака операции}.
В константных выражениях можно использовать следующие функции: Abs, Chr, Hi, High, Length, Lo, Low, Odd, Ord, Pi, Pred, Ptr, Round, SizeOf, Succ, Swap, Trunc.
Типизированные константы фактически представляют собой инициализированные переменные и могут использоваться наравне с обычными переменными, в том числе и в левой части операции присваивания.
Для каждой такой константы задается ееимя, тип и начальное значение. Тип от имени отделяется двоеточием, начальное значение от типа – знаком равенства.
Следует иметь в виду, что типизированные константы (в том числе и константы процедур и функций) инициализируются только раз – в начале работы программы.
Раздел описания типов
Тип данных – это множество допустимых значений данных, а также совокупность операций над ними.
В Turbo Pascal можно выделить следующие группы типов:
– простые типы;
– структурированные типы;
– указатели;
– процедурные типы;
– объекты.
Простые типы, используемые в языке, разделяются на стандартные (предопределенные) и определяемые программистом.
Стандартный тип, не требующий предварительного определения, включает:
· целые типы –Integer;
· вещественные типы – Real;
· логические типы – Boolean;
· символьный тип – Char;
· тип-строка – String;
· ASCII-строка – PChar;
· текстовый файл – Text;
· тип-указатель – Pointer.
Все другие используемые типы данных должны быть определены либо в разделе объявления типов, либо в разделе объявления переменных или типизированных констант.
Раздел объявления типов начинается зарезервированным словом type, после которого определяются вводимые типы. Определение каждого нового типа начинается с идентификатора типа. За ним следует знак равенства, а далее – само определение, завершающееся точкой с запятой:
type
<имя типа 1> = <определение типа 1>;
<имя типа 2> = «определение типа 2>;
<имя типа N> = «определение типа N>.
В данном разделе будут описаны только простые типы данных, все остальные типы будут рассмотрены после описания переменных, констант и выражений.
Простой тип определяет упорядоченное множество значений параметра.
В Turbo Pascal имеются следующие группы простых типов:
· целый;
· перечисляемый;
· логический;
· тип-диапазон;
· символьный;
· вещественный.
Все простые типы, за исключением вещественных, называются порядковыми типами. Для величин порядковых типов определены стандартные процедуры и функции: Dec, Inc, Ord, Pred, Succ.
Целый типиспользуется для описания целых чисел. В отличие от языка Паскаль, где определен единственный целый тип Integer, в Turbo Pascal имеется пять стандартных типов целых чисел, характеристики которых в приведены в табл. 4.