Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TP_6W.DOC
Скачиваний:
12
Добавлен:
07.06.2015
Размер:
318.98 Кб
Скачать

2.4. Булевские данные

Встроенный тип Booleanданных вTurbo Pascalимеет два возможных значения:TrueиFalse(истина и ложь). Можно объявить переменную типаBoolean, и присвоить ей значениеTrueилиFalse, или же, что более важно, присвоить ей значение выражения, которое при вычислении принимает одно из этих значений.

Булевское выражение – это выражение, которое принимает значение TrueилиFalse. Оно состоит из выражений отношений, булевских операторов, булевских переменных и/или других булевских выражений. Например:

While (Index <= Limit) and not Done do …

Whileсодержит булевское выражение. Булевское выражение в этом случае все, что находится между ключевыми словамиwhileиdo.Done– это переменная (или функция) булевского типа.

2.5. Тип массив

Массивы содержат фиксированное число компонент одного типа – тип компоненты. В типах индекса, по одному для каждой размерности массива, указывается число элементов. Допустимыми типами индекса являются все порядковые типы, за исключением Longint. Массив может быть проиндексирован по каждой размерности всеми значениями соответствующего индекса; число элементов поэтому равно числу значений каждого индекса. Максимальное число размерностей – четыре.

Приведем пример объявления переменной типа массив:

Var

Mas1: array[1..100] of Real;

В приведенном примере объявлена матрица вектор из ста элементов вещественного типа.

Многомерные массивы можно объявлять как массив массивов:

Mas2: array[1..10] of array[1..10] of Integer;

Для объявления таких массивов обычно используют краткую форму, которая эквивалентна приведенной выше:

Mas2: array[1..10, 1..10] of Integer;

В обоих случаях объявляется матрица целых чисел размером 10х10.

Для доступа к элементам массива необходимо использовать идентификатор массива за которым указывается индекс (или набор индексов), задающий элемент. Например:

Mas1[8] - указывает на восьмой элемент;

I:= 4;J:= 5;

Mas2[I,J] - указывает на пятый элемент в четвертой строке.

3. Идентификаторы

До сих пор в примерах содержались идентификаторы переменных без описания ограничений и правил их образования. Рассмотрим их более подробно.

Имена, которые даются константам, типам данных, переменным, функциям, известны как идентификаторы.

Идентификаторы использовались для:

Integer,Real,Stringвстроенных типов данных;

Hello,DoRatioназвания основных программ;

Name, A, B, Ratio переменных;

Write,WriteLn,ReadLnимен встроенных процедур.

Turbo Pascalимеет несколько правил образования идентификаторов. Краткое описание правил:

  • все идентификаторы начинаются с буквы или знака подчеркивания (a..z,A..Z, _ ). Последующими символами могут быть буква, знак подчеркивания, цифра (0-9). Другие символы недопустимы.

  • Идентификаторы рассматриваются без учета регистров (прописные и строчные буквы не различаются). Это значит, что a..zтождественноA..Z. Напримерindexтоже самое что иIndex, иINDEX.

  • Идентификаторы могут иметь различную длину, но используются только первые 63 символа.

4. Операторы

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

Существует восемь типов операторов. Из них здесь будут рассмотрены пять из них: присваивания, арифметические, отношений, логические и над строками.

Большинство операторов в Паскале бинарные, имеют два операнда; унарные операторы имеют один операнд. Бинарные операторы имеют обычно алгебраическую форму, например a+b. Унарный оператор предшествует своему операнду, например –b.

В сложных выражениях порядок выполнения операций определяется правилами приоритета.

Приоритет операторов

Таблица 4.1.

Операторы

Приоритет

Категория

Not

Первый (высший)

Унарный

*, /, div, mod, and

Второй

Мультпликативные

+, -, or,xor

Третий

Аддитивные

=, <>, <, >, <=, >=,

Четвертый (низший)

Отношения

Операция равного приоритета выполняются слева направо, хотя компилятор может их перегруппировать для генерации оптимального кода.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]