Какво е нареждане на операциите?

Редът на операциите, наричан също операторско предимство, е набор от правила, определящи кои процедури трябва да се изпълняват първо в математически израз.

Например, в израза "пет добавени към шест, умножени по седем", операторите са добавяне и умножение (пет, шест и седем са операндите). Ако добавянето се извърши първо, резултатът е 77, но ако първо се извърши умножение, резултатът е 47. Редът на операциите диктува, че верният отговор е 47, защото умножението и делението трябва винаги да се извършват преди добавянето и изваждането.

Математически ред на операциите

  1. Скоби, експонати и корени; тогава
  2. Умножение и деление; и тогава
  3. Добавяне и изваждане.

Съвет: Лесен начин да запомните реда на операциите е PEMDAS или „Моля, извинете милата ми леля Сали“.

Компютърно програмиране

В компютърното програмиране повечето езици използват нива на предимство, които са същите като науката и математиката. Някои езици, като Smalltalk и Lisp, изобщо нямат правила за приоритет: програмистът трябва да определи операторите в правилния ред.

В езика за програмиране C се прилагат следните нива на приоритет на оператора, изброени тук в низходящ ред:

Ниво 1 (най-висок приоритет)
оператор:операция:
++увеличение
-снижаване
()Извикване на функция
[]Индексът на масива
,Избор на елемент чрез препратка
->Избор на елемент чрез показалеца
Ниво 2
*умножение
/делене
%Modulo
Ниво 3
+допълнение
-изваждане
Ниво 4
<<Подравнявайте наляво
>>Битова смяна надясно
Ниво 5
<По-малко от
<=По-малко или равно
>По-велик от
> =По-голяма или равна
Ниво 6
==равен
! =Не е равно
Ниво 7
&Побитови И
Ниво 8
^Битово XOR (изключителен или)
Ниво 9
|Побитово OR (включително или)
Ниво 10
&&Логично И
Ниво 11
||Логическо ИЛИ
Ниво 12
?:Ternary условно
Ниво 13
=Директно възлагане
+ =Прехвърляне по сума
- =Задаване чрез разлика
* =Задаване по продукт
/ =Задаване по коефициент
% =Задаване по остатък
<< =Присвояване по бита на ляво изместване
>> =Задаване чрез побитово смяна на дясно
& =Задаване по побитови AND
^ =Присвояване чрез битово XOR
| =Задаване по побитови OR
Ниво 14
,запетая

Оператор, процедура, програмиране, програмни термини