Ordem das operações matemáticas comutativas
Eu tenho uma pergunta curiosa (perguntando eu mesma durante a leitura de um código bruto). Vamos olhar para a expressão:
double a = c*d*e*2/3*f;
onde c, d, e, f são variáveis inicializadas do tipodouble
. A norma garante que seria tratada comoc*d*e*2
(resultado duplo) dividido por3
e multiplicado porf
(ou algum comportamento semelhante). Obviamente, 2/3 sendo calculado como 0 é indesejável.
Qual parágrafo do padrão define isso?