2 + 6 – 3 / 7 x 9 dá 8, mas por que?
Existe uma coisa chamada de “ordem de precedência” ou “precedência de operadores” que se você pesquisar à respeito vai perceber que há uma ordem em que o cálculo é realizado, não é exclusividade do Java este comportamento, isso é uma regra matemática.
Então segui isso e nada de dar 8.
Vc tá achando estranho que não deu um número com virgula?
Se for isso, é porque, em Java, quando vc divide um número inteiro por outro número inteiro, o resultado é um número inteiro também.
Então, 3 / 7
vai dar 0.
System.out.println(3 / 7);
A menos que vc faça um casting.
System.out.println((double) 3 / 7);
Ou que um dos operandos seja float
ou double
.
System.out.println(3f / 7); // 3 é float
// ou
System.out.println(3.0 / 7); // 3 é double
2 curtidas
A então é por causa de 2 + 6 que é 8 e 0,0476190476190476 não conta?
Isto mesmo.
3/7*9
é zero.
Então 2+6-0 = 8
.
1 curtida