Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по 'Pascal'.doc
Скачиваний:
49
Добавлен:
24.04.2015
Размер:
1.28 Mб
Скачать

Пользовательский тип «отрезок»

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

Синтаксис описания типа «отрезок» (раздел type):

Константа_а..Константа_в

Замечания:

  • Обе константы должны иметь один и тот же порядковый тип.

  • Объект типа «отрезок» имеет все свойства главного типа, однако его значение на этапе выполнения программы должно принадлежать указанному в описании интервалу.

Пример описания типа «отрезок»:

ChMes = 1..31;

Вещественные типы

Если основной характеристикой целочисленного типа является диапазон значений, то для вещественного типа основными характеристиками являются диапазон представления и точность (Рисунок 1).

точность

Рисунок 1 – Характеристики вещественного типа

Диапазон представления – количество знаков, выделяемое для представления значимых разрядов числа.

Точность – диапазон возможных значений степени числа 10.

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

Таблица 2 – Стандартные вещественные типы

Стандартный идентификатор

Точность

Диапазон представления (цифр)

Размер занимаемой области памяти

Real

2.9е-39 .. 1.7e38

11-12

6

Single (с одинарной точностью)

1.5e-45 .. 3.4e38

7-8

4

Double (с двойной точностью)

5.0e-324 .. 1.7308

15-16

8

Extended (с повышенной точностью)

1.9e-4951 .. 1.14932

19-20

10

Переменные

Переменная представляет собой поименованную область памяти ЭВМ определённого размера, используемую для хранения данных определённого типа.

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

Примечание: размер памяти, занимаемый всеми объявленными переменными, не должен превышать 65520 байт.

Синтаксис описания переменных (раздел var):

Ид_переменной1, Ид_переменной2...: описание_типа|Ид_типа; ...

Пример:

var

X,Y,Z: real;

I,J,K: integer;

Digit: 0..9;

Выражения

Выражение – конструкция, предназначенная для выполнения вычислений. Выражение состоит из последовательности операций; выполнение этой последовательности операций приводит к появлению единственного значения, имеющего определённый тип.

Операции

Операция – определённое действие, производимое над операндами, в результате выполнения которого появляется единственное значение, имеющее определённый тип.

Операции в языке программирования Pascal характеризуются:

– количеством операндов;

– типами операндов и результата;

– приоритетом.

Унарными называются операции, производимые над одним операндом.

Синтаксис использования унарной операции:

Знак_операции Операнд

Пример:

- 3.44, not false.

Бинарными называют операции, производимые над двумя операндами.

Синтаксис использования бинарной операции:

Операнд1 Знак_операции Операнд2

Пример:

3 + 55, x1 > 2, 5 mod 2.

Приоритет – целое число от 1 (высший приоритет) до 4 (низший приоритет), определяющее очерёдность выполнения операции в выражении.

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

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

В таблице 3 Error: Reference source not foundпредставлены некоторые операции языка.

Таблица 3 – Операции языка

Операция

Типы операндов

Тип результата

Приоритет

Пояснения

1

2

+

ц

ц

ц

3

в

в

в

c

c

c

объединение строк

(’стр’+’.1’ = ’стр.1’)

-

ц

ц

ц

3

в

в

в

*

ц

ц

ц

2

в

в

в

/

в

в

в

2

div

ц

ц

ц

2

деление нацело (5 div 2 = 2)

mod

ц

ц

ц

2

остаток от деления нацело

(5 mod 2 = 1)

<>

*

л

4

>

*

л

4

<

*

л

4

>=

*

л

4

<=

*

л

4

not

л

-

л

1

отрицание

Операнд 1

Результат

true

false

false

true

(not(2>1)=false)

Окончание таблицы 3

Операция

Типы операндов

Тип результата

Приоритет

Пояснения

1

2

and

л

л

л

2

Логическое «И»

Операнд 1

Операнд 2

Результат

false

false

false

true

false

false

false

true

false

true

true

true

((2>1) and (2<4) = true,

(2>1) and (2<0) = false)

or

л

л

л

3

Логическое «ИЛИ»

Операнд 1

Операнд 2

Результат

false

false

false

true

false

true

false

true

true

true

true

true

((2>1) or (2<0) = true,

(2<1) or (2<0) = false)

=

*

л

4

Обозначения в таблице: ц – целочисленный тип, в – вещественный тип,

л – логический тип, с – строковый тип.

Примечание:

* - любой совместимый тип.

Пример:

Определим порядок выполнения операций в выражении:

2.5+10/(2-1)-2*3>5 mod 2

В первую очередь будет вычислено выражение в круглых скобках:

2.5+10/(2-1)-2*3>5 mod 2

2.5+10/1-2*3>5 mod 2

В полученном выражении операции «/», «*» и «mod» имеют одинаковый приоритет, а значит, выполняются в порядке слева-направо:

2.5+10/1-2*3>5 mod 2

2.5+1.0000000000Е+01-2*3>5 mod 2

2.5+1.0000000000Е+01-6>5 mod 2

2.5+1.0000000000Е+01-6>1

Следует обратить внимание на то, что после выполнения операции «10/1» над целыми константами появилось вещественное значение 1.0000000000Е+01 (см. тип результата операции /, табл. 3).

В полученном выражении операции «+», «-» имеют одинаковый приоритет, а значит, выполняются в порядке слева-направо:

2.5+1.0000000000Е+01-6>1

1.2500000000Е+01-6>1

Последней будет выполнена операция сравнения, имеющая 4-й приоритет.

6.5000000000Е+00>1

Результат вычисления выражения:

true.

Соседние файлы в предмете Информатика