Εμβαδόν ορθογωνίου, ένα απλό παράδειγμα κλάσης στη C++

#include <iostream>

using namespace std;

/* ορισμός της κλάσης ορθογωνίου */
class Rectangle
{
    /* ιδιωτικές μεταβλητές του ορθογωνίου */
    private:
        double Width;
        double Height;
    /* δημόσιες συναρτήσεις/μέθοδοι */
    public:
        double  GetWidth();           /* το πλάτος */
        double  GetHeight();          /* το ύψος  */
        void    SetWidth(double x);   /* ορισμός του πλάτους */
        void    SetHeight(double x);  /* ορισμός του ύψους */
        double  GetArea();            /* το εμβαδόν */
}; /* προσοχή, θέλει ερωτηματικό! */

/* ορισμοί συναρτήσεων */
double Rectangle::GetWidth()
{
    return Width; /* ιδιωτική μεταβλητή της κατηγορίας Rectangle */
}

double Rectangle::GetHeight()
{
    return Height; /* ιδιωτική μεταβλητή της κατηγορίας Rectangle */
}

void Rectangle::SetWidth(double x)
{
    Width = x;    
}

void Rectangle::SetHeight(double x)
{
    Height = x;    
}


double Rectangle::GetArea()
{
    return Width*Height;
}

/* κυρίως μέρος του προγράμματος */

int main()
{
    double x;         /* βοηθητική μεταβλητή για ανάγνωση πλάτους και ύψους */    
    Rectangle A;      /* το A είναι ένα ορθογώνιο */
   
    /* Λήψη από το STDIN πλάτους και ύψους */    
    cout << "Δώσε το πλάτος : ";
    cin >> x;
    A.SetWidth(x);    /* πλάτος */
    cout << "Δώσε το ύψος   : ";
    cin >> x;
    A.SetHeight(x);   /* ύψος */
     
    /* τύπωσε στο STDOUT το εμβαδόν του ορθογωνίου */ 
    cout << "\n";
    cout << "Ορθογώνιο Α " << A.GetWidth() << "x" << A.GetHeight();
    cout << "με επιφάνεια= " << A.GetArea() << endl;
  
    return 0;
}

Δείτε επίσης: H/Y III διάλεξη 16A: Κλάσεις στη C++

Επιπλέον εξάσκηση: Γράψτε ένα πρόγραμμα όπου το ορθογώνιο ορίζεται από 2 σημείο στο επίπεδο, και έχει δύο πλευρές side1, side2. Το πρόγραμμα επιστρέφει το εμβαδόν του ορθογωνίου.

Συνδεθείτε για περισσότερες δυνατότητες αλληλεπίδρασης,
σχολιασμοί, εξωτερικοί σύνδεσμοι, βοήθεια, ψηφοφορίες, αρχεία, κτλ.

Creative Commons License
Εκπαιδευτικό υλικό από τον Αθανάσιο Σταυρακούδη σας παρέχετε κάτω από την άδεια Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License.
Σας παρακαλώ να ενημερωθείτε για κάποιους επιπλέον περιορισμούς
http://stavrakoudis.econ.uoi.gr/stavrakoudis/?iid=401.