Convertitore di temperatura in C ++ Utilizzo delle funzioni

February 7

Convertitore di temperatura in C ++ Utilizzo delle funzioni


Ci sono alcune scale di temperatura differenti in uso in tutto il mondo. Quando due fonti diverse utilizzano differenti scale, diventa necessario capire come convertire tra i due. Questo comporta qualche aritmetica dritto in avanti, ma non necessariamente del tipo che più tenere in memoria. E 'solo una questione di entrare queste formule in un programma di computer, che può prendersi cura del lavoro per l'utente.

Conversioni di temperatura

Consideriamo tre diverse scale di temperatura: Fahrenheit, Celsius e Kelvin. I valori di ciascuna scala sono convertire grado tra loro mediante moltiplicazione e divisione:

Celsius = (5/9) * (Fahrenheit - 32)

Fahrenheit = (9/5) * (C + 32)

Kelvin = Celsius + 273

Attraverso queste tre equazioni, qualsiasi valore di temperatura può essere calcolato da un altro.

Codice C ++ e l'input dell'utente

Il programmatore deve prendere in considerazione l'input dell'utente: l'utente deve inserire un valore, e il tipo di scala di temperatura utilizzato. Inoltre, l'utente deve specificare quali unità il valore dovrebbe convertire:

char continuano = 'Y';

mentre (continua == 'Y') {

int temperatura;

in_unit char, OUT_UNIT;

cout << "Inserire la temperatura:" << endl;

cin >> temperatura;

cout << "Inserire il tipo di unità (C, F, K):" << endl;

cin >> in_unit;

cout << "Inserire le unità da convertire in (C, F, K):" << endl;

cin >> OUT_UNIT;

Conversione diversi casi

Dopo l'utente immette una temperatura e le unità da convertire, è una questione di conversione matematica. Ogni conversione può essere una funzione:

int getCelsiusfromFahrenheit (int temp)

{Return ((5/9) * (temperatura -32));}

int getFahrenheitfromCelsius (int temp)

{Return ((9/5) * (temp + 32));}

Calcolo Kelvin è solo una questione di prendere il valore Celsius e l'aggiunta di 273.

Tutti insieme

Dopo aver ottenuto l'input dell'utente, e definire le funzioni di conversione, il programmatore può quindi convertire i valori (utilizzando un'istruzione switch):

passare (in_unit):

{

caso 'C':

if (OUT_UNIT == 'F')

{Cout << getFahrenheitfromCelsius (temp);}

altro

{Cout << temperatura + 273;}

rompere;

caso 'F':

int ctemp = getCelsiusfromFahrenheit (temp);

if (OUT_UNIT == 'C')

{Cout << ctemp;}

altro

{Cout << ctemp + 273;}

rompere;

caso 'K':

int ctemp = temperatura + 273;

if (OUT_UNIT == 'F')

{Cout << getFahrenheitfromCelsius (ctemp);}

altro

{Cout << ctemp;}

rompere;

}