Découverte et travail des classes. Utilisation d'un constructeur et d'un destructeur.
#include
using namespace std;
class Rectangle
{
public:
Rectangle(unsigned int initLargeur, unsigned int initHauteur);
~Rectangle();
unsigned int getLargeur() const { return largeur; };
unsigned int getHauteur() const { return hauteur; };
unsigned int perimetre() const { return 2*(largeur+hauteur); };
unsigned int surface() const { return largeur * hauteur; };
void setLargeur(unsigned int newLargeur) { largeur = newLargeur; };
void setHauteur(unsigned int newHauteur) { hauteur = newHauteur; };
void afficher();
private:
unsigned int largeur;
unsigned int hauteur;
};
Rectangle::Rectangle(unsigned int initLargeur, unsigned int initHauteur)
{
largeur = initLargeur;
hauteur = initHauteur;
}
Rectangle::~Rectangle()
{
}
void Rectangle::afficher()
{
for(unsigned int i=0; i < hauteur; i++)
{
for(unsigned int j=0; j < largeur; j++)
cout << "*";
cout << endl;
}
}
int main()
{
Rectangle monRectangle(0,0);
char choix = '0';
unsigned int value;
while(true)
{
do
{
cout << " Rectangle - Menu" << endl;
cout << "1 - Modifier largeur du rectangle" << endl;
cout << "2 - Modifier hauteur du rectangle" << endl;
cout << "3 - Calculer les propriétés du rectangle" << endl;
cout << "4 - Afficher le rectangle" << endl;
cout << "5 - Quitter" << endl;
cin >> choix;
}while(choix < '1' || choix > '5');
switch(choix)
{
case '1':
cout << "Nouvelle largeur : ";
cin >> value;
monRectangle.setLargeur(value);
break;
case '2':
cout << "Nouvelle hauteur : ";
cin >> value;
monRectangle.setHauteur(value);
break;
case '3':
cout << "Périmètre : " << monRectangle.perimetre() << endl;
cout << "Surface : " << monRectangle.surface() << endl;
break;
case '4':
monRectangle.afficher();
break;
case '5':
exit(0);
break;
default:
cout << "Erreur ! Choix invalide." << endl;
exit(1);
}
}
return 2;
}Pages: 1 2