Travaux Pratiques du langage C++ TP N° 1 Exercice 1 : Réaliser une classe point permettant de manipuler un point d’un plan. On prévoira : float ) d’un point ; • un constructeur recevant en arguments les coordonnées ( float • une fonction membre deplace effectuant 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. On écrira séparément : • un fichier source constituant la déclaration de de la classe ; • un fichier source correspondant à sa définition . Écrire, par ailleurs, un petit programme d’essai (main) déclarant un point, l’affichant, le déplaçant et
Exercice 2 : 1. Définir une classe compte bancaire qui contient les attributs et les opérations suivantes : Solde de type réel Numéro de compte : entier Débiter : opération qui débite le compte d’un montant donné en paramètre . Cette opération doit
empêcher tout débit quand le compte n’est pas suffisamment approvisionné. Créditer : opération qui crédite le compte d’un montant passé en entrée VirVerser : opération qui vers er un montant dans un compte de destination. L’opération prend
en argument le montant à verser et le compte de destination. getSolde : permet de retourner le solde getNumero : permet de retourner le numéro de compte Constructeur qui prend deux arguments pour initialiser le numéro et le solde Afficher : opération permet d’afficher le numéro de compte et le solde. 2. Réaliser un programme principal qui teste toute les opérations précédentes. 3. Modifier le principal précédent en ajoutant un menu qui s’affichera à l’exécution : 1. Consulter le solde 2. Retirer argent 3. Déposer argent 4. Effectuer un virement 5. Quitter le programme
Corrigé Ex2 : ************* Fichier compte.h ******************************** #ifndef COMPTE_H_INCLUDED #define COMPTE_H_INCLUDED class compte { float solde; int num; public: int debiter(float); void crediter(float); void virverser(float,compte*); float getsolde(); int getnum(); compte(int,float); void affiche(); }; #endif // COMPTE_H_INCLUDED
************ Fin fichier .h **************** #include #include "compte.h" using namespace std; compte::compte(int n=0,float s=0) { num=n;
2
solde=s; }; void compte::affiche() { cout<<"le compte numero "<crediter(montant); } int main() { compte B(2,30000); compte A(1,19000); A.virverser(2000,&B); A.affiche(); B.affiche(); return 0; }
Exercice 3: 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
3
affichage Ainsi que les getters et les setters (lecture et modification de la largeur et de la hauteur).