Existem algumas escalas de temperatura diferentes em uso em todo o mundo . Quando duas fontes diferentes estão usando diferentes escalas, torna-se necessário entender como converter entre os dois. Trata-se de um pouco de aritmética para a frente , mas não necessariamente o tipo que mais manter na memória. É apenas uma questão de inserir essas fórmulas em um programa de computador, que pode cuidar do trabalho para o usuário. Conversões de temperatura
Considere três escalas de temperatura diferentes: Fahrenheit , Celsius e Kelvin. Os valores de cada escala são capazes converter entre si por meio de multiplicação e divisão :
Celsius = ( 5/9 ) * ( Fahrenheit - 32 )
Fahrenheit = ( 9/5 ) * ( Celsius + 32)
Kelvin = Celsius + 273
Através destas três equações , qualquer valor de temperatura pode ser calculada a partir de outro.
código C + + e Usuário entrada
o programador deve considerar a entrada do usuário : o usuário deve inserir um valor, eo tipo de escala de temperatura usada. Além disso, o usuário deve especificar quais unidades o valor deve converter para :
caractere continuar = ' Y' ;
while ( continuar 'Y' ==) {
int temp;
caractere in_unit , out_unit ;
cout << " Digite a temperatura: " << endl;
cin >> temp;
cout << "Digite o tipo de unidade ( C , F, K): " << endl;
cin >> in_unit ;
cout << "Entre as unidades de converter para ( C , F, K): " << endl;
cin >> out_unit ;
< br > Convertendo casos diferentes
Depois que o usuário entra em uma temperatura e as unidades para converter, é uma questão de conversão matemática. Cada conversão pode ser uma função :
int getCelsiusfromFahrenheit (int temp)
{return ((5 /9) * (temperatura -32 ) );}
int getFahrenheitfromCelsius (int temp)
{return ( (9/5) * (temperatura + 32) );} .
Calculando Kelvin é apenas uma questão de tomar o valor Celsius e adicionando 273 < br >
All Together
Depois de obter a entrada do usuário , e definir as funções de conversão , o programador pode , em seguida, converter os valores (usando um switch ):
interruptor ( in_unit ) :
{
case ' C' :
if ( out_unit == ' F ')
{ cout << getFahrenheitfromCelsius ( temp) ;}
mais
{ cout << temperatura + 273 ;}
break;
caso
'F' : < br >
int cTemp = getCelsiusfromFahrenheit ( temp) ;
if ( out_unit == ' C ')
{ cout << cTemp ;}
mais
{ cout << cTemp + 273 ;}
break;
caso
'K' :
int cTemp = temperatura + 273 ; < br >
if ( out_unit == ' F ')
{ cout << getFahrenheitfromCelsius ( cTemp );}
mais
{ cout << cTemp ;}
break;
}