Оператор (програмування)

Опера́тор (англ. operator) — спеціальний символ, який повідомляє транслятору про те, що потрібно виконати операцію з деякими операндами (наприклад, +, -, %, << тощо). Зазвичай, мови програмування мають набір операторів, подібних до операторів у математиці: в певному розумінні, оператори є спеціальними функціями. Окрім арифметичних, оператори можуть виконувати операції на логічних значеннях, з рядками та перевірки рівності двох значень. На відміну від функцій, оператори є базовими діями мови програмування, їх позначення коротші та містять спеціальні символи.

ТермінРедагувати

Інколи під оператором розуміють операцію, хоча правильніше, казати, що оператор вказує на те, яку операцію потрібно здійснити. Також часто в українській технічній літературі операторами називають окремі види інструкцій, такі як цикли й умовні інструкції. Ця плутанина виникла через хибний переклад частиною перекладачів англ. statement — «інструкція» як «оператор». Цьому також сприяли відмінності в термінології різних мов програмування, особливо ранніх. Тому в українських і російських джерелах можна зустріти, наприклад, переклад if-statement як інструкція if[1] і як оператор-if[2] (див. детальніше: Інструкція (програмування)).

ОпераціїРедагувати

Операція в програмуванні визначає дію, що виконується над операндами. Залежно від кількості операндів операції діляться на унарні та бінарні.

Унарні операції містять лише один операнд: -5 (операція зміни знаку); not false (операція «логічне НЕ»).

Бінарні операції містять два операнди: 5 + 3 (операція додавання); 5 < 4 (операція «менше»)

Існує також один тернарний оператор: ?:.

Класифікація операційРедагувати

Арифметичні[3]:

Оператор Операція Оператор Операція
+ Додавання += Додавання з присвоєнням
- віднімання (також унарний мінус) -= Віднімання з присвоєнням
* Множення * = Множення з присвоєнням
/ Ділення /= Ділення з присвоєнням
% Ділення по модулю %= Ділення по модулю з присвоєнням
++ Інкремент (збільшення на 1) -- Декремент (зменшення на 1)
унарні +, -, ++, --
бінарні +, -, *, /, %

Відношення:

<, >, <=, >=, !=, ==

Логічні

!, &&, ||

Умовна операція

? :

Побітові операції:

!, &, |


Операторні схеми алгоритмівРедагувати

Для зображення операторних схем алгоритмів, зазвичай користуються арифметичними та логічними операторами.

Арифметичні оператори здійснюють обчислення. Принциповою властивістю будь-якого арифметичного оператора є те, що після виконання зображеним ним операцій, незалежно від результатів розрахунку, здійснюється перехід до наступного оператора. Тобто після виконання операцій, передбачених арифметичним оператором, процес обчислень може бути продовжений по одному шляху, незалежно від результатів, які видає (повертає) даний оператор.

Логічні оператори призначені для перевірення справедливості заданих умов й вироблення ознак, які позначають результат перевірки. У найпростішому випадку перевірка заданої умови може буде зведена до порівняння двох чисел. Таким чином, двом порівнюваним змінним,   , ставиться у відповідність ознака  , яка позначає результат порівняння (true / false). Наприклад, для   оператор   Характерною ознакою логічних операторів (на відміну від арифметичних) є те, що після реалізації логічного оператора управління передається одному з двох операторів алгоритму (розгалуження), в залежності від значення ознаки, яка виробляється даним логічним оператором. Іншими словами, напрямок продовження процесу обчислень залежить від результатів обчислень, а саме від значення ознаки, яке виробляється даним логічним оператором.

У операторних схемах алгоритмів логічні оператори позначаються символом   із вказанням номера оператора, наприклад,   Арифметичні оператори позначаються символом   як і логічні, із порядковим номером (індексом).

Якщо від одного оператора управління передається іншому, то до символа, який позначає даний оператор, приписується згори номер того оператора, якому передається управління. Наприклад, запис   значить, що від оператора   управління передається оператору №7.

Для зображення передачі управління від логічних операторів використовуються інші позначення. У операторних схемах символ логічного оператора, від якого передається управління, наділяється стрілками із номерами операторів, яким передається управління. Стрілка, поставлена праворуч від символу логічного оператора, позначає напрямок передачі управління у випадку, коли умова, яка перевіряється даним логічним оператором, виконана. Так само стрілка, поставлена праворуч знизу від символа логічного оператора, позначає напрямок передачі управління для випадку, коли умова, яка перевіряється даним логічним оператором, не виконується. Наприклад,   позначає, що від оператора   управління потрібно передати оператору №4, якщо умова, яка перевіряється  , виконана, або ж оператору № 7, якщо не виконана.


Див. такожРедагувати

ПриміткиРедагувати

  1. [1] Архівовано 9 червень 2011 у Wayback Machine. (укр.)
  2. Оператори розгалуження та цикли у C#. Архівовано 17 листопад 2011 у Wayback Machine.(укр.)
  3. Використовуються позначення мови Сі