Характеристика разделов программы
Любая программа реализует алгоритм решения задачи. Она объединяет последовательность действий, выполняемых над определенными данными с помощью определенных операций для реализации определенной цели. Основными характеристиками программы является точность полученного результата, время выполнения и объем требуемой памяти.
Синтаксически программа на языке Паскаль состоит из двух частей: заголовка, который не является обязательным, и блока, который может содержать в себе другие блоки. Блок, в свою очередь, состоит из двух частей: раздела описанийираздела операторов. Первая часть может отсутствовать, без второй блок не имеет смысла.
Блок, который не входит ни в какой другой блок, называется глобальным. Если в глобальном блоке находятся другие блоки, они называются локальными. Глобальный блок – это основная программа, он должен присутствовать в любом случае. Локальные блоки – это процедуры и функции, их присутствие необязательно.
В начале программы находится заголовок,которыйв общем случае состоит из зарезервированного слова Program, имени программы и параметров, с помощью которых программа взаимодействует с операционной системой. Заголовок программы несет чисто смысловую нагрузку и может отсутствовать. Имя программы является идентификатором и формируется по соответствующим правилам.
Формат заголовка программы
Program <имя программы>;
Например, Program Lin;
После заголовка следует программный блок, состоящий в общем случае из разделов описаний подключаемых библиотечных модулей, меток, констант, типов данных, переменных, процедур и функций, и раздела операторов.
Любой раздел, кроме раздела операторов, может отсутствовать. Разделы описаний могут встречаться в программе любое количество раз и следовать в любом порядке. Главное, чтобы все описания объектов программы были сделаны до того, как они будут использованы.
Охарактеризуем разделы программного блока.
n Раздел описания подключаемых библиотечных модулей
Характерной чертой языка Паскаль является наличие большого количества стандартных процедур и функций (общее название – подпрограммы). Все они находятся в библиотечных модулях. Библиотечный модуль – это результат компиляции одной или нескольких процедур и функций. Модуль имеет имя, упомянув которое в разделе Uses, можно получить доступ к каждой из находящихся в нем процедур или функций.
Например, язык Турбо Паскаль имеет следующие стандартные модули: System, Dos, Overlay, Graph, Crt, Printer, которые хранятся в файле TURBO.
В модуле Crt содержатся стандартные процедуры управления экраном, а модуль Printer служит для управления работой принтера.
Рассмотрим некоторые процедуры модуля CRT, которые будут использоваться при написании программ:
1. CLRSCR – очистка экрана. Курсор перемещается в левый верхний угол экрана.
2. GOTOXY(N1, N2) – перемещение курсора в заданную точку экрана. Здесь N1,N2 – параметры:
N1 – номер столбца на экране дисплея, целое из диапазона от 1 до 80;
N2 – номер строки на экране дисплея, целое из диапазона от 1 до 25;
Например, GOTOXY(20,10) – перемещение курсора в 10 строку и 20 столбец.
3. DELAY(T) – задержка выполнения программы на Т милисекунд. Например, чтобы сделать задержку на 2 сек, следует записать DELAY (2000).
Интегрированная среда разработки Delphi имеет свои стандартные модули: SysUtils, Windows, Graphics и некоторые другие. Подробнее с назначением и составом каждого из них можно ознакомиться в справочной системе Delphi.
Пример
Uses SysUtils, Windows;
В модуле SysUtils содержатся процедуры, функции, объекты для обработки и управления разными типами данных, организации и обработки файлов, управления работой программы.
В модуле Windows содержатся библиотеки с набором API- функций ОС, в частности, процедура SetConsoleoutputСP(N), которую следует использовать для отображения русских шрифтов (в формате SetConsoleoutputСP(1251),где 1251 – код страницы, в которой находится кириллица).
Подробнее эта информация изложена в справочной системе программной среды Delphi.
Раздел описания подключаемых библиотечных модулей всегда расположен после заголовка программы.
Формат
Uses<имя модуля1>,<имя модуля2>, …;
n Раздел описания меток
Перед любым оператором языка Паскаль можно поставить метку, что позволит выполнить обращение к этому оператору с помощью оператора перехода goto из любого места программы. Метка состоит из имени и следующего за ним двоеточия. Именем может служить идентификатор или цифра.
Используемые метки должны быть описаны в разделе Label.
Формат
Label <имя, . . . >;
Пример
Label M1, М2, 4, Blok2;
Далее в тексте программы выполняется обращение к меткам с использованием оператора Goto.
Goto M1;
. . .
M1: Y:=2*SIN(X);
Здесь M1 – это метка оператора.
n Раздел описания констант
В этом разделе производится присваивание идентификаторам констант постоянных значений.
Формат
Const < идентификатор > = < значение>;
Пример
Const R1=22;
St=3.25;
R2:Integer=4;
После того, как константа определена, ей нельзя присвоить какое-либо другое значение. Ряд констант (True, False, Maxint) определен стандартно, к ним можно обращаться без предварительного описания.
n Раздел описания типов данных
Этот раздел включается в программу тогда, когда программист использует в программе свои собственные типы. Стандартные типы не требуют описания. Синтаксис языка Паскаль не требует обязательного определения идентификатора типа, так как значения типа всегда можно задать перечислением в разделе описания переменных.
Формат
Type < имя типа > = < значения типа >;
Пример
Type T1=1..25;
T2=Array[1..10] of real;
n Раздел описания переменных
Каждая встречающаяся в программе переменная должна быть описана. Раздел описания переменных включает в себя описание всех переменных, встречаемых в программе.
Формат
Var <идентификатор, . . .>: < тип >;
Пример
Var A,B,X : real;
Z,Y : integer;
n Раздел описания процедур и функций
Стандартные процедуры и функции в программе не описываются. В разделе описания процедур и функций должны быть приведены тексты только тех процедур и функций, которые разработаны самим программистом и используются в данной программе.
Формат
Procedure <имя процедуры>{(список формальных параметров)};
Function <имя функции>{(список формальных параметров)}:<тип>;
Пример
Procedure Sum(a,b:real; Var S:real);
Function Sum(a,b:real):real;
Подробнее процедуры и функции пользователя будут рассмотрены далее.
.
n Раздел операторов
Раздел операторов является основным, так как именно в нем описывается алгоритм решения задачи. Этот раздел начинается со слова Begin и заканчивается словом End с точкой (End.), между которыми располагаются строки операторов, описывающих, в каком порядке выполняются действия над данными, чтобы получить требуемый результат. В конце каждого оператора ставится точка с запятой («;»).
Формат:
Begin
< оператор;>
. . .
< оператор;>
End.
Дата добавления: 2019-02-07; просмотров: 446;