Простые и структурированные операторы. Выражения.

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

Оператор присваивания.

 

Тип значения выражения должен либо совпадать с типом переменной, либо являться преобразуемым к типу переменной. Например, целочисленное значение можно преобразовать к вещественному типу, но не наоборот. Символьное значение можно преобразовать к строковому, но нельзя к целому или вещественному и т.д.

Оператор вывода.

 

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

<Минимальная длина> и <Точность> – целые числа. Если длина значения выражения при выводе на экран будет меньше, чем указанная минимальная длина, то оно будет дополнено слева соответствующим количеством пробелов. Точность задает количество десятичных знаков, которые будут напечатаны при выводе вещественных чисел. Если точность не указана, вещественные числа выводятся в экспоненциальной форме.

Оператор ввода.

Оператор ReadLn вводит с клавиатуры значения указанных в списке переменных. Значения при вводе должны быть разделены пробелами. При несоответствии типов введенных значений с типами переменных выдается сообщение об ошибке.

Составной оператор.

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

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

Условный оператор.

Если значение логического выражения является истинным, происходит выполнение оператора 1. Если же значение логического выражения ложно и присутствует ключевое слово ELSE, выполняется оператор 2. Если значение логического выражения ложно и ключевое слово ELSE отсутствует, то ничего не происходит.

Выражения.

В простейшей форме определение выражения можно сформулировать так: выражениями являются константы и переменные, соединенные между собой знаками операций. В выражениях также можно использовать функции.

Арифметические операции.

Операция

Обозначение

Описание

Сложение

+

Тип результата зависит от типов аргументов: для целых аргументов получается целый результат, а если хотя бы один из аргументов вещественный, результат тоже вещественный
Вычитание

Умножение

*

Деление

/

Результат всегда вещественный, даже если аргументы целые и делятся без остатка, например, 10/2 равно 5.0, а не 5
Целая часть от деления

div

Определены только для целых чисел, результат также целое число, например 13 div 5 = 2, 13 mod 5 = 3

Логические выражения.

Логическими выражениями называются выражения, которые принимают одно из значений логического типа (Boolean): истина (True) или ложь (False). Логические выражения конструируются при помощи логических операций.

Логические операции.

Отношения: =, <>, <, >, <=, >=. Определены для всех скалярных типов, а также для строковых.

Логические связки: NOT (не – отрицание), AND (и), OR (или), XOR (исключающее или). Определены для аргументов логического типа. Рассмотрим действие логических связок при помощи таблиц истинности. При этом будем обозначать истину (True) единицей, а ложь (False) нулем.

A

NOT A

0

1

1

0

A

B

A AND B

A OR B

A XOR B

0

0

0

0

0

0

1

0

1

1

1

0

0

1

1

1

1

1

1

0

Приоритеты операций.

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

Приоритет

Операции

1 (высший) @, not, – (отрицание)
2 *, /, div, mod, and, shl, shr
3 +, – (вычитание), or, xor
4 (низший) =, <>, <, >, <=, >=, in

Важно правильно записывать выражения в соответствии с этой таблицей приоритетов операций. Например, выражение A>0 AND B>0 будет интерпретироваться как (A>(0 AND B))>0, что вызовет ошибку, так как выражение A>(0 AND B) – логического типа, а 0 – числового. В данном случае выражение следует записывать так: (A>0) AND (B>0).

Стандартные математические и арифметические функции.

 

Функция

Описание

Sin(X) Синус угла (углы задаются в радианах)
Cos(X) Косинус угла
Tan(X) Тангенс угла
ArcSin(X) Арксинус – функция, обратная Sin(X). Возвращает угол (в радианах), синус которого равен X
ArcCos(X) Арккосинус угла
ArcTan(X) Арктангенс угла
Abs(X) Модуль X
Sqr(X) Возведение X в квадрат
Sqrt(X) Извлечение квадратного корня из X
Exp(X) Вычисление ex
Ln(X) Вычисление натурального логарифма X
Pi Возвращает число π
Round(X) Округление X до ближайшего целого:Round(1.4) = 1, Round(1.6) = 2
Trunc(X) Отсечение дробной части числа X:Trunc(1.4) = 1, Trunc(1.6) = 1
Frac(X) возвращает дробную часть числа:Frac(15.41) = 0.41

КОММЕНТАРИИ