Главная / Справочник / Синтаксис языка / Структура программы
Любую программу, написанную на стандарте языка Паскаль, можно условно разделить на следующие основные части:
Строка заголовка программы состоит из зарезервированного слова PROGRAM и имени программы. В Турбо Паскале эта строка не обязательна, и ее можно без ущерба исключить. Но правила хорошего тона в программировании требуют задания некоторого имени программы, чтобы уже при первом знакомстве можно было получить хоть какую-нибудь информацию об ее назначении. Однако не стремитесь привести здесь всю известную Вам информацию о программе - для этих целей можно воспользоваться дополнительными комментариями. Обычно в заголовке достаточно указать имя и версию программы. Следующее за оператором PROGRAM имя является идентификатором и обладает всеми его свойствами. В частности, внутри тела программы не могут быть объявлены объекты, имя которых совпадает с именем программы.
PROGRAM {Заголовок программы} {$ ... } {Глобальные директивы компилятора} USES {Подключаемые библиотеки} LABEL {Подраздел объявления глобальных меток} CONST {Подраздел объявления глобальных констант} TYPE {Подраздел объявления глобальных типов} VAR {Подраздел объявления глобальных переменных}
В первой части программы программист сообщает компилятору, какими идентификаторами он обозначает данные (константы и переменные), а также определяет собственные типы данных, которые он в дальнейшем намеревается использовать в данной программе. Например, можно объявить переменные как локальные, допустив тем самым создание объектов с одинаковыми идентификаторами внутри функций и процедур. При этом необходимо следить за тем, чтобы не возникали конфликты между локальными и глобальными объявлениями различных объектов.
В этом разделе записываются подпрограммы, осуществляющие сложные действия, которые необходимо произвести неоднократно на разных этапах выполнения программы. Подпрограммы бывают двух типов: прjцедуры (PROCEDURE) и функции (FUNCTION). И те и другие представляют собой программы в миниатюре:
PROCEDURE(FUNCTION) {Заголовок процедуры (функции)} LABEL {Подраздел объявления локальных меток} CONST {Подраздел объявления локальных констант} TYPE {Подраздел объявления локальных типов} VAR {Подраздел объявления локальных переменных} BEGIN {Раздел текстов подпрограмм} END; {Основной блок процедуры или функции}
Они могут иметь все те же разделы, что и основная программа, в частности, раздел локальных процедур и функций, вызываемых только в пределах данной подпрограммы.
BEGIN {Основной блок программы} {текст программы} END.
В этом разделе содержится смысловая часть программы.