Skip to main content
Engineering LibreTexts

8.4: C++ Examples

  • Page ID
    10713
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    Objects

    // This class converts temperature between Celsius and Fahrenheit.
    // It may be used by assigning a value to either Celsius or Fahrenheit 
    // and then retrieving the other value, or by calling the ToCelsius or
    // ToFahrenheit methods directly.
    //
    // References:
    //     https://www.mathsisfun.com/temperature-conversion.html
    //     https://en.wikibooks.org/wiki/C%2B%2B_Programming
    
    #include <iostream>
    
    using namespace std;
    
    class Temperature {
        public:
            double getCelsius(void);
            void setCelsius(double value);
            double getFahrenheit(void);
            void setFahrenheit(double value);
            double toCelsius(double fahrenheit);
            double toFahrenheit(double celsius);
        
        private:
            double celsius;
            double fahrenheit;
    };
    
    double Temperature::getCelsius(void) {
        return celsius;
    }
    
    void Temperature::setCelsius(double value) {
        celsius = value;
        fahrenheit = toFahrenheit(celsius);
    }
    
    double Temperature::getFahrenheit(void) {
        return fahrenheit;
    }
    
    void Temperature::setFahrenheit(double value) {
        fahrenheit = value;
        celsius = toCelsius(fahrenheit);
    }
        
    double Temperature::toCelsius(double fahrenheit) {
        return (fahrenheit - 32) * 5 / 9;
    }
    
    double Temperature::toFahrenheit(double celsius) {
        return celsius * 9 / 5 + 32;
    }
    
    // This program creates instances of the Temperature class to convert Celsius 
    // and Fahrenheit temperatures.
    //
    // References:
    //     https://www.mathsisfun.com/temperature-conversion.html
    //     https://en.wikibooks.org/wiki/C%2B%2B_Programming
    
    int main() {
        Temperature temp1;
        temp1.setCelsius(100.0);
        cout << "temp1.celsius = " << temp1.getCelsius() << endl;
        cout << "temp1.fahrenheit = " << temp1.getFahrenheit() << endl;
        cout << endl;
        
        Temperature temp2;
        temp2.setFahrenheit(100.0);
        cout << "temp2.fahrenheit = " << temp2.getFahrenheit() << endl;
        cout << "temp2.celsius = " << temp2.getCelsius() << endl;
    }
    

    Output

    temp1.celsius = 100
    temp1.fahrenheit = 212
    
    temp2.fahrenheit = 100
    temp2.celsius = 37.7778
    

    References

    • Wikiversity: Computer Programming

    8.4: C++ Examples is shared under a CC BY-SA 4.0 license and was authored, remixed, and/or curated by LibreTexts.

    • Was this article helpful?