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