Precedência Geral dos Operadores Aritméticos

Quando uma expressão aritmética precisa ser avaliada num algoritmo, o analisador processa a expressão dando prioridade para certos operadores. As sub-expressões que contém estes operadores serão avaliadas primeiro e seu valor substituído pela sub-expressão inteira. A seguir a próxima sub-expressão na ordem é avaliada e assim por diante até que toda a expressão corresponda a um só valor. A Tabela 4.2 mostra a ordem de prioridade na avaliação dos operadores numa expressão aritmética, chamada de precedência de operadores.


Tabela 4.2: Precedência Geral de Operadores Aritméticos
Ordem Operação Símbolo
$ 1^{\rm\underline{a}}$ Parênteses ()
$ 2^{\rm\underline{a}}$ Potenciação **
$ 3^{\rm\underline{a}}$ Multiplicação, Divisão, Resto e Divisão Inteira *, /, mod, div
$ 4^{\rm\underline{a}}$ Adição, Subtração +, -
   


Conforme a tabela, as primeiras sub-expressões a serem resolvidas serão os parênteses mais internos, depois as potências, depois as multiplicações e divisões, e assim por diante. A maneira de alterar a ordem de execução das operações numa expressão aritmética é através de parênteses, sendo que eles são executados antes de tudo, a partir dos mais internos para os mais externos.

Por exemplo, considere a seguinte expressão aritmética:

  (5+3)**2 * (5-2) + 8 
    8**2   *   3   + 8
     64    *   3   + 8
          192      + 8 
              200
A mesma é avaliada pelo computador da seguinte maneira: primeiro os parênteses mais internos são avaliados, depois a potenciação4.1, depois a multiplicação e depois a soma. Se ignorássemos a precedência dos operadores (ou dos parênteses) teríamos um resultado completamente diferente e consequentemente errado.

Vejamos agora um exemplo de uma expressão que contém apenas variáveis (cujos valores ainda não foram informados):

$\displaystyle (x+y)/((2*y+(z-w)).
$

A expressão será executada na seguinte ordem:
  1. $ ( x + y)$ ;
  2. $ (z - w)$
  3. $ 2*y$
  4. adição do resultado de 2. com o resultado de 3.
  5. divisão do resultado de 1. com o resultado de 4.

root 2009-03-12