POO C++ TD4: Héritage

Object-Oriented Programming, C++ · lab

Voir tous les documents en programmation

1

TD4: Héritge

1

Exercice: Forme

— Définir les classes Rectangle et Carré:

— Corriger le programme suivant:

#include <iostream.h>

int main()

{

Rectangle R;

Carre c1,c2(13.0,14.0);

R.Longueur =10.5;

R.Largeur = 11.2;

c1.Longueur =22.0;

c1.Largeur = 22.0;

cout «c1.aire(); R.changer_cote(32.0);

cout «c1.perimetre();

cout «R.perimetre();

return 0 ;

}

Publicité

POO C++ TD4: Héritge

1/4

2

2

Exercice: Article

Créer une classe de base Article. Un article possède deux champs privés:

— Nom : string

— Prix : double

Et les opérations :

— GetPrix() : pour retourner le prix de l’article

— SetPrix(double) : pour changer le prix de l’article

— Afficher() : permet d’afficher le prix.

Réaliser ensuite une classe ArticleEnSolde, dérivée de la classe Article. Cette sous-classe

comprend une information additionnelle:

— Remise : pourcentage de réduction sur le prix d’origine

— SetRemise(entier) pour changer la remise.

La classe va redéfinir la méthode GetPrix(), afin de tenir compte du solde. Elle va égale-

ment redéfinir la méthode Afficher(), afin que l’affichage donne également le pourcen-

tage de remise sur le prix d’origine.

POO C++ TD4: Héritge

Publicité

2/4

3

3

Exercice: Banque

Au sein d’une banque, chaque adhérent pourra avoir un compte bancaire qui peut être

un compte épargne ou un compte courant.

— La classe compte bancaire comporte les données membres protégées suivantes : nu-

méro du compte (type long) et le solde (type double) et les opérations publiques sui-

vantes :

1. Ajouter() : ajout de l’argent dans le compte

2. Retirer() : retirer de l’argent à partir d’un compte

3. Afficher(): afficher les caractéristiques d’un compte.

— Les classes CompteEpargne et CompteCourant héritent de la classe Compte.

Au sein d’un compte épargne, la valeur minimale du solde est 5 dinars et contient un

taux d’intérêt annuel et une fonction permettant de calculer l’intérêt annuel, alors que

pour un compte courant son solde est limité à un seuil min égale a -500 D.

— Définir les trois classes et tester par la suite ces fonctions dans un programme princi-

pal.

POO C++ TD4: Héritge

3/4

Publicité

4

4

Exercice: Véhicule

Définissez une classe Vehicule qui a pour attributs des informations valables pour tout

type de véhicule :

— sa marque

— sa date d’achat

— son prix d’achat

— son prix courant

1. Définissez un constructeur prenant en paramètre les trois attributs correspondant à

la marque, la date d’achat et le prix d’achat. Le prix courant sera calculé plus tard.

Implémentez la méthode qui affiche l’état de l’instance, c’est-à-dire la valeur de ses

attributs.

2. Définissez deux classes Voiture et Avion, héritant de la classe Vehicule et ayant les

attributs supplémentaires suivants :

— pour la classe Voiture : o sa cylindrée ; o son nombre de portes ; o sa puissance ; o

son kilométrage.

— pour la classe Avion : o son type (hélices ou réaction) ; o son nombre d’heures de vol.

Définissez, pour chacune de ces classes, un constructeur permettant l’initialisation expli-

cite de l’ensemble des attributs, ainsi la méthode d’affichage.

Publicité

Nb : Constructeurs et méthodes d’affichage devront utiliser les méthodes appropriées

de la classe parente !

Encore des méthodes Ajoutez une méthode void calculePrix(int anneActuelle) dans la

classe Vehicule qui, à ce niveau, fixe le prix courant au prix d’achat moins 1% par année

(entre la date d’achat et la date actuelle).

Redéfinissez cette méthode dans les deux sous-classes Voiture et Avion de sorte à

calculer le prix courant en fonction de certains critères, et mettre à jour l’attribut corres-

pondant au prix courant :

• Pour une voiture, le prix courant est égal au prix d’achat, moins : o 2% pour chaque

année depuis l’achat jusqu’à la date actuelle o 5% pour chaque tranche de 10000km par-

courus o 10% s’il s’agit d’un véhicule de marque "Renault" ou "Fiat" et plus 20% s’il s’agit

d’un véhicule de marque "Ferrari" ou "Porsche" .

• Pour un avion, le prix courant est égal au prix d’achat, moins : o 10 % pour chaque

tranche de 1000 heures de vol s’il s’agit d’un avion à réaction. o 10 % pour chaque

tranche de 100 heures de vol s’il s’agit d’un avion à hélices. Le prix doit rester positif

(donc s’il est négatif, on le met à 0).

POO C++ TD4: Héritge

4/4