Faça um programa em Python que o usuário informa o valor da temperatura de um lugar e se aquela temperatura está em graus Celsius, Fahrenheit ou Kelvin. Depois de escolher em qual unidade está transforme o valor nas outras duas. Por exemplo: Se o usuário informar que está em Celsius, apresentar a conversão para Fahrenheit e Kelvin. As fórmulas para conversão você encontra facilmente na Internet.
Passo 1
O programa deve pedir ao usuário o valor numérico da temperatura e a unidade em que esse valor está (Celsius, Fahrenheit ou Kelvin). Em seguida, usar as fórmulas de conversão para calcular as temperaturas nas outras duas unidades.
Passo 2
Ler a temperatura como número de ponto flutuante e ler a unidade em maiúsculas ou minúsculas, padronizando-a para validar corretamente (por exemplo, converter tudo para maiúsculas e aceitar
'C'
, 'F'
ou 'K'
).Passo 3
As fórmulas de conversão envolvidas são:
Passo 4
Implementar a lógica em Python:
- Se a unidade for
'C'
, calcularfahrenheit
ekelvin
com as fórmulas acima. - Se for
'F'
, calcularcelsius
ekelvin
. - Se for
'K'
, calcularcelsius
efahrenheit
. - Caso contrário, avisar que a unidade é inválida.
Resposta
def main():
temp = float(input("Digite o valor da temperatura: "))
unidade = input("Informe a unidade (C, F ou K): ").strip().upper()
if unidade \(==\) "C":
# Celsius para Fahrenheit e Kelvin
fahrenheit = temp * 9/\(5+32\)
kelvin = temp \(+273.15\)
print(f"{temp:.2f} °C equivalem a {fahrenheit:.2f} °F e {kelvin:.2f} K")
elif unidade \(==\) "F":
# Fahrenheit para Celsius e Kelvin
celsius = (temp - 32) * 5/9
kelvin = celsius \(+273.15\)
print(f"{temp:.2f} °F equivalem a {celsius:.2f} °C e {kelvin:.2f} K")
elif unidade \(==\) "K":
# Kelvin para Celsius e Fahrenheit
celsius = temp - 273.15
fahrenheit = celsius * 9/\(5+32\)
print(f"{temp:.2f} K equivalem a {celsius:.2f} °C e {fahrenheit:.2f} °F")
else:
print("Unidade inválida. Use 'C' para Celsius, 'F' para Fahrenheit ou 'K' para Kelvin.")
if __name__ \(==\) "__main__":
main()