Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
delphi.docx
Скачиваний:
27
Добавлен:
03.03.2015
Размер:
116.59 Кб
Скачать

5. Порядок действий в арифметических выражениях.

Порядок действий в арифметических выражениях следующий:

  1. Вычисление функций;

  2. Операции * / div mod в порядке следования слева направо;

  3. Операции + - в порядке следования слева направо.

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

Таблица 2.3. Примеры.

Математическое выражение

Арифметическое выражение на языке Object Pascal

a+

a+(b+sin(a*x+d))/(c+f+(x+1)/a)

x+

x+(x+1)/x/(x-2)

acosy+arctg

a*cos(y)+arctan((x-1)/(x+1))

(i+1) / 2 (i – целая переменная)

(i+1) div 2

6. Оператор присваивания и его динамический смысл.Комментарии.

Этот оператор присваивает переменной значение выражения, стоящего справа от знака присваивания. Знак присваивания – это пара символов “:=”, пробелы и другие символы между которыми не допускаются. Типы переменных и выражений должны совпадать. Из этого правила есть одно исключение: вещественной переменной может быть присвоено значение выражения целого типа.

Примеры:

a:=c+5; i:=j+1

Нельзя целой переменной присвоить вещественное значение. Так, если переменная i – целого типа, то оператор i:=5. ошибочен.

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

Например, оператор a:=a+1; увеличивает значение переменной a на единицу, но если рассматривать это равенство с математической точки зрения, то оно просто неверно.

    1. Комментарии.

Набор символов, находящихся в одной строке за символами //, идущими подряд, игнорируются транслятором и служат для пояснений к программе, т.е. являются комментарием. Комментарием также служит набор символов, обрамленных символами { и }. И, наконец, комментарием является набор символов, заключенных между парами символов (* и *) .

Примеры: // это комментарий

{это тоже комментарий}

(* это опять таки комментарий*)

7. Логические выражения. Логические операции. Таблица истинности логических операций. Порядок действий в логических выражениях.

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

3.1.2. Логические переменные.

Они объявляются в разделе переменных var, и для их объявления используется описатель boolean (см. выше).

Пример объявления: p, q, omega:boolean;

Логические переменные принимают одно из значений true или false.

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

Простые логические выражения-отношения (сравнения).

В отношениях сравниваются два арифметических выражения, и вырабатывается логическое значение true, если отношение истинно и false, если оно ложно.

Таблица 3.1. Знаки отношений.

Математическая запись

Знак отношения в Object Pascal

<

<

<=

=

=

>

>

>=

<>

Здесь два значка пишутся без пробелов и воспринимаются как единое целое.

В отношениях могут использоваться арифметические выражения.

Примеры:

a<b+5; c<d.

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

Логические операции используют в качестве операндов логические выражения.

Мы рассматриваем следующие логические операции: not, and, or.

В приведенной ниже таблице истинности логических операций a означает первое логическое выражение, b - второе логическое выражение.

Операция not одноместная (один операнд) остальные двухместные (два операнда).

Таблица 3.2. Таблица истинности логических операций.

а

b

not a

a and b

a or b

true

true

false

true

true

true

false

false

false

true

false

true

true

false

true

false

false

true

false

false

Операция not изменяет значение выражения на противоположное.

Операция and истинна только тогда, когда оба операнда истинны, иначе она ложна.

Операция or ложна только тогда, когда оба операнда ложны, иначе она истинна.

Для чего нужны логические операции?

Написать логическое выражение, которое истинно, если переменная x попадает в область 1<x<5. Двойные отношения в Object Pascal запрещены, поэтому

Ответ: (x>1) and (x<5).

Написать логическое выражение, которое истинно, если x>5 или x<-3.

Ответ:(x>5) or (x<-3).

Скобки нужны из-за особого порядка действий в Object Pascal (см. ниже).

3.1.5. Порядок действий в логических выражениях.

  1. Вычисление функций;

  2. Операция not;

  3. Операции типа умножения * / div mod and;

  4. Операции типа сложения + - or ;

  5. Операции отношения (см. табл. 2.3).

Примеры логических выражений:

a<b; (c+d>0)or(a>b).

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

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

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