Лекция: Операторы и операции

Выражение – комбинация операндов и операций, задающая порядок вычисления некоторого значения.

Операнд в простейшем случае является константой или идентификатором. В общем случае каждый операнд выражения также представляет собой выражение, имеющее некоторое значение.

Операции определяют действия, выполняемые над операндами. Возвращают некоторое значение.

Оператор -это некоторая конструкция, присущая данному конкретному языку, изменяющая состояние памяти компьютера, но ничего не возвращающая.

 

Замечание: Не стоит путать два таких понятия как оператор и операция. Главное их отличие состоит в том, что операция возвращает значение, а оператор нет.

Оператор присваивания предписывает вычисление выражения, находящегося правее знака (=) и присвоение полученного значения переменной, находящейся левее оператора присваивания. Пример:

 

‘ Вычисляется значение арифметического выражения a+b и результат помещается в x

x=a+b

Переменная и выражение должны быть совместимы по типу. В данном примере, переменные x, a и b должны быть числами, в противном случае при исполнении данного оператора возникнет ошибка о несоответствии типа.

 

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

 

Операции конкатенации:

В VBScript используются такие операции конкатенации строк, как + и &

Пример использования:

 

n=300 ‘ присваиваем переменной значение 300

‘ Функция CStr преобразует числовое значение переменной n в строковое, которое

‘можно сложить с другой строкой, а результат присвоить переменной s

s=CStr(n)+" лет Санкт-Петербургу!!!"

msgbox s ‘ выводим в диалоговом окне значение строки s

Конкатенация строк при помощи операции + не самая хорошая практика. Операция + складывает два операнда (если последние – строки, происходит операция конкатенации). Лучший подход – объединить строки при помощи операции &, так как при объединении операцией & двух значений разного формата VBScript автоматически преобразует типы без использования функции CSrc. Пример:

 

n=300

s=n&" лет Санкт-Петербургу!!!" ‘ Ошибка типов в данном примере не возникнет

msgbox s

Арифметические операции возвращают переменной числовое значение. Примеры арифметических операций приведены в Таблице 5:

Таблица 5 – Примеры арифметических операций

Операция Описание Пример
^ Возведение в степень x=y^показатель
+ Сложение x=a+b
Вычитание или знак отрицательного числа x=-30 или x=a-50
* Умножение x=a*40
/ Деление x=a/b
\ Целочисленное деление x=a\b
Mod Остаток от деления x=a Mod b

Логические операции возвращают переменной значение типа Bool. Примеры логических операций приведены в Таблице 6:

 

 

Таблица 6 – Примеры логических операций

Операция Описание Пример
Not НЕ x=Not y
And И x=a And b
Or ИЛИ x=a Or b
Xor Исключающее ИЛИ x=a Xor b
Eqv Эквивалентность x=a Eqv b
Imp Импликация x=a Imp b

Операции сравнения служат для сравнения выражений (в которых могут быть числа, строки и т.д.). Смотри Таблицу 7.

 

Таблица 7 – Перечень операций сравнения

Операция Описание Пример
= Равно a=b
<= Меньше или равно a<=b
>= Больше или равно a>=b
<> Не равно a<>b

Приоритет операций:

При вычислении значений выражений, состоящих из нескольких операций, синтаксический анализатор VBScript использует старшинство операций, которое приведено в Таблице 8. Чем меньше номер, тем больше приоритет.

 

Таблица 8 – Старшинство операций

Операторы Номер
^ (возведение в степень)
— (знак отрицательного числа)
*
/
\
Mod (остаток от деления)
+ (сложение)
— (вычитание)
+ (конкатенация)
& (конкатенация)
=, >,<, >=, <=, <>
And
Or
Xor
Eqv
Imp

 

Замечание: приоритет у операций одинаков, они выполняются по порядку слева направо.

 

Некоторые встроенные функции приведены в таблице 9:

Таблица 9 – Некоторые встроенные функции

Функция Пример использования Возвращённое значение Описание
Abs(x) a= Abs(-12,08) 12,08 Абсолютное значение числа
Asc(x) a= Asc(“s”) ASCI код символа
Chr(x) a=Chr(115) s Символ, соответствующий коду
Fix(x) a= Fix(-2.9) -2 Округление до целого
Int(x) a=Int(-3.1) -4 Округление до целого
Hex(x) a=Hex(543) 21F Шестнадцатеричное представление
Oct(x) a=Oct(543) Восьмеричное представление
Sgn(x) a=Sgn(-1.5) -1 Знак числа
Date a=Date 11.04.2003 Текущая дата
Time a=Time 14:03:42 Текущее время
Now a=Now 11.04.2003 14:03:42 Текущие дата и время
Atn(x) a=Atn(0.5) 0,463647… Арктангенс числа
Tan(x) a=Tan(0.5) 0,5463024… Тангенс числа
Cos(x) a=Cos(15) -0,759687… Косинус числа
Sin(x) a=Sin(15) 0,6502878… Синус числа
Exp(x) a= Exp(0.37) 1,447734 Экспонента
Log(x) a= Log(2.7) 0,993251… Натуральный логарифм
Sqr(x) a= Sqr(1024) Квадратный корень
Rnd(x) a= Rnd(1) 0,34800238… Случайное число 0..1
Randomize Randomize   Установка генератора случайных чисел в новое исходное положен ие состояние в зависимости от текущего времени

Замечание: если аргументом функции является десятичное число, то десятичная часть отделяется от целой при помощи символа точка (.)

еще рефераты
Еще работы по информатике