Aller au contenu

Programmation C++/Les classes/Exercices

Un livre de Wikilivres.

Dans tous ces exercices, qui sont sur le thème des transports, les mesures doivent être exprimées en double.

Créez une classe position2D qui vous permet de repérer un point unique sur un plan. Vous devrez prévoir tous les constructeurs et destructeurs strictement nécessaires (et uniquement ceux là), ainsi que les opérateurs d'affectation, d'égalité et la possibilité de l'envoyer dans un flux sous la forme "(x,y)". Le point est considéré comme nul si ses coordonnées sont (0,0). Cette valeur sera affectée par défaut au point (mais donner la possibilité d'initialiser les valeur à la création).

Créer une classe segment utilisant la classe position2D précédemment créé. Elle devra définir tous les jeux d'opérateurs nécessaires à son fonctionnement (les mêmes que position2D). Elle devra en plus donner la norme (la longueur) du segment. Elle devra pouvoir être envoyée dans un flux sous la forme "[(x1,y1),(x2,y2)]". Par défaut, le segment est initialisé avec les valeur "[(0,0),(1,1)]".

Créez une classe Magicien dérivée de la classe Personnage située dans l'annexe 1. Certaines méthodes devront être réécrites pour garder la cohérence. Écrivez le moins de code possible Créez une classe Position3D dérivée de la classe Position2D située dans l'annexe 1. Certaines méthodes devront être réécrites pour garder la cohérence. Écrivez le moins de code possible.

Créez une classe Véhicule utilisant de Position3D. Ce véhicule a une vitesse et un nombre de passagers (en entier). Il a une méthode double trajet(Position3D& pos1, Position3D& pos2) pour évaluer en combien de temps il couvre une distance (vitesse en Km/h). Vous devrez choisir correctement entre héritage et composition.

En utilisant la classe véhicule de l'exercice précédent, créez une classe Avion. Il a un nombre maximal de passagers (qui ne pourra jamais être supérieur à 300). Vous devez pouvoir ajouter et retirer des passagers et afficher ces derniers soit tous, soit en précisant son numéro de place. Les passager sont des instances de la classe personnage de l'exercice 3. En tant qu'appareil volant il est sensible au poids. Son poids est une propriété constante exprimée en tonnes. Vous devez fournir une fonction qui donne la quantité de carburant à embarquer en mètres cube pour effectuer le vol sachant qu'il consomme 1l de kérosène par kilo pour 10 km parcouru (le kérosène est considéré comme dépourvu de poids pour cet exercice).