0% ont trouvé ce document utile (0 vote)
117 vues3 pages

Exercices POO : Surcharge et Polymorphisme

Le document présente plusieurs exercices de programmation orientée objet, incluant la surcharge de méthodes, le polymorphisme avec héritage, et l'utilisation de classes abstraites. Chaque exercice demande la création de classes spécifiques avec des méthodes définies, ainsi que des fonctions pour interagir avec ces classes. Les thèmes abordés incluent la gestion d'animaux, de formes géométriques, de véhicules, et d'employés dans un contexte d'entreprise.

Transféré par

tebiejoel1
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 RTF, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
117 vues3 pages

Exercices POO : Surcharge et Polymorphisme

Le document présente plusieurs exercices de programmation orientée objet, incluant la surcharge de méthodes, le polymorphisme avec héritage, et l'utilisation de classes abstraites. Chaque exercice demande la création de classes spécifiques avec des méthodes définies, ainsi que des fonctions pour interagir avec ces classes. Les thèmes abordés incluent la gestion d'animaux, de formes géométriques, de véhicules, et d'employés dans un contexte d'entreprise.

Transféré par

tebiejoel1
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 RTF, PDF, TXT ou lisez en ligne sur Scribd

1.

Surcharge de méthodes

Exercice : Créez une classe Calculatrice avec une méthode addition. Implémentez la surcharge
pour que :

Si un seul argument est passé, elle retourne le double de cet argument.

Si deux arguments sont passés, elle retourne leur somme.

Si trois arguments sont passés, elle retourne leur somme multipliée par 2.

Indications : Utilisez des valeurs par défaut ou *args.

2. Polymorphisme avec héritage

Exercice : Créez une classe Animal avec une méthode parler() qui affiche un message général :
"Cet animal fait un bruit.".

Créez trois classes dérivées :

Chien, où parler() retourne "Woof!".

Chat, où parler() retourne "Miaou!".

Canard, où parler() retourne "Coin-coin!".

Écrivez une fonction faire_parler(animals) qui prend une liste d'objets Animal et appelle parler()
sur chacun d’eux.

3. Classes abstraites

Exercice : Utilisez le module abc pour créer une classe abstraite Forme avec :

Une méthode abstraite aire().

Une méthode abstraite perimetre().


Créez deux classes concrètes :

Cercle, qui calcule l’aire et le périmètre d’un cercle.

Rectangle, qui calcule l’aire et le périmètre d’un rectangle.

Écrivez un programme qui crée un cercle et un rectangle, puis affiche leurs aires et périmètres.

4. Polymorphisme et classes abstraites combinés

Exercice : Créez une classe abstraite Vehicule avec :

Une méthode abstraite type_carburant().

Une méthode abstraite nombre_de_roues().

Implémentez les classes concrètes Voiture, Moto, et Camion qui spécifient le type de carburant et
le nombre de roues.

Créez une fonction decrire_vehicules(vehicules) qui affiche les caractéristiques (type de


carburant et nombre de roues) d’une liste de véhicules.

5. Application réelle : Gestion d'une entreprise

Exercice : Créez une classe abstraite Employe avec :

Une méthode abstraite calcul_salaire() qui retourne le salaire mensuel.

Une méthode description() qui affiche des informations générales sur l'employé.

Créez trois classes concrètes :

Developpeur, avec un salaire basé sur le nombre d'heures travaillées.

Manager, avec un salaire fixe et une prime.

Stagiaire, avec un montant fixe mensuel réduit.


Écrivez un programme qui gère une liste d’employés et calcule le total des salaires.

6. Surcharge avancée et polymorphisme

Exercice : Créez une classe Conversion avec une méthode convertir. La méthode doit :

Convertir un entier en chaîne si un seul argument est donné.

Convertir une liste de nombres en leur somme si une liste est passée.

Convertir une chaîne en majuscules si une chaîne est donnée.

Utilisez le polymorphisme pour gérer les différents types d’entrées.

Vous aimerez peut-être aussi