fork download
  1. #include <iostream>
  2. #include <iomanip> // For fixed and setprecision
  3.  
  4. using namespace std;
  5.  
  6. namespace CelsiusSpace {
  7. double ConvertToKelvin(double celsius) {
  8. if (celsius < -273.15) {
  9. cout << "Error!" << endl;
  10. return -1;
  11. }
  12. return celsius + 273.15;
  13. }
  14. }
  15.  
  16. namespace FahrenheitSpace {
  17. double ConvertToKelvin(double fahrenheit) {
  18. if (fahrenheit < -459.67) {
  19. cout << "Error!" << endl;
  20. return -1;
  21. }
  22. return (5.0 / 9) * (fahrenheit - 32) + 273.15;
  23. }
  24. }
  25.  
  26. int main() {
  27. double tempC, tempF;
  28.  
  29.  
  30.  
  31. cout<< "Input:" << endl;
  32. cout << "Enter temperature in Celsius: ";
  33. cin >> tempC;
  34.  
  35. cout << "Enter temperature in Fahrenheit: ";
  36. cin >> tempF;
  37.  
  38. double kelvinFromCelsius = CelsiusSpace::ConvertToKelvin(tempC);
  39. double kelvinFromFahrenheit = FahrenheitSpace::ConvertToKelvin(tempF);
  40. cout<< "Output:" << endl;
  41. // Handle invalid temperatures
  42. if (kelvinFromCelsius < 0 || kelvinFromFahrenheit < 0) {
  43. cout << "Invalid input detected. Exiting program." << endl;
  44. return 1;
  45. }
  46.  
  47. cout << fixed << setprecision(2);
  48. cout << "\nTemperature in Kelvin from Celsius input: " << kelvinFromCelsius << " K" << endl;
  49. cout << "Temperature in Kelvin from Fahrenheit input: " << kelvinFromFahrenheit << " K" << endl;
  50.  
  51. if (kelvinFromCelsius > kelvinFromFahrenheit) {
  52. cout << "The Celsius temperature is hotter in Kelvin scale." << endl;
  53. } else if (kelvinFromFahrenheit > kelvinFromCelsius) {
  54. cout << "The Fahrenheit temperature is hotter in Kelvin scale." << endl;
  55. } else {
  56. cout << "Both temperatures are equal in Kelvin." << endl;
  57. }
  58.  
  59. return 0;
  60. }
  61.  
Success #stdin #stdout 0.01s 5304KB
stdin
Standard input is empty
stdout
Input:
Enter temperature in Celsius: Enter temperature in Fahrenheit: Output:

Temperature in Kelvin from Celsius input: 273.15 K
Temperature in Kelvin from Fahrenheit input: 255.37 K
The Celsius temperature is hotter in Kelvin scale.