Exercice langage C: Rectangle

Ecrire un programme utilisant une classe rectangle dont le constructeur prend deux paramètres, largeur et hauteur et qui offre les fonctions suivantes :

  • calcul du périmètre
  • calcul de la surface
  • affichage

Ainsi que les accesseurs et mutateurs triviaux (lecture et modification de la largeur et de la hauteur).

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 {
for(unsigned int j=0; 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 '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;
}

Article publié le 18 Février 2012 Mise à jour le Lundi, 07 Novembre 2022 23:07 par BENKIRANE Fatima Ezzahra