0% ont trouvé ce document utile (0 vote)
3 vues3 pages

TP C++ N°4: Classes: Rectangle.h Rectangle - CPP Main - CPP

Le document présente un TP en C++ sur les classes, comprenant des exercices pour identifier des erreurs dans des fichiers de code, créer une classe Cercle avec plusieurs méthodes, et manipuler des objets de cette classe dans un programme principal. Les exercices incluent la déclaration et l'implémentation de méthodes pour gérer les attributs d'un cercle, ainsi que des opérations de modification et de comparaison. Le TP vise à renforcer la compréhension des concepts de programmation orientée objet en C++.

Transféré par

abenjelloun852
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues3 pages

TP C++ N°4: Classes: Rectangle.h Rectangle - CPP Main - CPP

Le document présente un TP en C++ sur les classes, comprenant des exercices pour identifier des erreurs dans des fichiers de code, créer une classe Cercle avec plusieurs méthodes, et manipuler des objets de cette classe dans un programme principal. Les exercices incluent la déclaration et l'implémentation de méthodes pour gérer les attributs d'un cercle, ainsi que des opérations de modification et de comparaison. Le TP vise à renforcer la compréhension des concepts de programmation orientée objet en C++.

Transféré par

abenjelloun852
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TP C++ N°4 : Classes

Exercice 1 : Chercher les erreurs dans les trois fichiers :

1. Rectangle.h : fichier d’en-tête contenant la déclaration de la classe


2. [Link] : fichier source contenant la définition des méthodes
3. [Link] : programme principal de test

Fichier Rectangle.h [Link] Fichier [Link]

#pragma once #include <iostream> #include "Rectangle.h"


class Rectangle #include "Rectangle.h"
float longueur{}; int main() {
float largeur{}; void Rectangle Afficher() Rectangle r;
void afficher(); { [Link] = 5
} std::cout << "Longueur = " << longueur << " Largeur [Link] = 3;
= " << largeur ; [Link]();
} return 0;
}
Exercice 2 :

On vous donne trois fichiers :

1. Ouvrez les trois fichiers dans votre environnement C++.


2. Compilez le programme à l’aide de la commande suivante :
3. Observez le résultat affiché à l’écran.

Fichier Rectangle.h [Link] Fichier [Link]


#pragma once #include "Rectangle.h" #include "Rectangle.h"

class Rectangle { #include <iostream>

float longueur; using namespace std; int main() {

float largeur void Rectangle r;


Rectangle::setDimensions(float [Link](4, 3);
public: l, float lar) {
[Link]();
void setDimensions(float longueur = l; return 0;
l, float L);
largeur =lar; }
void afficherSurface();
}
};
void
Rectangle::afficherSurface() {

float surface = longueur *


largeur;}

3IIR MERBAH AMAL


TP C++ N°4 : Classes

Exercice 3 :

Écrire une classe Cercle permettant de représenter un cercle défini par :

 les coordonnées de son centre (x, y) de type double


 son rayon de type double
 un nom de type std::string

La classe doit comporter les fonctions membres suivantes :

1. initialiser : Permet d’attribuer les valeurs initiales du cercle (centre, rayon, nom) en
proposant deux versions différentes de la fonction.

void initialiser(double abs, double ord, double r, const string n);

void initialiser_v2(double x, double y, double rayon, const std::string& nom)

2. Afficher : Affiche toutes les informations du cercle. void afficher() const;

Écrire un programme principal main() qui :

1. Déclare un objet Cercle C1;


2. Initialise cet objet à l’aide de la fonction membre initialiser et initialiser_v2.
3. Affiche ses caractéristiques après chaque initialisation.

Ajouter les méthodes suivantes :

3. Modifier_nom : modifier le nom par le nom donné en paramètre.

void modifierNom(const std::string& n);

4. Modifier_centre : écrire deux versions différentes de cette fonction membre


permettant de modifier les coordonnées du centre du cercle par celles données en
paramètre.

void modifier_Centre(double nx, double ny)

void modifier_Centre_v2(double x, double y)

5. deplacer :Déplace le centre du cercle selon les déplacements donnés en argument (dx,
dy).

void deplacer(double dx, double dy);

6. comparer :Vérifie si deux cercles sont identiques (même centre et même rayon).

bool comparer(const Cercle&) const;

3IIR MERBAH AMAL


TP C++ N°4 : Classes

Dans le programme principal main() :

4. Modifie le nom de l’objet C1 et réafficher ses caractéristiques modifié.


5. Modifie le centre de l’objet C1 et réafficher ses caractéristiques modifié.
6. Effectue un déplacement du centre de (-2, 1) et affiche le résultat.
7. Crée un deuxième cercle C2, l’initialise, et compare les deux cercles.

Ajouter à la classe ces méthodes :

1. aire : Calcule et retourne l’aire du cercle : double aire() const;


2. perimetre : Calcule et retourne le périmètre du cercle : double perimetre()
const;
3. contientPoint : Vérifie si un point (px, py) est à l’intérieur ou sur le cercle

bool contientPoint(double px, double py) const;

3IIR MERBAH AMAL

Vous aimerez peut-être aussi