Структура программы на языке Паскаль
Программа состоит из заголовка и блока.
Заголовок программы
В заголовке указывается имя программы и список параметров. Общий вид:
program n (input, output, x, y,…);
здесь n – имя программы; input – файл ввода; output – файл вывода; x, y – внешние файлы, используемые в программе.
Заголовка может и не быть или он может быть без параметров.
Блок
Блок программы состоит из шести разделов, следующих в строго определенном порядке:
-
раздел меток (label)
-
раздел констант (const)
-
раздел типов (type)
-
раздел переменных (var)
-
раздел процедур и функций
-
раздел действий (операторов).
Раздел действий должен присутствовать всегда, остальные разделы могут отсутствовать.
Каждый из первых четырех разделов начинается с соответствующего ключевого слова (label, const, type, var), которое записывается один раз в начале раздела и отделяется от последующей информации только пробелом, либо концом строки, либо комментарием.
Раздел меток (label)
Любой выполняемый оператор может быть снабжен меткой – целой положительной константой, содержащей не более 4-х цифр. Все метки, встречающиеся в программе, должны быть описаны в разделе label.
Общий вид:
label l1, l2, l3…;
здесь l1, l2, l3 – метки.
Пример. label 5, 10, 100;
Метка отделяется от оператора двоеточием.
Пример. Пусть оператор a :=b имеет метку 20. Тогда этот оператор выглядит так:
20: a :=b;
Раздел констант (const)
Если в программе используются константы, имеющие достаточно громоздкую запись (например, число пи с 8-ю знаками), либо сменные константы (для задания варианта программы), то такие константы обычно обозначаются какими-либо именами и описываются в разделе const, а в программе используются только имена констант. Это делает программу более наглядной и удобной при отладке и внесении изменений.
Общий вид:
const a1=c1; a2=c2; …
здесь a1 – имя константы, c1 – значение константы.
Пример. const pi=3.14; c=2.7531;
Раздел типов (type)
Если в программе вводится тип, отличный от стандартного, то этот тип описывается в разделе type:
type t1=вид_типа; t2=вид_типа;
где t1 и t2 – идентификаторы вводимых типов.
Затем тип используется при объявлении переменных.
Пример использования нестандартных типов:
const len=40; type year=1930..2010; names=string[len]; var empl: names; y: year;
Раздел описания типов имеет большое значение в программе на языке Pascal. Если в программе не использовать типы, то можно столкнуться с несовместимостью типов переменных, даже если они описаны одинаково.
Раздел переменных (var)
Пусть в программе встречаются переменные v11, v12,…; все они должны быть описаны следующим образом:
var v11, v12,…: type1; v21, v22,…: type2; …
здесь v11, v12,… - имена переменных; type1 – тип переменных v11, v12,…; type2 – тип переменных v21, v22,….
Пример. var k, i, j: integer; a, b: real;
Каждая переменная должна быть описана до ее использования в программе и отнесена к одному и только одному типу. Названия разделов (const, type, var…) указываются только один раз.
Пример.
-
var a: real; b: real;
Таким образом, в разделе var вводится имя каждой переменной и указывается, к какому типу эта переменная принадлежит. Тип переменной можно задать двумя способами: указать имя типа (например, real, color и т.д.), либо описать сам тип, например: array[1..16] of char
Раздел процедур и функций
Здесь присутствуют заголовки и тела пользовательских процедур и функций.
Раздел действий (операторов)
Эта часть программы начинается с ключевого слова begin и заканчивается словом end, после которого должна стоять точка. Раздел действий есть выполняемая часть программы, состоящая из операторов.