TP1 : Premieres classes


Mise en situation
Le travail de ce TP se déroule seul.
Temps alloué : 6h
|
Faire l'analyse objet d'un problème, créer son modèle en UML et coder le problème en C++
Exercice 1 : Prix d'un lot |
A) Le jeu consiste à découvrir par essais successifs le prix d'un lot. Pour chaque essai, le joueur reçoit un message : "Trop grand", "Trop petit" ou "BRAVO ! Vous avez trouvé en K essais".
Le jeu est fini quand le joueur a trouvé le prix du lot.
On propose d'écrire un programme C++ qui joue le rôle de meneur de jeu ; l'exécution de ce programme vous fera tenir le rôle du joueur.
Le programme doit définir le prix du lot en tirant un entier aléatoire entre 1 et 1000 et dialoguer avec le joueur pendant le jeu.
Pour choisir un nombre au hasard on utilisera la fonction rand() qui retourne un entier tiré au hasard.
exemple :
#include
......
int alea;
alea = rand()%1000;
On veut créer une classe
Lot qui s'occupe de gérer la progression du jeu :
Attributs :
- nombreATrouver : entier qui est mise à jour aléatoirement par init
- borneMin : entier qui correspond à la fourchette basse de recherche du joueur
- borneMax : entier qui correspond à la fourchette haute de recherche du joueur
- max : chiffre maximal à trouver, par défaut 1000
Méthode :
- void init() : initialise le nombre aléatoire à trouver
- int getMin() : retourne borneMin.
- int getMax() : retourne borneMax().
- bool joue(int) : réduit les deux bornes (borneMin et borneMax) en fonction du nombre entré. Retourne vrai si le nombre a été trouvé, sinon faux. Le paramètre est l'entier choisit par l'utilisateur
Travail demandé :
Faire la classe sur UML (starUML) puis sur CodeBlock réaliser le code de la classe et tester le dans un main.
Exercice 2 : Calcul de prix |
Dans cet exercice, vous allez créer des étiquettes de prix contenant le prix hors taxe d'un produit, la valeur de la tva pour ce produit et le prix de vente du produit. Vous allez créer une classe Prix comprenant deux attributs : tva (exprimée en %) et prixHT (le prix hors taxe du produit en euros), et deux méthodes :
- Un constructeur avec deux paramètres : tva et prix HT
- calculValeurTVA(): double qui utilise l'attribut prixHT et l'attribut tva pour calculer la valeur de la tva en euro pour cet article et renvoie le résultat;
- calculPrixTTC():double qui utilise l'attribut prixHT et l'attribut tva pour calculer le prix de vente (prixHT+valeurTVA) et renvoie le résultat
L'attribut tva doit être compris entre 0 et 100.
- Dessinez le diagramme UML de cette classe.
- Créez la classe Prix et écrivez le code des deux méthodes. Compilez.
- Testez dans le main différent prix
- Créez une classe Produit ayant un attribut nom de type string et un attribut prix de type Prix.
- Ajoutez un constructeur avec 3 arguments : nom, tva, prix HT.
- Ajoutez à votre classe une méthode toString qui retourne une string du format :
- le nom du produit
- son coût hors-taxe
- la valeur de sa TVA
- son prix TTC
- Testez deux produits : un dentifrice dont le prix hors taxe est 1,93 euros, et pour une tva à 20% et un ordinateur dont le prix HT est 1000 euros, et pour une tva à 20%. Afficher les deux produits

