Oi, João! Tudo bem?
Que legal ver sua conversão de temperatura funcionando, transformando graus Celsius em Fahrenheit com a fórmula clássica. O seu código tá correto e o resultado sai como 88,7, exatamente o esperado para os 31.5 graus que você definiu.
Vale destacar um detalhe da sua expressão que rende um bom aprendizado sobre precedência de operadores. Em (celsius * 9 / 5), o Java resolve da esquerda para a direita: primeiro multiplica 31.5 por 9, e como celsius é double, o resultado já vira decimal antes da divisão por 5. Se a ordem fosse 9 / 5 * celsius, a conta 9 / 5 seria uma divisão inteira entre dois números literais inteiros, resultando em 1 e bagunçando todo o cálculo.
Uma dica para se proteger disso: escreva os literais da fórmula em formato decimal, assim double fahrenheit = celsius * 9.0 / 5.0 + 32;, garantindo o comportamento correto independentemente da ordem. Aproveite também para acrescentar %n ao final do printf e pra citar o valor original na mensagem, como em System.out.printf("%.1f graus Celsius equivalem a %.1f Fahrenheit%n", celsius, fahrenheit);.
Exemplo:
public class ConversaoTemperatura {
public static void main(String[] args) {
double celsius = 31.5;
double fahrenheit = celsius * 9.0 / 5.0 + 32;
System.out.printf("%.1f graus Celsius equivalem a %.1f Fahrenheit%n", celsius, fahrenheit);
}
}
Como você escreveria o caminho inverso, convertendo um valor em Fahrenheit de volta para Celsius?
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!