Структура программы на турбо паскаль
Программа на языке Турбо Паскаль состоит из заголовка, раздела описаний и раздела исполняемых операторов. Заголовок программы содержит имя программы, например:
Program PRIM;Строка заканчивается особым разделителем – точкой с запятой. Этот разделитель в языке Турбо Паскаль отмечает конец оператора или описания. Использование особого разделителя позволяет располагать несколько операторов на одной строке. Поскольку имя программы в дальнейшем не используется, то можно опускать строку объявления имени без каких-либо последствий для программы.
Раздел описания долженсодержать описания всех идентификаторов, используемых в разделе исполняемых операторов.
Описания могут включать в себя:
· раздел подключаемых библиотек (модулей);
· раздел описания меток;
· раздел описания констант;
· раздел описания типов;
· раздел описания переменных;
· раздел описания процедур и функций.
Раздел описания модулей определяется служебным словом USES и содержит имена подключаемых модулей (библиотек) как входящих в состав системы Turbo Pascal, так и написанных пользователем. Раздел описания модулей должен быть первым среди разделов описаний. Имена модулей отделяются друг от друга запятыми:
Любой оператор в программе может быть помечен меткой. Имя метки задается по правилам образования идентификаторов Турбо Паскаль. В качестве метки также могут использоваться произвольные целые числа без знака, содержащие не более четырех цифр. Метка ставится перед оператором и отделяется от него двоеточием. Все метки, используемые в программе, должны быть перечислены в разделе описания меток и начинаться со служебного слова LABEL, например:
label 3, 471, 29, Quit;Описание констант позволяет использовать имена как синонимы констант, их необходимо определить в разделе описания констант. Описанию должно предшествовать служебное слово CONST:
const K= 1024; MAX= 16384;В разделе описания типов объявляются идентификаторы типов. Описанию должно предшествовать служебное слово TYPE. Например:
Type Str = string[40];
В разделе описания переменных необходимо указать все переменные, используемые в программе, и определить их тип. Описание начинается со служебного слова VAR:
var P,Q,R: Integer; A,B: Char; F1,F2: Boolean; S: Str;Описание типов, процедур и функций будет рассмотрено ниже. Отдельные разделы описаний могут отсутствовать, но следует помнить, что в Турбо Паскаль - программе должны быть обязательно описаны все компоненты программы.
Раздел исполняемых операторов представляет собой составной оператор, который содержит между служебными словами
begin.......endпоследовательность операторов. Операторы отделяются друг от друга символом;. Текст программы заканчивается символом точка.
Кроме описаний и операторов Турбо Паскаль, программа может содержать комментарии, которые представляют собой произвольную последовательность символов, расположенную между открывающей скобкой комментариев{ и закрывающей скобкой комментариев}.
Пример 1
program Primer; {вычисление суммы двух чисел}var x,y,s: integer;begin WriteLn('Введите через пробел два числа '); ReadLn(x,y); s := x + y; WriteLn('Сумма чисел равна ',s);end.Данная программа запрашивает с клавиатуры два числа, находит их сумму и выводит ответ. Теперь сделаем так, чтобы программа сначала очищала экран, выполняла свои действия, а в конце работы позволяла пользователю посмотреть результат, ожидая его нажатия клавиши.
Пример 2
program Primer; {вычисление суммы двух чисел}
Выражения
Выражение задает правило вычисления некоторого значения. В общем случае выражение состоит из нескольких элементов (операндов) и знаков операций (операторов), а тип определяется типом операндов и видом применённых к ним операций. Операндами могут быть константы, переменные и обращения к функциям. Каждый из этих элементов характеризуется своим значением и принадлежит к какому-либо типу данных.
Все операции можно разделить на 4 группы:
- математически операции;
- операции отношения;
- логические операции;
- функции.
Математические операции
В таблице приведены основные математические операции Турбо Паскаль в соответствии с приоритетом, то есть, старшинством. Операции с одинаковым приоритетом равноправны между собой и выполняются слева направо, как и в математике.
. Таблица 1.4
Символ операции | Название операции | Пример |
* | умножение | 2*3 (результат: 6) |
/ | деление | 30/2 (результат: 1.5E+01) |
div | целочисленное деление | 5 div 2 (результат: 2) |
mod | остаток от деления | 5 mod 2 (результат: 1) |
+ | сложение | 2+3 (результат: 5) |
- | вычитание | 5-3 (результат: 2) |
Операции div и mod определены только для целочисленных операндов. Приведем пример их использования:
var y,c,n:integer;
. . .
y:=2006;
c:=y div 100;
n:=y mod 100;
Здесь переменная c получит значение 20, а n – значение 6.
Логические операции
Над логическими аргументами в Турбо Паскаль определены следующие операции:
· NOT - логическое отрицание ("НЕ")
· AND - логическое умножение ("И")
· OR - логическое сложение ("ИЛИ")
· XOR - логическое "Исключающее ИЛИ"
Результаты выполнения этих операций над переменными А и В логического типа приведены в таблице истинности.
Таблица 1.5
A | B | not A | A and B | A or B | A xor B |
true | True | false | true | true | false |
true | False | false | true | true | |
false | True | true | false | true | true |
false | false | false | false | false |
Операции отношения
К операциям отношения в Турбо Паскаль относятся такие операции, как:
· > - больше
· < - меньше
· = - равно
· <> - не равно
· >= - больше или равно
· <= - меньше или равно
В операциях отношения могут принимать участие не только числа, но и символы, строки, множества и указатели.
Приоритет операций
Порядок вычисления выражения определяется старшинством (приоритетом) содержащихся в нем операций. В языке Паскаль принят следующий приоритет операций:
· унарная операция not, унарный минус -, взятие адреса @
· операции типа умножения: * , /, div, mod, and
· операции типа сложения: +, -, or, xor
· операции отношения: =, <>, < , >, <=, >=, in
Порядок выполнения операций переопределить можно с помощью скобок. Например, 2*5+10 равно 20, но 2*(5+10) равно 30.