Программа на языке ПАСКАЛЬ состоит из заголовка, раздела описаний и раздела операторов:
PROGRAM имя;
| раздел описаний]
BEGIN
[раздел операторов]
END.
Заголовок содержит служебное слово PROGRAM, имя программы, задаваемое пользователем-программистом. Заканчивается заголовок символом «;» (точка с запятой).
Раздел описаний предназначен для объявления всех встречающихся в программе данных и их характеристик (имена данных, их тип, возможные значения и др.). Этот раздел, в свою очередь, содержит: объявление меток, констант, типов, переменных, объявление процедур и функций. Они должны располагаться в строго названном порядке. Объявление процедур и функции является одним разделом. Следует заметить, что не все перечисленные разделы обязательны в каждой программе. В простых программах могут потребоваться, например, только разделы: объявления констант и переменных. После каждого описания ставится символ «;» (точка с запятой).
Раздел операторов заключается в операторные скобки вида: BEGIN (начать) и END (окончить), при этом после END ставится точка. В разделе операторов записывается последовательность исполняемых операторов. Каждый оператор выражает действие, которое необходимо выполнить. Исполняемые операторы отделяются друг от друга символом «;».
Ниже представлена структура программы на языке ПАСКАЛЬ в общем виде:
PROGRAM имя;
LABEL
CONST
TYPE
VAR
PROCEDURE, FUNCTION BEGIN
оператор 1;
оператор 2;
оператор 3;
……
оператор n—1;
оператор п
END.
Сама же программа записывается в свободной форме, операторы не привязаны к определенной позиции строки в отличие от многих других языков программирования.
В одной строке можно указывать несколько описаний или операторов. Допускается перенос с одной строки на другую частей описаний или операторов (но не разрешается разделять слова, константы и составные символы). В то же время рекомендуется программу записывать в такой внешней форме, чтобы ее можно было легко читать и понимать. Для этого широко используются пробелы, пустые строки и комментарии. Рекомендуется смысловые части выделять одинаковыми отступами от начала строки. Так, для выделения заголовка программы, раздела описаний и раздела операторов удобно записывать слова PROGRAM, BEGIN, END с одной позиции строки. По отношению к ним соответствующие описания или операторы, сдвигаются вправо. Желательно сдвиг делать на одинаковое число позиций от края или по отношению к предыдущему сдвигу.
В качестве примера рассмотрим простейшую программу 1.2 вычисления объема шара по формуле
V=(4/3) R3,
гдеR=0,2 - радиус шара; =3,14.
PROGRAM SHAR;
CONST PI=3.14;
VAR
R: REAL; (*РАДИУС ШАРА*)
V: REAL; (*ОБЪЕМ ШАРА*)
BEGIN
R:=0.2;
V:=4*PI*R*R*R/3;
WRITELN(‘ОБЪЕМ ШАРА’,V:8:3);
END.
Программа состоит из трех частей: заголовка; раздела описаний; раздела операторов, заключенного в операторные скобки BEGIN — END.
За комментарием следует заголовок PROGRAM, который содержит имя программы SHAR.
В разделе описания констант задано значение 3,14. Так как в языке ПАСКАЛЬ символа нет, его заменили именем PI. Кроме того, в изображении числа ставится точка вместо запятой:
CONST РI=З.14;
В разделе описания переменных объявлено, что имеются две переменные R и V, относящиеся к действительному типу (REAL), т.е. они могут содержать дробную часть. Здесь же используются комментарии для пояснения физического смысла переменных R и V.
В разделе операторов прежде всего задается значение радиуса с помощью оператора R:=0.2;
В языке ПАСКАЛЬ знак присваивания «:=» соответствует знаку равенства «=» в математической записи (R=0,2).
Далее непосредственно вычисляется значение объема шара с помощью оператора
V:=4*PI*R*R*R/3;
Формула записывается в одну строку, звездочкой обозначен знак умножения, наклонной чертой — знак деления. Вычисленное значение V хранится в памяти ЭВМ. Для вывода этого значения на экран дисплея используется оператор
WRITE (‘ОБ"ЕМ ШАРА=’,V:8:3)
который выводит на экран поясняющий текст
ОБ"ЕМ ШАРА=
и вычисленное значение V по формату 8:3 (8 — число позиций на изображение всего числа; 3 — число позиций на изображение дробной части). Таким образом, после выполнения программы на экране появится результат
ОБ"ЕМ ШАРА=,.. О.ОЗЗ