How to convert between Fahrenheit, Celsius, and Kelvin in C++

1 Answer

0 votes
#include <iostream>

void TemperatureConvert(float temperature, char unit_type, float results[2]) {
    switch(unit_type) {
        case 'c':
            results[0] = ((9.0 / 5.0) * temperature) + 32; // Fahrenheit
            results[1] = (temperature + 273.15); // Kelvin
            break;
        case 'f':
            results[0] = (temperature - 32) / 1.8; // Celsius
            results[1] = (temperature - 32) * 5 / 9.0 + 273.15; // Kelvin
            break;
        case 'k':
             results[0] = (temperature - 273.15 ); // Celsius
             results[1] = (((9.0 / 5.0) * temperature) - 459.67); // Fahrenheit
             break;
        default:
             results[0] = results[1] = 0; 
    }
} 
 
int main(void) {
    float result[2];

    TemperatureConvert(24, 'c', result);
    std::cout << "Fahrenheit is " << result[0] << " degrees\n" << 
                 "Kelvin     is " << result[1] << " degrees\n\n";
                 
    TemperatureConvert(3, 'f', result);
    std::cout << "Celsius is " << result[0] << " degrees\n" << 
                 "Kelvin  is " << result[1] << " degrees\n\n";
    
    TemperatureConvert(3, 'k', result);
    std::cout << "Celsius    is " << result[0] << " degrees\n" << 
                 "Fahrenheit is " << result[1] << " degrees\n\n";
}


 
/*
run:
   
Fahrenheit is 75.2 degrees
Kelvin     is 297.15 degrees

Celsius is -16.1111 degrees
Kelvin  is 257.039 degrees

Celsius    is -270.15 degrees
Fahrenheit is -454.27 degrees
  
*/

 



answered Dec 14, 2024 by avibootz

Related questions

1 answer 109 views
1 answer 111 views
1 answer 121 views
1 answer 110 views
1 answer 101 views
1 answer 93 views
1 answer 96 views
...