Стандартные скалярные типы переменных

В Turbo Pascal используются типы целых и вещественных переменных, приведенные в таблицах № 1 и № 2.

Таблица 1. Целочисленные типы переменных Turbo Pascal

Тип Наименование Диапазон допустимых значений Занимаемая память
SHORTINT Короткое целое -128 ... 127 1 байт
BYTE Байт 0 ... 255 1 байт
INTEGER Целое -32768 ... 32767 2 байт
WORD Слово 0 ...65535 2 байт
LONGINT Длинное целое -2 109 ... 2 109 4 байт

 

Таблица 2.Вещественный типы переменных Turbo Pascal

Тип Наименование Диапазон допустимых значений Число значащих цифр Занимаемая память
REAL Вещественный 10-38 .. 1038 6 байт
SINGLE С одномерной точностью 10-32..1032 4 байт
DOUBLE С двойной точностью 10-308 ..10308 8 байт
EXTENDED С повышенной точностью 10-4931..104931 10 байт
COMP Сложный - 9 1018.. 9 1018 8 байт

 

Последние четыре вещественных типа реализуются только при наличии на плате ПК сопроцессора Intel 8087/80287/80387 для работы с числами, представленными в формате с плавающей точкой, или установленных опций { $E+, N+}.

Для целочисленных переменных переполнения при выполнении арифметических операций не обнаруживается.

При возникновении переполнения для переменных вещественного типа происходит программное прерывание, а в случае потери значимости для этих переменных результат равен нулю.

Типы real, single, double, extended, comp не могут использоваться:

ü в качестве индексов массивов;

ü в операторах For и Case;

ü в качестве базисного типа при определении множеств;

ü при определении подтипов.

Логические типы переменных BOOLEAN имеют два значения TRUE и FALSE, занимают один байт памяти.

Символьные типы переменных CHAR могут принимать значения из множества символов ASCII, занимают один байт памяти.

ВЫРАЖЕНИЯ

Переменные и константы всех типов используются в выражениях. Выражения задают порядок выполнения действий над элементами данных и состоят из операндов (переменных, констант, функций) и круглых скобок, соединенных операциями. Операции определяют действия, которые надо выполнить над операндами. В простейшем случае выражение может состоять из одной переменной или константы.

Операции в Turbo Pascal делятся в зависимости от типа операндов, использующихся в выражениях, на арифметические, отношения, логические (булевские), операции @, строковые и другие.

Арифметические выражения - это константы. переменные, функции, соединенные знаками арифметических операций. Арифметические выражения вычисляются слева направо с учетом приоритета операций.

Таблица 3. Арифметические операции

Операции Действие Тип операндов Тип результата
+ сложение вещественно-целый вещественно-целый
- вычитание вещественно-целый вещественно-целый
* умножение вещественно-целый вещественно-целый
/ деление вещественно-целый вещественный
div целочисленное деление целый целый
mod остаток от деления целый целый
and арифметическое “и” целый целый
or арифметическое “или” целый целый
hor исключающая дизъюкция “или” целый целый
not арифметическое отрицание целый целый
Унарные + сохранение знака вещественно-целый вещественно-целый
- отрицание знака вещественно-целый вещественно-целый

Операции отношения выполняют сравнение двух операндов и определяют, истинно значение или ложно. Сравниваемые величины могут принадлежать к любому скалярному или перечисляемому типу. Результат всегда имеет булевский тип.

 

Таблица 4. Операции отношения

Операции Действие Выражение Результат
= равно А=В True , если А равно В
<> не равно А<>B True , если А не равно В
> больше A>B True , если А больше В
< меньше A<B True , если А меньше В
>= больше или равно A>=B True , если А больше или равно В
<= меньше или равно A<=B True , если А меньше или равно В
in принадлежность A in М True , если А находится в списке М

Результатом логических (булевских) операций является логическое значение True или False. операндами служат данные типа boolean.

Таблица 5. Логические операции.

Операции Действие выражение А В Результата
not логическое отрицание not A True False   False True
and логическое “И” A and B True True False False True False True False True False False False
or логическое “ИЛИ” A or B True True False False True False True False False True True True
xor исключающее “ИЛИ” A xor B True True False False True False True False False True True False

Выполнение каждой операции происходит с учетом ее приоритета. Значения приоритетов указаны в таблицы 6.

Таблица 6. Порядок выполнения операций.

Операции Приоритет Вид операций
@, not первый ( высший) унарная операция
*,/, div, mod, and второй операции типа умножения
+,-, or, xor третий операции типа сложения
=, <>,<,>,<=,>=, in четвертый (низший) операции отношения

СТРУКТУРА ПРОГРАММЫ

Программа на алгоритмическом языке Turbo Pascal представляет собой последовательность операторов, с помощью которых реализуется алгоритм решения задачи. Программа состоит из заголовка, раздела описаний глобальных меток, констант, переменных, типов, процедур и функций и блока операторов основной программы. Процедуры и функции могут содержать разделы описаний локальных меток, констант. переменных.

Структура программы на языке Turbo Pascal имеет вид:

Program <имя программы>;

Uses <список используемых модулей>;

Label <Раздел описания меток>;

Const <Раздел описания констант>;

Type < Раздел описания типов>;

Var < Раздел описания переменных>;

Function < Раздел описания функций>;

Procedure < Раздел описания процедур>;

BEGIN Оператор 1; { Раздел операторов};

Оператор 2; {Текст основной программы}

Оператор 3;

. . . . . . . . .

Оператор n;

END.

Любой раздел, кроме раздела операторов основной программы, может отсутствовать.

В заголовке программы после служебного слова Program приводится имя программы ( идентификатор) Имя может иметь любую длин, из них для компилятора имеют значение первые 63 символа. Имя обязательно должно начинаться с буквы. Заголовок программы выполняет чисто декоративные функции и служит для совместимости с другими компиляторами языка Паскаль или удовлетворения эстетических запросов программиста.

Любую программу, написанную на языке Паскаль можно условно разделить на две основные части: