В состав выражений в языке программирования Delphi входят операнды и операторы. Операторы, заключенные между операндами, подразумевают действия, выполняющиеся над операндами. Операндами выражения могут выступать константы, переменные, функции или другие выражения. Представим перечень основных алгебраических операторов (табл. ниже).
Когда программист записывает какое-либо выражение между операндами и операторами, то пробел можно опустить во всех случаях, кроме операторов DIV и MOD.
Пример 1.
b:=a+c;
b:=a-c;
b:=a*c;
b:=a/c;
b:=a DIV c;
b:=a MOD c;
Не будем останавливаться на операторах +, -, * и /, поскольку результат их применения вполне очевиден. При использовании оператора DIV получают целую часть результирующего числа b, полученного от деления числа a на число c. К примеру, результатом выражения 13 DIV 10 равно 1. При использовании оператора MOD в результате получается остаток b от деления числа a на число b. Например, результатом соотношения 13 MOD 10 является число 3.
Самый простой вид выражения представляется константой или же переменной.
Пример 2.
a:=455.29*i+54;
n:=m-(sum*(c1+c2+c3)/(4*sred DIV 50));
В процессе вычисления значений выражений необходимо помнить, что операторы обладают разным приоритетом. К примеру, операторы *, /, DIV, MOD выполняются вначале, и лишь потом действуют операторы +, -. То есть, от приоритета операторов непосредственно зависит, в каком порядке они будут выполняться. Чем выше приоритет оператора, тем раньше других операторов он выполняется. В случае, когда операторы обладают одним и тем же приоритетом, то вначале выполняется оператор, находящийся левее других операторов с одинаковым приоритетом.
Чтобы задать нужный порядок выполнения операций в необходимом выражении, обычно используют круглые скобки.
Пример 3.
a:=(b1+b2)/(m*x*x+n*x*c);
Выражение в скобках выступает в качестве одного операнда, а это значит, что операции над операндами, находящимися внутри скобок, будут выполняться в привычном порядке раньше, чем те же операции, производящимися над операндами, но за скобками.
В процессе составления выражений, которые содержат скобки, необходимо учитывать парность скобок, другими словами, соблюдать следующее правило: число открывающихся и закрывающихся скобок должно быть одинаково. При нарушении этого правила возникает синтаксическая ошибка, поэтому будьте предельно внимательны!
Тип выражения соответствую типу операндов, составляющих выражения, но в то же время, тип выражения зависит и от операций, которые выполняются над операндами.
Пример 4.
. . .
a:=4;
c:=15;
b:=a+c;
. . .
В приведенном примере оба операнда a и c являются целыми числами. Тогда результат b тоже будет целого типа.
Если один из операндов представляет собой дробное число, а другой операнд, например является числом целого типа, то результат представится все же дробным числом. Это выполняется и в том случае, когда дробная часть числа или конечного значения выражения приравнена нулю.
Заметка. Необходимо обладать навыками определения типа любого выражения. Определяя тип выражения, имейте в виду, что вид константы определяет ее тип, в то время как, тип переменной программист задает в разделе var. Например, целым типом integer обладают константы вида: 1, 54, -683. Тогда как константы 2.0, 0.65 и 5.4Е-07 имеют вещественный тип real.
Для наглядности и запоминания в таблице ниже представлены правила, по которым Вы сможете определить тип выражения, руководствуясь типом операндов и видом оператора:










Комментариев нет:
Отправить комментарий