Estou tentando arredondar um resultado para 3 casas decimais usando o (%.3f), entretanto ele retorna o valor como se não houvesse o arredondamento.
if (nivelComb < raio){
vol = (1.0/3.0) * Math.PI * Math.pow(nivelComb,2) * (3 *raio - nivelComb);
System.out.printf("%.3f",vol);
}
Com quais valores vc testou? Ou seja, qual o valor das variáveis nivelComb
e raio
?
O que foi impresso e o que deveria ter sido impresso?
O teste foi com os números: 20 , 13 e 15
A saída esperada era : 890.118
E saiu: 890.1188317.890362.330
Tem duas variáveis: nivelComb
e raio
. Qual o valor de cada uma? (Vc me passou 3 valores)
De qualquer forma, testei com nivelComb = 13 e raio = 15, e o resultado foi corretamente formatado com 3 casas decimais: https://ideone.com/s0iOeS
Obrigado era só um erro em outra parte do meu código que estava dando esse problema, mas agradeço pela ajuda, o famoso “o problema estava entre a cadeira e o notebook.”