![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Пример:
3 + 55, x1 > 2, 5 mod 2.
Приоритет – целое число от 1 (высший приоритет) до 4 (низший приоритет), определяющее очерёдность выполнения операции в выражении.
Операции с высоким приоритетом выполняются раньше, чем операции, имеющие более низкий приоритет. Операции с одинаковым приоритетом при вычислении выражения выполняются в порядке слева-направо.
Выражение, заключённое в круглые скобки, имеет наивысший приоритет, т. е. вычисляется в первую очередь.
В таблице 3 представлены некоторые операции языка.
Таблица 3 – Операции языка
Операция | Типы операндов | Тип результата | Приоритет | Пояснения | |||||||
+ | ц | ц | ц | ||||||||
в | в | в | |||||||||
c | c | c | объединение строк (’стр’+’.1’ = ’стр.1’) | ||||||||
- | ц | ц | ц | ||||||||
в | в | в | |||||||||
* | ц | ц | ц | ||||||||
в | в | в | |||||||||
/ | в | в | в | ||||||||
div | ц | ц | ц | деление нацело (5 div 2 = 2) | |||||||
mod | ц | ц | ц | остаток от деления нацело (5 mod 2 = 1) | |||||||
<> | * | л | |||||||||
> | * | л | |||||||||
< | * | л | |||||||||
>= | * | л | |||||||||
<= | * | л | |||||||||
not | л | - | л | отрицание
(not(2>1)=false) |
Окончание таблицы 3
Операция | Типы операндов | Тип результата | Приоритет | Пояснения | ||||||||||||||||
and | л | л | л | Логическое «И»
((2>1) and (2<4) = true, (2>1) and (2<0) = false) | ||||||||||||||||
or | л | л | л | Логическое «ИЛИ»
((2>1) or (2<0) = true, (2<1) or (2<0) = false) | ||||||||||||||||
= | * | л |
Обозначения в таблице: ц – целочисленный тип, в – вещественный тип,
л – логический тип, с – строковый тип.
Примечание:
* - любой совместимый тип.
Пример:
Определим порядок выполнения операций в выражении:
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.
Дата публикования: 2014-11-26; Прочитано: 250 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!