Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

ex 04

public class ConversaoTemperatura {
    public static void main(String[] args) {
       double celsius = 31.5;
       double fahrenheit = (celsius * 9/ 5) + 32;
        System.out.printf("A temperatura de celsius convertida em Fahrenheit é %.1f", fahrenheit);
    }
}

1 resposta

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?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!