/* Temperature.cpp contains the definitions of Temperature operations.
 *  ...
 *********************************************************************/

#include "Temperature.h"                  // class Temperature

// -------- Explicit-value constructor ---------------------------------
--

#include <cctype>                         // islower(), toupper()
#include <cstdlib>                        // exit()

Temperature::Temperature(double initialDegrees, char initialScale)
{
	if (islower(initialScale))             // if scale is lowercase
      initScale = toupper(initialScale);  //  convert it to uppercase

   switch (initialScale)
   {
      case 'F': case 'C': case 'K':       // if scale is valid
         myDegrees = initialDegrees;      //  proceed with
         myScale = initialScale;          //  initialization
         break;
      default:                            // otherwise, error msg
         cerr << "\n*** Temperature constructor received invalid scale "
              << initialScale << endl;
         exit(1);
   }
}

