^^Espressione con operatori con priorita'.

The archetypal examples of operator expressions are arithmetic expressions:

2+(3*4)
2+3*4
2^3^-4*5/6

In Western mathematics arithmetic expressions have been read according to

traditional ideas of associativity and precedence

Operator associates
^    exponentiation right
* /  multiplication, division   left
* -  addition, subtraction left

precedence

Parentheses, when present, override the traditional associativity and precedence.

ref: Parsing timeline. Arithmetic expression parsing 1949.

Attenzione ! esponenziazione equivoca

2^2^3 = 2^(2^3)   Python: associa a destra

2^2^3 = (2^2)^3   Foglio di calcolo: associa a sinistra

Esponenziare non e' associativo

2^2^3

= (2^2)^3 = 4*3 = 64   secondo la regola "^ associa a sinistra"

= 2^(2^3) = 2^8 =256  secondo la regola "^ associa a destra.

In Python l'esponenziazione e' associativa a dx

2^2^3 = 2^(2^3) .

Links

  1. Parsing (a string of a language)
  2. Archetypal example meaning.
  3. johndcook/visualizing-c-precedence

Talk

Titolo

  1. Priorita' operazioni e operatori nelle espressioni
    c: ori
  2. Espressione con priorita' degli operatori.
    Espressione con priorita' (degli operatori).
    Espressione con operatori con priorita'.
    c: 5-4-2022.