Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatica / lin.doc
Скачиваний:
41
Добавлен:
09.04.2015
Размер:
776.19 Кб
Скачать

Правила записи текста программы

<разделитель текста>::=<пробел>!<конец строки>!<комментарий>

<комментарий>::={<любая последовательность символов, кроме { и }>}

  1. Между двумя последовательными конструкциями языка, любая из которых является идентификатором, числом или служебным словом, обязательно должен находиться хотя бы один разделитель текста.

  2. Разделители текста не должны встречаться внутри идентификато­ров, чисел и служебных слов.

  3. Кроме случаев, указанных в предыдущем пункте, между двумя последовательными основными символами языка может встречаться любое число разделителей текста.

Концепция данных

Под термином данныепринято понимать представление фактов и (или) идей в формализованном виде, пригодном для передачи и обра­ботки в некотором процессе. Смысл, который человек приписывает дан­ным посредством принятых соглашений, называетсяинформацией.

Заметим, что одни и те же данные могут нести разную информа­цию, например, число 5 может означать оценку ответа, количество предметов и т.д. Цель обработки данных – получение новой информации.

В программах обрабатываемые данные фигурируют в качестве значений программных объектов. Данные, которые зафиксированы в тек­сте и не изменяются в процессе выполнения программы, являются значениями таких программных объектов, как константы; остальные данные являются значениями объектов, называемыхпеременными.

В компьютере любые данные представляются в двоичном коде. Алгоритмические языки позволяют абстрагироваться от конкретного спо­соба представления данных за счет концепции типа значений.Каждыйпредусмотренный в языке тип данныхопределяет множество значе­ний этого типа и набор операций над ними.Способ изображения этих значений в конкретной вычислительной системе не играет существенной роли при формулировании алгоритма и может не учитываться.

Для упрощения разработки и формулирования алгоритмов и по­вышения наглядности их записи, обрабатываемые данные могут объеди­няться в структуры, организованные тем или иным способом. Заметим, чтоотдельное данное, например, число можно рассматривать как част­ный случай структуры –тривиальная структура данных.

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

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

В языке OBJECT PASCAL имеется 7 групп основных типов:

  • целые;

  • логические (булевы);

  • символьные;

  • перечни;

  • интервальные (диапазоны);

  • вещественные;

  • дата-время.

Среди простых типов перечень и интервальный тип определяют­ся программистом, а остальные – встроенные. Первые пять групп типов относятся к порядковым.

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

Операции

Выполняемые действия

Low(T)

Минимальное значение типа T

High(T)

Максимальное значение типа T

Ord(X)

Порядковый номер значения X

Pred(X)

Возвращает предыдущее значение для X

Succ(X)

Возвращает следующее значение для X

Dec(X)

Уменьшает X на единицу

Inc(X)

Увеличивает X на единицу

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

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

К структурированным производным типам относятся:

  • множества;

  • массивы;

  • записи;

  • файлы;

  • объектный тип (тип класса);

  • тип ссылки на класс.

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

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

Соседние файлы в папке Informatica