ОСНОВНЫЕ ПОНЯТИЯ ЯЗЫКА ПАСКАЛЬ
Программа на языке Паскаль формируется с помощью конечного набора знаков, образующих алфавит языка, и состоит из букв, цифр, специальных символов.
В качестве букв используются прописные и строчные буквы латинского алфавита и знак подчёркивания; в качестве цифр: арабские цифры от 0 до 9.
При написании программ применяются специальные символы: +, -, *, /, =, <, >, [], (), @, {},:,;', # (номер), $ (знак денежной единицы), ^ (тильда), пробел, точка и запятая.
Неделимые последовательности знаков алфавита образуют слова, отделённые друг от друга разделителями и несущими определённый смысл в программе. Разделителем может служить пробел, символ конца строки, комментарий. Слова подразделяются на зарезервированные, стандартные идентификаторы и идентификаторы пользователя.
Зарезервированные слова являются составной частью языка и их нельзя использовать в качестве идентификаторов. В языке Паскаль зарезервированными являются следующие слова: and, array, begin, case, const, div, do, downto, else, end, file, for, forward, function, goto, if, in, lable, mod, nil, not, of, or, packed, procedure, program, record, repeat, set, shl, shr, string, then, to, type, unit, until, uses, var, while, with, xor.
Стандартные идентификаторы служат для обозначения заранее определённых разработчиками языка типов данных, констант, процедур и функций.
Идентификаторы пользователя используются для обозначения меток, констант, типов, переменных, процедур и функций, определённых самим программистом.
Общая структура программы.
Описание меток, определение констант, определение типов, описание переменных.
Структура программы.
Program <имя программы>;
{Раздел описаний}
Uses {подключаемые модули}
Label {объявление глобальных меток}
Const {объявление констант}
Type {объявление типов}
Var {объявление переменных}
Procedure {описание процедур}
Function {описание функций}
{Раздел операторов}
Begin
{операторы} End.
Все данные, в зависимости от способа их хранения и обработки можно разделить на две группы константы и переменные.
Константами называются элементы данных, значения которых установлены в описательной части программы и в процессе выполнения программы не изменяются.
Стандартные виды констант:
1. Целочисленные ‒ определяются посредством чисел, записанных в десятичном или шестнадцатеричном формате, не содержащих десятичной точки.
2. Вещественные ‒ определяются посредством чисел, записанных в десятичном формате данных.
3. Символьные ‒ это любой символ персонального компьютера, заключённый в апострофы.
4. Строковые ‒ определяются последовательностью произвольных символов, заключённых в апострофы.
5. Типизированные ‒ переменные с начальным значением. Каждой типизированной константе ставится в соответствие имя, тип и начальное значение.
6. Зарезервированные константы.
Идентификатор=значение;
Переменные в отличие от констант могут менять свои значения в процессе выполнения программы. Тип констант автоматически распознаётся компилятором без предварительного описания. Тип переменной должен быть описан перед тем, как с переменными будут выполняться какие-либо действия.
Формат описания переменных:
Var
Идентификатор: тип;
Пример var { секция объявления переменных } r: Real; { переменная вещественного типа } i: Integer; { переменная целого типа } c: Char; { переменная-символ } b: Boolean; { логическая переменная } s: String; { переменная строки }
t: Text; { переменная для обьявления текстового файла }
e: (apple, pear, banana, orange, lemon); { переменная типа-перечисления }
Типы данных в языке Паскаль
Каждый элемент данных относится к одному из конечного множества типов, допустимых для конкретного языка программирования. Тип ‒ это множество значений, которые могут принимать объекты программы, и совокупность операций, допустимых над этими значениями.
Все типы данных разделяются на две группы:
• скалярные (простые) и
• структурированные (составные).
Простые типы данных Паскаля: числа с плавающей запятой (real), целые (integer), символьный (char), логический (boolean) и перечисления (конструктор нового типа, введённый в Паскале).
Целочисленные типы:
Тип |
Диапазон |
Формат |
Размер в байтах |
Byte |
0..255 |
Беззнаковый |
1 |
ShortInt |
−128..127 |
Знаковый |
1 |
SmallInt |
−32768..32767 |
Знаковый |
2 |
Word |
0..65535 |
Беззнаковый |
2 |
Integer |
-32768..32767 |
Знаковый |
2 |
Cardinal |
=LongWord |
Беззнаковый |
4 |
LongWord |
0..4294967295 |
Беззнаковый |
4 |
LongInt |
−2147483648..2147483647 |
Знаковый |
4 |
Int64 |
−9223372036854775808..9223372036854775807 |
Знаковый |
8 |
QWord |
0..18446744073709551615 |
Беззнаковый |
8 |
Числа с плавающей запятой:
Тип |
Диапазон |
количество значащих цифр |
Размер в байтах |
Real/Double |
зависит от платформы |
??? |
8 |
Real48 |
??? |
11-12 |
6 |
Single |
1.5E-45..3.4E38 |
7-8 |
4 |
Extended |
1.9E-4932..1.1E4932 |
19-20 |
10 |
Comp |
−2E64+1..2E63-1 |
19-20 |
8 |
Currency |
−922337203685477.5808..922337203685477.5807 |
19-20 |
8 |
2. Структурированные (составные) типы данных
Структурированные типы данных определяют упорядоченную совокупность скалярных переменных и характеризуются типом своих компонентов.
Структурированные типы данных в отличие от простых задают множества сложных значений с одним общим именем. Можно сказать, что структурные типы определяют некоторый способ образования новых типов из уже имеющихся.
Существует несколько методов структурирования. По способу организации и типу компонентов в сложных типах данных выделяют следующие разновидности: регулярный тип (массивы); комбинированный тип (записи); файловый тип (файлы); множественный тип (множества); строковый тип (строки); в языке Турбо Паскаль версии 6.0 и старше введен объектный тип (объекты).
В отличие от простых типов данных, данные структурированного типа характеризуются множественностью образующих этот тип элементов, т.е. переменная или константа структурированного типа всегда имеет несколько компонентов. Каждый компонент в свою очередь может принадлежать структурированному типу, т.е.
возможна вложенность типов.
Строка (string) – это последовательность символов кодовой таблицы персонального компьютера. Количество символов в строке может изменяться от 0 до 255.
Простые типы определяют различные множества неразделимых значений. В отличие от них структурированные типы задают множества сложных значений, каждое из которых образует совокупность нескольких значений другого типа. В структурных типах выделяют регулярный тип (массивы ‒ array). Название регулярный тип (или ряды) массивы получили за то, что в них объединены однотипные элементы, упорядоченные (урегулированные) по индексам, определяющим положение каждого элемента в массиве.
Множество (set) – это структурированный тип данных, представляющий собой набор взаимосвязанных по какому-либо признаку или группе признаков объектов, которые можно рассматривать как единое целое. Каждый объект в множестве называется элементом множества. Все элементы множества должны принадлежать одному из скалярных типов, кроме вещественного.
Для записи комбинации объектов разных типов в Паскале применяется комбинированный тип данных – запись (record). Например, товар на складе описывается следующими величинами: наименование, количество, цена, наличие сертификата качества и т.д. В этом примере наименование – величина типа string, количество – integer, цена – real, наличие сертификата – boolean.
Запись представляет собой наиболее общий и гибкий структурированный тип данных, так как она может быть образована из неоднотипных компонентов и в ней явным образом выражена связь между элементами данных, характеризующими реальный объект.
Большие совокупности данных удобно иметь записанными во внешней памяти в виде последовательности сигналов. В Паскале для этих целей предусмотрены специальные объекты – файлы (file). Файлом называется совокупность данных, записанная во внешней памяти под определенным именем.
Арифметические выражения строятся из имен переменных, констант, знаков операций и круглых скобок так, как это принято в математике. При вычислении их значений операции выполняются в порядке приоритета: *, /, DIV, MOD, а затем + и ‒. Операции одинакового старшинства выполняются слева направо.
Оператор |
Назначение |
+ |
Сложение |
- |
Вычитание |
* |
Умножение |
/ |
Деление |
div |
Целочисленное деление |
mod |
Остаток от целочисленного деления |
Наряду с переменными и константами в арифметические выражения можно включать функции. При определении значения выражения, прежде всего, вычисляются значения входящих в него функций. В Паскале имеются следующие стандартные функции:
Функция |
Назначение |
ABS(X) |
Модуль числа x |
ARCTAN(X) |
Arctgx |
COS(X) |
cosx |
EXP(X) |
ех |
FRAC(X) |
Дробная часть x |
INT(X) |
Целая часть x |
LN(X) |
lnx |
PI |
Значение PI=3.1415926535897932385 |
ROUND(X) |
Округление до ближайшего целого |
SIN(X) |
sinx |
SQR(X) |
x2 |
SQRT(X) |
Квадратный корень Х |
TRUNC(X) |
Отбрасывание дробной части |
EXP(B*LN(A)) |
AB – В Паскале нет функции возведения в степень, поэтому степень определяется через уже определенные функции |
Аргумент функции обязательно заключается в скобки.
Выражение на Паскале, как впрочем, и на других языках программирования, записывается в одну строчку, а для сохранения порядка действий используются скобки. Все действия должны быть указаны. Например, XY+X2 надо записать как Х*Y+SQR(X).
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.