0% ont trouvé ce document utile (0 vote)
28 vues1 page

TP 1-1

Le document présente un TP sur la création d'une classe 'point' en programmation orientée objet, avec des exercices portant sur les constructeurs, destructeurs et méthodes pour manipuler les coordonnées d'un point dans un plan. Les exercices incluent la création de méthodes pour déplacer, afficher, et obtenir les coordonnées d'un point, ainsi que l'implémentation de transformations géométriques comme l'homothétie et la rotation. Enfin, il est demandé de modifier la classe pour utiliser des coordonnées polaires tout en maintenant l'interface utilisateur inchangée.

Transféré par

bout
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)
28 vues1 page

TP 1-1

Le document présente un TP sur la création d'une classe 'point' en programmation orientée objet, avec des exercices portant sur les constructeurs, destructeurs et méthodes pour manipuler les coordonnées d'un point dans un plan. Les exercices incluent la création de méthodes pour déplacer, afficher, et obtenir les coordonnées d'un point, ainsi que l'implémentation de transformations géométriques comme l'homothétie et la rotation. Enfin, il est demandé de modifier la classe pour utiliser des coordonnées polaires tout en maintenant l'interface utilisateur inchangée.

Transféré par

bout
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 N° 1: Notions de classe, constructeur et

destructeur
Exercice 1
Réaliser une classe point permettant de manipuler un point d’un plan. On prévoira :
• un constructeur recevant en arguments les coordonnées (float) d’un point ;
• une fonction membre deplace effectuant une translation définie par ses deux arguments
(float) ;
• une fonction membre affiche se contentant d’afficher les coordonnées cartésiennes du point.
Les coordonnées du point seront des membres donnée privés. Écrire, un petit programme
d’essai (main) déclarant un point, l’affichant, le déplaçant et l’affichant à nouveau.

Exercice 2
Réaliser une classe point, analogue à la précédente, mais ne comportant pas de fonction
affiche. Pour respecter le principe d’encapsulation des données, prévoir deux fonctions
membre publiques (nommées abscisse et ordonnee) fournissant en retour l’abscisse et
l’ordonnée d’un point. Adapter le petit programme d’essai précédent pour qu’il fonctionne
avec cette nouvelle classe.
Ajouter à la classe précédente (comportant un constructeur et trois fonctions membre deplace,
abscisse et ordonnee) de nouvelles fonctions membre :
• homothetie qui effectue une homothétie dont le rapport est fourni en argument;
• rotation qui effectue une rotation dont l’angle est fourni en argument;
• rho et theta qui fournissent en retour les coordonnées polaires du point.

Exercice 3
Modifier la classe point précédente (EX 2), de manière que les données (privées) soient
maintenant les coordonnées polaires d’un point, et non plus ses coordonnées cartésiennes. On
évitera de modifier la déclaration des membres publics, de sorte que l’interface de la classe
(ce qui est visible pour l’utilisateur) ne change pas.

Exercice 4
Soit la classe point créée dans l’exercice 1, dont la déclaration était la suivante :
class point { float x, y ;
public :
point (float, float) ;
void deplace (float, float) ;
void affiche () ; }
Adapter cette classe, de manière que la fonction membre affiche fournisse, en plus des
coordonnées du point, le nombre d’objets de type point.

1/1

Vous aimerez peut-être aussi