Excel и Access — страница 18

  • Просмотров 12732
  • Скачиваний 476
  • Размер файла 98
    Кб

Арифметические и логические выражения Help определяет выражение так. “Любая комбинация операторов, констант, значений текстовых констант, функций, имен полей, элементов управления или свойств, результатом которой является конкретное значение.” Нас такое определение не устраивает. Оно не конструктивно. Мы хотели бы, чтобы по виду текста можно было бы узнать, является ли оно выражением. А как узнать, является ли результатом

данной комбинации “конкретное значение”? Попробуем найти более конструктивное определение. Чтобы не загромождать изложение непринципиальными деталями, мы ограничимся случаем, когда в таблице все атрибуты – числовые (т.е. в клетках таблицы могут стоять только числа). Как арифметические, так и логические выражения строятся из неких “кирпичей” с помощью определенного набора операций. В случае арифметических выражений

“кирпичами” служат числа и атрибуты (других “кирпичей” мы для простоты не рассматриваем), а соединяют их обычные арифметические операции. Формально арифметические выражения определяются так. 1.      Всякое число или атрибут есть арифметическое выражение. Если А и В - арифметические выражения, то выражения (А+В), (А-В), (А*В), (А/В) и (А**В) тоже являются арифметическими. Символы +, -, *, / и ** интерпретируются, соответственно,

как операции сложения, вычитания, умножения, деления и возведения в степень. Вот примеры арифметических выражений: 7, х, 2+2, 2*(х+3). Имея формальное определение, мы можем доказать, что, скажем, выражение 2*(х+3) является арифметическим. Действительно, согласно правилу 1, выражения х и 3 являются арифметическими. Отсюда, по правилу 2, следует, что выражение (х+3) тоже является арифметическим. По правилу 1, выражение 2 – арифметическое. Значит,

по правилу 2, и выражение 2*(х+3) - арифметическое. В этом смысле приведенное определение конструктивно. Переходим к определению логических выражений. Мы будем считать, что “кирпичи” логических выражений имеют вид хq Т, где х – атрибут, Т – арифметическое выражение, а q - один из символов сравнения: = (равно), <> (не равно), < (меньше) или > (больше). Соединяются они при помощи логических операций AND, OR и NOT. Как и для арифметических

выражений, мы хотим дать формальное определение. Сначала определим простейшие логические выражения, или атомы. Определение 1. Пусть х – атрибут, Т – арифметическое выражение. Тогда выражения х=Т, х<>Т, х<Т и х>Т являются атомами. Теперь можно формально определить логические выражения. Мы будем обозначать их большими латинскими буквами. Определение 2. 1.      Всякий атом есть логическое выражение. Если Х и У -