TP POO/Langage C++ 2009
Séance 2/3
TP 2 – Petits projets class
Pour chaque exercice, créer un nouveau projet. Commenter et conserver vos fichiers.
Exercice 1 : La classe Tableau
Dans cet exercice, nous allons créer une classe Tableau permettant la gestion des tableaux dynamiques. Cette classe reprendra les fonctionnalités de l’exercice 2 du TP 1.
1-a Concevoir la classe Tableau. Les éléments du tableau seront des doubles. Les fonctionnalités de la classe seront :
- l’accès en lecture et en écriture à la taille du tableau (attention à l’écriture qui devra traiter le problème de l’allocation dynamique),
- l’accès en lecture et en écriture à chaque élément du tableau,
- la Copie d’un objet Tableau dans l’objet Tableau courant :
- la Somme terme à terme avec un autre objet Tableau :
- l’affichage du contenu du tableau,
- la saisie des éléments du tableau,
- la saisie de la taille du tableau (on modifiera alors le tableau),
- l’affichage de la taille du tableau.
1-b A partir des sources fournies, tester les méthodes et identifier les problèmes. Résoudre ces problèmes en modifiant la classe et en implémentant de nouvelles méthodes (constructeur, destructeur, operator=, constructeur de copie,… relire le cours).
1-c Définir l’opérateur « + » pour la classe Tableau (operator+).
Exercice 2 : Jeu : c’est plus / c’est moins
Le but est de programmer, sous forme d’objet, le jeu consistant à deviner un nombre avec, à chaque essai, la seule indication « c’est plus » ou « c’est moins ». Il faut évidemment retrouver le nombre en un minimum d’essais.
1-a Concevoir votre classe JeuCPCM. Le nombre à trouver doit être un champ privé sans aucun accesseur : un objet de type JeuCPCM ne pourra pas modifier ce champ ni l’afficher avant la fin du jeu. La valeur du nombre à trouver sera aléatoire et calculée à la construction de l’objet. On passera au constructeur la borne maximum (0 étant la borne inférieure).
1-b Implémenter et tester votre solution. Prévoir l’abandon du joueur. On donnera à la fin du jeu (cas de victoire ou d’abandon) le nombre d’essais effectués.
Tirage aléatoire :
#include
#include
…
srand( time( NULL ) );
int alea = rand() % BorneMax; // mauvais aléatoire…
IF4 / INSA GE
Dostları ilə paylaş: |